Use cases

This handbook serves as a practical guide for using Core Vocabularies in various common situations. To provide clear and actionable insights, we have categorized potential use cases into two groups:

  • Primary Use Cases: These are the most common, interesting, and/or challenging scenarios, all thoroughly covered within this handbook.

  • Additional Use Cases: These briefly introduce other relevant scenarios but are not elaborated on in detail in this handbook.

Within both groups, we differentiate between use cases focused on the creation of NEW artefacts and those involving the mapping of EXISTING artefacts to Core Vocabularies.

For a better overview, we numbered the use cases and organised them into two diagrams, followed by the description of these use cases in two separate subsections, one dedicated to the addressed use cases and one to the use cases that are not addressed in this handbook.

The use cases provided in this handbook are written in white-box point of style oriented towards user goals following the classification of [Cockburn99].

We will use the following template to describe the relevant use cases:

Use Case <UC>: Title of the use case

Goal: A succinct sentence describing the goal of the use case

Primary Actor: The primary actor or actors of this use case

Actors: (Optional) Other actors involved in the use case

Description: Short description of the use case providing relevant information for its understanding

Example: An example to illustrate the application of this use case

Note: (Optional) notes about this use case, especially related to its coverage in this handbook

Primary use cases

image 2025 02 27 14 08 05 543

Use Case UC1: Create a new information exchange data model

Goal: Create a new standalone data schema that uses terms from Core Vocabularies.

Primary Actors: Semantic Engineer, Software Engineer

Description: The goal is to design and create a new data schema or information exchange data model that is not part of a more comprehensive semantic data specification, relying on terms from existing CVs as much as possible.

Note: As this is a more generic use case it will be broken down into concrete use cases that focus on specific data formats.

Use Case UC1.1: Create a new XSD schema

Goal: Create a new standalone XSD schema that uses terms from Core Vocabularies.

Primary Actors: Semantic Engineer, Software Engineer

Description: The goal is to design and create a new XSD schema that is not part of a more comprehensive semantic data specification, relying on terms from existing CVs as much as possible. As an information exchange data model, an XSD Schema can be used to create and validate XML data to be exchanged between information systems.

Example: OOTS XML schema mappings [oots]

Note: A detailed methodology to be applied for this use case will be provided in the Create a new XSD schema

Use Case UC1.2: Create a new JSON-LD context definition

Goal: Create a new standalone JSON-LD context definition that uses terms from Core Vocabularies.

Primary Actors: Semantic Engineer, Software Engineer

Description: The goal is to design and create a new JSON-LD context definition that is not part of a more comprehensive semantic data specification, relying on terms from existing CVs as much as possible. As an information exchange data model, a JSON-LD context definition can be integrated in describing data, building APIs, and other operations involved in information exchange.

Example: Core Person Vocabulary [cpv-json-ld], Core Business Vocabulary [cbv-json-ld]

Note: A detailed methodology to be applied for use cases will be provided in the Create a new JSON-LD context definition section.

Use Case UC2: Map an existing data model to a Core Vocabulary

Goal: Create a mapping of an existing (information exchange) data model, to terms from Core Vocabularies.

Primary Actors: Semantic Engineer

Actors: Domain Expert, Software Engineer

Description: The goal is to design and create a mapping of an ontology, vocabulary, or some kind of data schema or information exchange data model that is not part of a more comprehensive semantic data specification, to terms from CVs. Such a mapping can be done at a conceptual level, or formally, e.g. in the form of transformation rules, and most often will include both.

Note: Since this is a more generic use case it will be broken down into concrete use cases that focus on specific data models and/or data formats. Some of those use cases will be described in detail below, while others will be included in the Appendix, which is dedicated to the additional use cases.

Use Case UC2.1: Map an existing Ontology to a Core Vocabulary

Goal: Create a mapping between the terms of an existing ontology and the terms of Core Vocabularies.

Primary Actors: Semantic Engineer

Actors: Domain Expert, Business Analyst, Software Engineer

Description: The goal is to create a formal mapping expressed in Semantic Web terminology (for example using rdfs:subClassOf, rdfs:subPropertyOf, owl:equivalentClass, owl:equivalentProperty, owl:sameAs properties), associating the terms in an existing ontology that defines relevant concepts in a given domain, to terms defined in one or more CVs. This activity is usually performed by a semantic engineer based on input received from domain experts and/or business analysts, who can assist with the creation of a conceptual mapping. The conceptual mapping associates the terms in an existing ontology, which defines relevant concepts within a specific domain, to terms defined in one or more SEMIC Core Vocabularies. The result of the formal mapping can be used later by software engineers to build information exchange systems.

Example: Mapping Core Person to Schema.org [map-cp2org], Core Business to Schema.org [map-cb2org], etc.

Note: A detailed methodology to be applied for this use case will be provided in the Map an existing Model section.

Use Case UC2.2: Map an existing XSD Schema to a Core Vocabulary

Goal: Define the data transformation rules for the mapping of an XSD schema to terms from Core Vocabularies. Create a mapping of XML data that conforms to an existing XSD schema to an RDF representation that conforms to a Core Vocabulary for formal data transformation.

Primary Actors: Semantic Engineer

Actors: Domain Expert, Business Analyst, Software Engineer

Description: The goal is to create a formal mapping using Semantic Web technologies (e.g. RML or other languages), to allow automated translation of XML data conforming to a certain XSD schema, to RDF data expressed in terms defined in one or more SEMIC Core Vocabularies. This use case required definitions of an Application Profile for a Core Vocabulary because the CV alone does not specify sufficient instantiation constraints to be precisely mappable.
Such activity can be done by semantic engineers based on input from domain experts and/or business analysts, who can assist with the creation of a conceptual mapping. The conceptual mapping is usually used as the basis for the formal mapping. The conceptual mapping can be a simple correspondence table associating the XML Elements defined in an XSD schema, to terms defined in one or more SEMIC Core Vocabularies. In some cases the creation of the conceptual mapping can be done by the semantic engineers themselves, or even by the software engineers building information exchange systems.

Example: ISA2core SAWSDL mapping [isa2-map]

Note: A detailed methodology to be applied for this use case will be provided in the Map an existing XSD schema section.

The additional use cases are described in the Appendix.