raml-spec
alt-schema
raml-spec | alt-schema | |
---|---|---|
2 | 1 | |
3,862 | 1 | |
- | - | |
10.0 | 0.0 | |
about 2 years ago | over 1 year ago | |
JavaScript | ||
- | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
raml-spec
-
Sharing data types on a multi-language project
Taking this concept further one could model in RAML [0] to define both the types (flat or nested) and api definitions. It's based on YAML 1.2 with enough maturity to provide capabilities such as union types, extensions, includes, user-defined facets, etc.
The AMF project [1] can be used to parse and transform to/from RAML, OpenAPI, GraphQL, and json schema. Code generation to languages of choice can be bolted on from there.
I'm using this approach to define canonical data models. Subsequent code generation scaffolds internal application integration apis, master data management (MDM) entities, and SQL/OLAP artifacts for ETL / BI purposes.
This approach keeps overall end-to-end data architecture consistent, in sync, and versioned under source control. Additionally, flat types as required by relational systems are re-used and composed into nested complex types more appropriate for apis. Metadata is layered on as needed to refine the models for system-specific needs, for example to add user-facing field groups, descriptions, and formats for BI datasets, sensitivity levels and other data security controls, business rule definitions for MDM, etc.
[0] https://github.com/raml-org/raml-spec/blob/master/versions/r...
-
Ask HN: Do you use JSON Schema? Help us shape its future stability guarantees
> Do you use JSON Schema?
At one point I did, but then discovered RAML[0] and it subsumed the value of what JSON Schema provides as well as being easier to work with than OpenAPI[1]. Also, generating JSON Schema from RAML definitions has proven to be a fairly straightforward process.
The usual caveats apply... Your mileage may vary, my experiences do not speak for any others, my opinion does not detract from the value of JSON Schema, etc.
0 - https://github.com/raml-org/raml-spec/blob/master/versions/r...
1 - https://swagger.io/specification/
alt-schema
-
Ask HN: Do you use JSON Schema? Help us shape its future stability guarantees
I considered using it some time back for API payload validations. I found it bit too verbose for my use case then. I ended up writing my own lighter version and it worked pretty well. I later open sourced it here - https://github.com/sleeksky-dev/alt-schema .
What are some alternatives?
alterschema - Convert between JSON Schema specification versions.
laminar - OpenApi backed REST APIs. Automatic validation of request / response based on the api schema.
schema-dts - JSON-LD TypeScript types for Schema.org vocabulary
OpenMetadata - Open Standard for Metadata. A Single place to Discover, Collaborate and Get your data right.
dynamic_dns - A Dynamic DNS Widget
pg_jsonschema - PostgreSQL extension providing JSON Schema validation
library-recommendations - Evaluating Open Source libraries for particular purposes
cue - The home of the CUE language! Validate and define text-based and dynamic configuration
json-editor - JSON Schema Based Editor