All specifications updated

All the specifications (the text descriptions of the data model located in the /doc directory of each daat model) for the different domains and languages (currently French and Spanish besides English) have been updated to the new format. See an example in Spanish and French.

All of them are generated automatically from the json schema (which is the unique source of truth for the data model)

The contribution manual explains further details.

Raise an issue for any point you find in the new format.

 

 

Create automatically the specification of your data model

The new version of the smart data models specification is on progress (most of the /doc directories of the data models have a version). If you want to check how this would look like you can have through this API call

Call: https://smartdatamodels.org/extra/create_spec.php

Parameters: (Mandatories)

  • dataModel: The name of the entity for the specification
  • schemaUrl: The link to the RAW version of the json schema (see example)
  • examplesUrl: the url of where the 4 examples required for a data model are available (named
  • notesUrl: The url to the yaml for the customization paragraphs (notesHeader, after the title, notesMiddle, after properties’ list and notesFooter by the end)
  • mail:  a valid mail of yours

Example: https://smartdatamodels.org/extra/create_spec.php?dataModel=Airport&schemaUrl=https://raw.githubusercontent.com/smart-data-models/incubated/master/Aeronautics/Airport/schema.json&examplesUrl=https://raw.githubusercontent.com/smart-data-models/incubated/master/Aeronautics/Airport/examples/&notesUrl=%22%22&mail=alberto.abella@fiware.org

Output: A markdown text that although the HTML visualization is faulty, the source code of the page can be pasted in any markdown viewer (optimized for github) and you see will see something like this.

We are on the transition to having all the data models compliant.

French translation of data models available

Most of the data models have a new file into its /doc directory name spec_FR.md. It contains a specification generated automatically based on the schema.json with all its texts translated into French. (With the deepL tool, so you can expect some ‘incorrect’ translated elements).

The official spec remains to be the spec.md file. However in coming days, the format, but not the name of this spec will change when the version named spec_EN-US.md will become official and it will replace the contents of spec.md.

Independently of what is happening the official version will always be spec.md.

Other languages, possibly German, Japanese and eventually Chinese are on the queue.

Spanish specification draft available

Most of the data models have a new file into its /doc directory name spec_ES.md. It contains a specification generated automatically based on the schema.json with all its texts translated into Spanish. (With the deepL tool, so you can expect some ‘incorrect’ translated elements.

The official spec remains to be the spec.md file. However in coming days the format, but not the name of this spec will change when the version named spec_EN-US.md will become official and it will replace the contents of spec.md.

Independently of what is happening the official version will be always spec.md.

Draft new specification

There is a new specification (in draft mode) in each directory (most of them) of the data models. It has the name spec_EN-US.md and it is drafting the new specification format for all the data models.

Currently, this format is under design and feedback is welcomed in this form, option feedback on the new specification.

 

New file new_model.yaml

You’ll notice that there is a new file in the directory of the data models named new_model.yaml

This file is a temporary version of model.yaml till we replace model.yaml (formerly created manually) for this new_model.yaml which is automatically generated from the json schema.

some other changes will be announced soon.

 

 

Migration to schema-generated specifications

In order to:

  1. Maintain updated the specifications
  2. Be able to provide them in multiple languages
  3. Being able to track what properties are already defined
  4. Populate properly the database of properties
  5. Have a shared image for all contributions
  6. Reduce the burden of work for the contributors (it will be reduced to just the documented json schema and the examples)

It has been decided that the description of the properties of the data models will be included in the schemas defining the data models (or those linked through $ref). so during next days, you will see minor changes in the schema.json of every data model in the initiative.

And although it will be announced previously all the spec.md will be replaced by an automatically generated (based on the info). See an example here. Design could be modified so any suggestion will be assessed and eventually implemented.

Customization will be possible through a new file named notes.yaml

This is taking most of our resources and impact on our bandwidth t provide answers to the PR, but we expect that this will reduce our workload significantly so we will be more agile after this change.