Abstract

D4WTA-AP provides a minimal common basis within Data4Wallonia to describe a taxonomy.

Introduction

This model is an application profile for Data4Wallonia. It allows to express the taxonomy used to classify concepts in Data4Wallonia portal.

D4WTA-AP is designed to meet the following use cases:

The specification of the Data4Wallonia Taxonomy Application Profile is represented in a UML class diagram. The figure here beneath shows the full profile which includes the classes and properties that define the taxonomy itself.

Status

This Application Profile has the status Draft published at 2024-09-04.

Information about the process and the decisions involved in the creation of this specification are consultable at the Changelog.

License

Copyright © 2024 Agence Du Numérique. All material in this repository is published under the license CC-BY 4.0, unless explicitly otherwise mentioned.

Terminology

An Application Profile (AP) is a specification that reuses terms from one or more base standards, adding more specificity by identifying mandatory, recommended and optional elements to be used for a particular application, as well as recommendations for controlled vocabularies to be used.

A Core Vocabulary (CV) is a basic, reusable and extensible data specification that captures the fundamental characteristics of an entity in a context-neutral fashion. Its main objective is to provide terms to be reused in the broadest possible context. More information can be found on the SEMIC Style Guide.

This specification uses the following prefixes to shorten the URIs for readability.
PrefixNamespace IRI
dcthttp://purl.org/dc/terms/
euvochttp://publications.europa.eu/ontology/euvoc#
owlhttp://www.w3.org/2002/07/owl#
rdfhttp://www.w3.org/1999/02/22-rdf-syntax-ns#
skoshttp://www.w3.org/2004/02/skos/core#
xsdhttp://www.w3.org/2001/XMLSchema#

Overview

This document describes the usage of the following main entities for a correct usage of the Application Profile:
| Concept | Concept Scheme |

And supported by these datatypes:
| Date | String | Text |

Main Entities

The main entities are those that form the core of the Application Profile.

Concept

Definition
This class represents any concept that can be used for classifying the Public Service and which relates to the Public Service through the property Is Classified By.
Usage Note
This class has been added in the CPSV-AP to complement the need for adding other ways of classifying the Public Service, which have not been explicitly defined in the CPSV-AP. In this context, the CPSV-AP reuses the Concept class as defined in the SKOS Simple Knowledge Organization System. For describing the attributes of a Concept (labels, preferred labels, alternative labels, definition, etc.) we refer to SKOS. The Concept may or may not belong to (member) a certain Collection.
Properties
For this entity the following properties are defined: alternative label , definition , has broader , identifier , is in scheme , is replaced by , is top concept of , preferred label , replaces , status , title , version info .
Property Range Card Definition Usage
[o] alternative label Text 0..* An alternative lexical label for a resource. Acronyms, abbreviations, spelling variants, and irregular plural/singular forms may be included among the alternative labels for a concept. Mis-spelled terms are normally included as hidden labels (see skos:hiddenLabel).
[o] definition Text 1..* A statement or formal explanation of the meaning of a concept.
[o] has broader Concept 0..1 Relates a concept to a concept that is more general in meaning.
[o] identifier String 1 An unambiguous reference to the resource within a given context.
[o] is in scheme Concept Scheme 1 Relates a resource (for example a concept) to a concept scheme in which it is included.
[o] is replaced by Concept 0..1 A related resource that supplants, displaces, or supersedes the described resource.
[o] is top concept of Concept Scheme 0..1 Relates a concept to the concept scheme that it is a top level concept of.
[o] preferred label Text 1..* The preferred lexical label for a resource, in a given language. Labels should be in French or English.
Labels should be at least in French.
Labels should start with capital letters.
Labels should not contain special characters such as & ( ) \ or /.
[o] replaces Concept 0..1 A related resource that is supplanted, displaced, or superseded by the described resource.
[o] status Concept 1 The status of the concept in the context of a particular workflow process. The recommended controlled vocabulary is the Publications Office Concept status authority table.
[o] title Text 0..* A name given to the resource. This property is used as the "popularized title".
[o] version info String 1 This element contains a string giving information about this version such as RCS/CVS keywords. The values should follow Semantic Versioning (X.X.X).

Concept Scheme

Definition
A set of concepts, optionally including statements about semantic relationships between those concepts.
Usage Note
A concept scheme may be defined to include concepts from different sources.
Properties
For this entity the following properties are defined: date created , date issued , date modified , has top concept , identifier , is replaced by , preferred label , replaces , title , version info .
Property Range Card Definition Usage
[o] date created Date 1 Date of creation of the resource.
[o] date issued Date 0..1 Date of formal issuance of the resource.
[o] date modified Date 0..1 Date on which the resource was changed.
[o] has top concept Concept 0..* Relates, by convention, a concept scheme to a concept which is topmost in the broader/narrower concept hierarchies for that scheme, providing an entry point to these hierarchies.
[o] identifier String 1 An unambiguous reference to the resource within a given context.
[o] is replaced by Concept Scheme 0..1 A related resource that supplants, displaces, or supersedes the described resource.
[o] preferred label Text 1..* The preferred lexical label for a resource, in a given language. Labels should be in French or English.
Labels should be at least in French.
Labels should start with capital letters.
Labels should not contain special characters such as & - ( ) \ or /.
[o] replaces Concept Scheme 0..1 A related resource that is supplanted, displaced, or superseded by the described resource.
[o] title Text 0..* A name given to the resource.
[o] version info String 1 This element contains a string giving information about this version such as RCS/CVS keywords. The values should follow Semantic Versioning (X.X.X).

Supportive Entities

