We developed and implemented dedicated software components for Semantic Engine System as SEED, that is in charge of managing the semantic metadata, descriptions, queries, discoveries, retrieve, create and map descriptions and manipulate registries, federated queries and components interactions and interfaces. To make the interface and use of functionalities easier we present the external operations via APIs that are more agnostic and easy to use also for non-semantic experts.
For the Semantic subsystems in charge of dealing with “Semantic Data Management” we can highlight parts like:
- Semantic Meta Data Storage: This component on receiving semantically annotated data push data into registry data store, for example, mongodb.
- Semantic Mapping: This component does semantic mappings and transform data (json to json-ld document) received from API endpoints.
- Vocabulary Management: This environment keeps and manages all of the vocabularies, defined as i3-Market Semantic model, used in different operations of the semantic engine.
- Offering Registration: The Semantic Engine basically REST APIs exposed as endpoints. Semantic engine exposes different endpoints for offering registration. Examples are:
- register data provider,
- register data offering of a data provider,
- update data offerings,
- deleting a data offering
- query existing offerings, etc.
- Offering Discovery: The Semantic engine exposes different endpoints for offering discoveries and retrieve. Examples are:
- Retrieve list of Data Offerings,
- discover data offerings by Providers,
- discover data offerings by parameters,
- search for particular metadata, etc.
The following picture shows a detailed landscape of the current set of microservices (cubes), API’s (little yellow rectangles), components (blue rectangles), and storages (white rectangles) on i3-MARKET.
How the above components interact with each other can be explained with the use of a scenario, for instance, registration of data provider. To complete this task, a data provider fills a template provided by offering registration component. The template for a Data Offering description as a JSON request is Semantically mapped by the Semantic Engine component and is forwarded towards the Semantic Meta Data Storage where this annotated data is pushed into the database. A JSON Data Offering object request is shown in the following example:
After a Semantically annotation the above JSON request is transformed to a Json-ld document for the storage in the metadata registry in MongoDB like:
For the Semantic Storage the following high-level capabilities have been defined.
Semantic Meta Data Management
The Semantic engine (SEED) relies on a registry database (MongoDB). All the information for instance, data provider, data offerings, consumer, and querying offering are stored as semantic metadata based on the i3-Market Semantic Models.
|Metadata Registry Database||The Registry Database is responsible to store semantic meta data and process the management of metadata components can access to the data.|
|Spatial and Text Data Storage||To support spatial and full-text search queries, the semantic data manager should be able to index spatial and fulltext data.|
The Semantic engine will expose APIs to register, query and update offering. A data provider can register offering, for instance, datasets and the price for data, etc.
|Offering Registration||Offering Registration is a component that allows the user to manage their data offering. More specifically, it provides the following functionalities: |
– Register the data offering
– Retrieve all the offerings
– Update/Delete offerings Subscribe to an offering
The Semantic engine will expose APIs to query the existing offerings in i3-Market backplane. A data consumer can query datasets, prices for any dataset, offering, etc.
|Offering Discovery||Offering Discovery is a component that allows the Data Consumers to search the offering data available on the marketplace. The Data Consumer has to specify the characteristics of the data they are looking for. The Offering Discovery module will then process the data request and returns a list of available offering data that meet their requirements. More specifically, the Offering Discovery should provide the following functionalities:|
– Register the consumer data request
– Retrieve all the data request of a consumer
– Process a data request
– Update/Delete a data request
– Subscribe to a data request.
Semantic Vocabulary Management
|I3-Market Semantic Models Management||The i3/Market Semantic Models are shared not only with Consortium Partners but also with stakeholders and community. As part of open-source assets, the vocabulary models, documentations, and files used in the i3-Market project are made available. The i3-Market Semantic Model info is the documentation that describes in detail all the taxonomies and vocabularies from needed domains used in i3-Market and that describes and represent all the relationships between them to build the graph representation of the i3-Market semantic model. |
• The Models Files will be shared in GitHub and GitLab public repositories with releases versions where each section contains the online machine-readable files in OWL and other format for online accessibility, the files are maintained and updated regularly to keep the latest version of the models files up to date.
– View, search the concepts of i3-Market
– Allow user to propose a new concept
– Allow the administrator to add a new concept
– Allow the administrator to update/delete an existing concept.
Other resources of interest
We are a community of experienced developers who understand that it is all about changing the perception of data economy via marketplaces support.
Take a look at the main building blocks and their hierarchy.
The secure Data Access API enables data providers secure registration…
The Decentralised storage shall provide highest available security guarantees…
The SSI & IAM subsystem is in charge of providing both “User-centric Authentication” and…
i3-M Wallet is a set of technologies that facilitate the management of their identity to…
The Data Monetization subsystem is in charge of providing “Standard Payments”…
i3-MARKET architecture specification is based on the 4+1 architectural view model approach. One of…
Once a marketplace is part of i3-MARKET, it can issue credentials to its consumers, providers, and…
Full Developers Documentation