Automatic creation of examples

In order to reduce the amount of work in the contribution of data models, we have a script that generates the key-values format of a normalized NGSI LD payload.
It has been operated on 46 data models currently in the repository.

In a close future instead of submitting 4 examples, it will be only necessary to include 2 examples, the normalized payloads for NGSI v2 and NGSI LD (the other two would be generated automatically).

Making examples more consistent

All the repositories have been normalized in the naming of the core examples. So:

  • Key values in NGSI v2 is named example.json
  • Key values in NGSI LD is named example.jsonld
  • Normalized (default) in NGSI v2 is named example-normalized.json
  • Normalized (default) in NGSI LD is named example-normalized.jsonld

It is possible to have more examples in the directory. And in the same directory of every data model, there are other exports (csv) for the use of the data model users.
The goal is that this 4 examples were present in every data model

Automated README for Subjects

As promised the README.md at Subject level explaining the different data models is automated, and therefore there is no need to be contributed by the contributors. See an example here for the weather subject

Thus, the README.md is based on the data models and their descriptions, linking to the current contributors

Soon the README.md for the domain will be also automated.

Best

Replaced CONTRIBUTORS.MD by CONTRIBUTORS.yaml

Now in the root of every subject, you can find only the file CONTRIBUTORS.yaml with the current contributors to the data model of the subject.

The old file CONTRIBUTORS.md is being removed.

CONTRIBUTORS.yaml is a structured format that allows automatic treatment globally across the initiative. It compiles the full name of the contributor, his/her organization, and their project and comments if necessary.

If you keep seeing it is because you are not looking at the master branch but in a specific commit (like it happens in the submodules). We update the branches in submodules daily, so tomorrow it will not appear unless you want it to go to former commits.

See one example.

 

Automated README.md for data models

Currently, the README.md at data models level (inside every directory in a Subject) explaining the contents of the data models is automated, and therefore there is no need to be contributed by the contributors. See an example here for the weather forecast.

Thus, the README.md is based on the examples provided, the specification and the model.yaml.

Soon the README.md for the Subject will be also automated.

Incubated data models

if you are browsing the repository you can realise that now there are several data models ended with the term ‘_incubated’.
This suffix denotes that there will be ‘soon’ a new data model.
The readme in the folder points to the repository where this data model is being created.

Once finished (all the docs, examples, etc) the _incubated suffix will be removed and the data model will be fully included into the data models.
some examples:

Floor_incubated

BuildingType_incubated(published 30-11-21)

PhreaticObserved_incubated (published 31-5-2021)

RainFallRadarObserved_incubated (published 10-5-2021)
etc