The supportive entities are supporting the main entities in the Application Profile. They are included in the Application Profile because they form the range of properties.

Datatypes

The following datatypes are used within this specification.
Class Definition
(create issue) The ·value space· of date consists of top-open intervals of exactly one day in length on the timelines of dateTime, beginning on the beginning moment of each day (in each timezone), i.e. '00:00:00', up to but not including '24:00:00' (which is identical with '00:00:00' of the next day). For nontimezoned values, the top-open intervals disjointly cover the nontimezoned timeline, one per day. For timezoned values, the intervals begin at every minute and therefore overlap.
(create issue) The string datatype represents character strings in XML. The ·value space· of string is the set of finite-length sequences of characters (as defined in [XML 1.0 (Second Edition)]) that ·match· the Char production from [XML 1.0 (Second Edition)]. A character is an atomic unit of communication; it is not further specified except to note that every character has a corresponding Universal Character Set code point, which is an integer.
(create issue) The text data type is a combination of a string and a language identifier.

Examples

Example Taxonomy

Usage Guidelines

Support for implementation

The following section provides support for implementing the Data4Wallonia Taxonomy Application Profile (D4WTA-AP).

JSON-LD context file

One common technical question is the format in which the data is being exchanged. For conformance with the Data4Wallonia Taxonomy Application Profile (D4WTA-AP), it is not mandatory that this happens in an RDF serialisation, but the exchanged format SHOULD be unambiguously transformable into RDF. For the format JSON, a popular format to exchange data between systems, SEMIC provides a JSON-LD context file. JSON-LD is a W3C Recommendation [[[json-ld11]]] that provided a standard approach to interpret JSON structures as RDF. The provided JSON-LD context file can be used by implementers. This JSON-LD context is not normative, i.e. other JSON-LD contexts are allowed.

The JSON-LD context file downloadable here.

Validation

To verify if the data is (technically) conformant to the Data4Wallonia Taxonomy Application Profile (D4WTA-AP), the exchanged data can be validated using the provided SHACL shapes. SHACL is a W3C Recommendation to express constraints on an RDF knowledge graph.

To support the check whether or not a catalogue satisfies the expressed constraints in this Application Profile, the constraints in this specification are expressed using SHACL [[shacl]]. Each constraint in this specification that could be converted into a SHACL expression has been included. As such this collection of SHACL expressions that can be used to build a validation check for data.

It is up to the implementers to define the validation they expect. Each implementation happens within a context, and that context is beyond the SHACL expressions here.

The shapes can be found here.

Governance

Versioning governance

All specifications produced in Data4Wallonia will follow the versioning rule described by the SEMIC Style Guide rule PC-R3.

The serialisation will have:

Lexicalisation rules

In order to adhere to the SEMIC Style Guide rule SC-R3 a specification requires formal lexicalisation rules. The Style Guide proposes two options either by using RDFS or SKOS lexicalisation.

Data4Wallonia uses and will use the SKOS lexicalisation for the taxonomy at least. More specifically:

Additional constraints

Additional shapes can be found:

Quick Reference of Classes and Properties

This section provides a condensed tabular overview of the mentioned classes and properties in this specification. The properties are indicated as mandatory, recommended, optional and deprecated. These terms have the following meaning.
ClassClass IRIProperty TypePropertyProperty IRI
Concept
http://www.w3.org/2004/02/skos/core#Concept
alternative label
http://www.w3.org/2004/02/skos/core#altLabel
Concept
http://www.w3.org/2004/02/skos/core#Concept
definition
http://www.w3.org/2004/02/skos/core#definition
Concept
http://www.w3.org/2004/02/skos/core#Concept
has broader
http://www.w3.org/2004/02/skos/core#broader
Concept
http://www.w3.org/2004/02/skos/core#Concept
identifier
http://purl.org/dc/terms/identifier
Concept
http://www.w3.org/2004/02/skos/core#Concept
is in scheme
http://www.w3.org/2004/02/skos/core#inScheme
Concept
http://www.w3.org/2004/02/skos/core#Concept
is replaced by
http://purl.org/dc/terms/isReplacedBy
Concept
http://www.w3.org/2004/02/skos/core#Concept
is top concept of
http://www.w3.org/2004/02/skos/core#topConceptOf
Concept
http://www.w3.org/2004/02/skos/core#Concept
preferred label
http://www.w3.org/2004/02/skos/core#prefLabel
Concept
http://www.w3.org/2004/02/skos/core#Concept
replaces
http://purl.org/dc/terms/replaces
Concept
http://www.w3.org/2004/02/skos/core#Concept
status
http://publications.europa.eu/ontology/euvoc#status
Concept
http://www.w3.org/2004/02/skos/core#Concept
title
http://purl.org/dc/terms/title
Concept
http://www.w3.org/2004/02/skos/core#Concept
version info
http://www.w3.org/2002/07/owl#versionInfo
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
date created
http://purl.org/dc/terms/created
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
date issued
http://purl.org/dc/terms/issued
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
date modified
http://purl.org/dc/terms/modified
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
has top concept
http://www.w3.org/2004/02/skos/core#hasTopConcept
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
identifier
http://purl.org/dc/terms/identifier
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
is replaced by
http://purl.org/dc/terms/isReplacedBy
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
preferred label
http://www.w3.org/2004/02/skos/core#prefLabel
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
replaces
http://purl.org/dc/terms/replaces
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
title
http://purl.org/dc/terms/title
Concept Scheme
http://www.w3.org/2004/02/skos/core#ConceptScheme
version info
http://www.w3.org/2002/07/owl#versionInfo