Drafting service for checking properties of a new data model

We are in the way of creating a service for those contributors willing to contribute with a complete data model.

The service is under debugging, so it cannot be trusted for production purposes. Let us know issues here

In order to access it has to access this URL (https://smartdatamodels.org/extra/check_properties.php) with this parameter ?urlSchema=[url of the raw access o the JSON schema]

I.e. a complete link could be


It returns a JSON payload indicating if this property is available for use (not used in any other data model) or in the case it is already being used what data models are currently using.

Official list of unitcodes

Whenever there is measurement it could be necessary to use the unitCode for setting the units for the value.

Now the guidelines for the data model’s creation include the place to find out these unit codes. See section units.

The list of UN/CEFACT Common Code (3 characters) can be download from this page. Or the list directly from here.

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.


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:


BuildingType_incubated(published 30-11-21)

PhreaticObserved_incubated (published 31-5-2021)



Survey to the users of smart data models

This is the first survey to the USERS of the Smart Data Models. We want to know what is more important to you and try to prioritize our efforts. This is an agile initiative, therefore we will take into very consideration your comments. Your survey is anonymous although if you wish you can include your email in comments and we will contact you regarding your comments.

You can answer it here.

    Are you, or your organization, a user of FIWARE platform (any enabler)

    YesNoDo not know

    What elements of the data models are useful for you:

    The json schema. See an example
    Very usefulSomehow usefulNot useful
    The examples of payloads. See an example
    Very usefulSomehow usefulNot useful
    The specification. See an example
    Very usefulSomehow usefulNot useful
    Other elements. Specify Which one/s
    Very usefulSomehow usefulNot useful

    Are you interested on the smart data models?

    YesNoDo not knowOther
    Explain other

    Why don't you use FIWARE platform?

    I do not need itIt is complicatedNot yetOther
    Explain other

    Please choose the more likely (Yes / No)

    Other recommendations or comments about your answers

    How do you describe yourself

    A developerAn end userA project managerA manager

    Soon there will be another survey for the CONTRIBUTORS.

    New harmonization repository

    In order to provide a more transparent and participative approach to the creation and maintenance of data models, here you can see the three stages for a usual data model to be part of the official list of data models.

    1.- Pending is the ‘wild’ zone where developers share their thoughts and create their data models. When finished (ready) they can create a PR on the right Subject repository.

    2.- Harmonization is the repository for those new accepted models while they are fine-tuned or completed

    3.- Subject means the repository in which the data model is officially published. Once there they are versioned when necessary.

    Pending Harmonization Subject
    Control of contributions No Yes Yes
    Scripts for checking No Yes (specific) Yes (only acceptance and on update)
    Code inside json schema No Harmonizing Local standard

    Global standard

    Versioning No No Yes
    Managed Each contributor Contributor + SDM control SDM control
    In domain No No Yes
    Accept issues Yes but not managed Yes Yes (Here the open ones)
    First Access Anyone
    1. Anyone previous pending acceptance
    2. Members direct

    SDM: Smart Data Models initiative

    Connection with European open data portal

    The European open data portal is possibly the biggest open data portal in the world with more than one million free datasets coming from 36 countries.

    One of the mechanisms to access its data is the use of the standard of DCAT-AP standard 2.0 which defines its catalogue of resources.


    In the repository pending there are two data models, in progress to connect a dataset and a distribution as an additional resource by using NGSI. The idea is to create a script to map this resource into NGSI.