SHACL constraints for the Person Identity application profile

Creation date: 2022-07-12
Last updated: 2023-06-05
Version: 1.1.0
License: https://creativecommons.org/licenses/by/4.0/
Publisher: http://publications.europa.eu/resource/authority/corporate-body/DEMP

Abstract

This document specifies the set of classes and properties used in the PID application profile, and the constraints on occurrences and values used.

Table of Contents


Address Shape

An address.

Property name URI Expected value Card. Description
country elm:countryCode Concept Shape
1..1
The address’ country code. It should be provided using the Country Named Authority List.
full address elm:fullAddress Note Shape
0..1
The complete address with or without formatting.
identifier adms:identifier Identifier Shape
0..*
An address identifier.

Agent Shape

An entity that is able to carry out actions.

Property name URI Expected value Card. Description
alternative name skos:altLabel rdf:langString
0..*
The alternative name of the agent.
contact information elm:contactPoint Contact Point Shape
0..*
The contact information of the agent.
group member of elm:groupMemberOf Group Shape
0..*
The group the agent is a member of.
identifier adms:identifier Identifier Shape
0..*
An identifier of the agent.
last modification date dc:modified xsd:dateTime
0..1
The date when the agent was last modified.
location elm:location Location Shape
0..*
The location of the agent.
more information elm:additionalNote Note Shape
0..*
An additional free text note about the agent.
preferred name skos:prefLabel rdf:langString
1..1
The preferred name of the agent.

Concept Scheme Shape

A controlled vocabulary modelled as a Concept Scheme.


Concept Shape

A term from a controlled vocabulary modelled as a skos:Concept.

Property name URI Expected value Card. Description
in scheme skos:inScheme Concept Scheme Shape
0..1
The concept scheme this concept belongs to. The identification of the controlled vocabulary.
name skos:prefLabel rdf:langString
0..*
The text equivalent of the code content component. One value per language is permitted.
notation skos:notation xsd:string
0..1
A notation, also known as classification code, is a string of characters used to uniquely identify a concept within the scope of a given concept scheme.

Contact Point Shape

A contact point for an agent.

Property name URI Expected value Card. Description
address elm:address Address Shape
0..*
A postal address used for contacting the agent.
contact form elm:contactForm Web Resource Shape
0..*
A contact form used for contacting the agent.
description dc:description rdf:langString
0..*
A free text description of the contact details.
emailAddress elm:emailAddress Mailbox Shape
0..*
An e-mail address used for contacting the agent.
more information elm:additionalNote Note Shape
0..*
An additional free text note about the contact point.
phone elm:phone Phone Shape
0..*
A phone number used for contacting the agent.

Geometry Shape

This class defines the geometry at the conceptual level, and it can be encoded by using different formats.

Property name URI Expected value Card. Description
latitude clv:latitude xsd:string
0..*
The geographic coordinate that specifies the north / south position of the Geomerty on the Earth's surface.
longitude clv:longitude xsd:string
0..*
The geographic coordinate that specifies the east / west position of the Geometry on the Earth's surface.

Group Shape

An entity that represents collection of Agents.

Property name URI Expected value Card. Description
alternative name skos:altLabel rdf:langString
0..*
The alternative name of the group.
contact information elm:contactPoint Contact Point Shape
0..*
The contact information of the group.
has member foaf:member Agent Shape
0..*
An agent being a member of the group.
location elm:location Location Shape
0..*
The location of the group.
more information elm:additionalNote Note Shape
0..*
An additional free text note about the group.
name skos:prefLabel rdf:langString
1..1
The name of the group.
type dc:type Concept Shape
0..*
The type of the group. It should be provided using a controlled vocabulary.

Identifier Shape

A character string used to identify a resource. An identifier is a character string used to uniquely identify one instance of an object within an identification scheme that is managed by an agency. The Identifier class is a critical aspect of the ELM. It is used to identify persons and organisations. In these cases, and more, the identifier itself will be some sort of alpha-numeric string but that string only has meaning if it is contextualised.

Property name URI Expected value Card. Description
date issued dc:issued xsd:dateTime
0..1
The date on which the identifier was issued.
identifier content skos:notation xsd:string
1..1
Content string which is the identifier.
scheme agency dc:creator IRI
0..1
Identification of the agent that manages the identifier scheme. The agent that issued the identifier. (e.g., a URI).
scheme agency name adms:schemeAgency rdf:langString
0..1
The name of the agent that manages the identifier scheme.
scheme name elm:schemeName xsd:string
0..1
The name of the identifier scheme.
scheme version elm:schemeVersion xsd:string
0..1
Identification of the version of the identifier scheme.
type dc:type Concept Shape
0..*
The type of the identifier.

Legal Identifier Shape

A legal identifier. A legal identifier is a formally issued identifier by a given authority within a given jurisdiction. The identifier has a spatial context. Legal Identifier is a subclass of Identifier.

Property name URI Expected value Card. Description
date issued dc:issued xsd:dateTime
0..1
The date on which the identifier was issued.
identifier content skos:notation xsd:string
1..1
Content string which is the identifier.
scheme agency dc:creator IRI
0..1
Identification of the agent that manages the identifier scheme. The agent that issued the identifier. (e.g., a URI).
scheme agency name adms:schemeAgency rdf:langString
0..1
The name of the agent that manages the identifier scheme.
scheme name elm:schemeName xsd:string
0..1
The name of the identifier scheme.
scheme version elm:schemeVersion xsd:string
0..1
Identification of the version of the identifier scheme.
spatial dc:spatial Concept Shape
1..1
A spatial identifier. The identifier of the country and/or jurisdiction. It should be provided using the Country Named Authority List.
type dc:type Concept Shape
0..*
The type of the identifier.

Location Shape

An identifiable geographic place.

Property name URI Expected value Card. Description
address elm:address Address Shape
1..*
An address associated with the location.
description dc:description rdf:langString
0..*
A free text description of the location.
geographic name elm:geographicName rdf:langString
0..1
A proper noun applied to a spatial object.
geometry locn:geometry Geometry Shape
0..*
Associates the Location with the corresponding Geometry.
identifier adms:identifier Identifier Shape
0..*
A location identifier.
spatial code elm:spatialCode Concept Shape
0..*
A code identifying a spatial scope in which this physical location is located. It should be provided using the Administrative territorial unit Authority Table (ATU).

Mailbox Shape

A mailbox.


Media Object Shape

A media object.

Property name URI Expected value Card. Description
content elm:content xsd:string
1..1
The binary data of the media object.
content URL elm:contentUrl xsd:anyURI
0..1
The public access URL.
content encoding elm:contentEncoding Concept Shape
1..1
The encoding used to encode the binary data. It should be provided using the EDC Controlled List of Content Encoding Types.
content size elm:contentSize xsd:integer
0..1
The content size of the media object.
type dc:type Concept Shape
1..1
The type of the media object. It should be provided using the Filetype Named Authority List.

Note Shape

Free text metadata fields, such as the description, a historical or additional note of a qualification can contain a plain text or a XHTML fragment as literal value. By using a Note both the datatype of the literal and the language can be specified.

Property name URI Expected value Card. Description
language dc:language Concept Shape
0..1
The language of the note. It should be provided using Language Named Authority List.
note format elm:noteFormat Concept Shape
0..1
The format of the note. It should be provided using the IANA types for text, text/plain, text/html etc.
note literal elm:noteLiteral xsd:string
1..1
The textual content of the note.
subject dc:subject Concept Shape
0..1
The subject of the note. It should be provided using a controlled vocabulary.

Organisation Shape

A legal person / registered organisation. Organisation is a subclass of Agent.

Property name URI Expected value Card. Description
VAT number elm:vatIdentifier Legal Identifier Shape
0..*
The Value-Added Tax ID.
alternative name skos:altLabel rdf:langString
0..*
The alternative name of the organisation.
child organisation org:hasSubOrganization Organisation Shape
0..*
A smaller organisation of which forms part of this organisation, e.g., a department within a larger organisation.
contact information elm:contactPoint Contact Point Shape
0..*
The contact information of an organisation.
eIDAS identifier elm:eidasLegalIdentifier Legal Identifier Shape
0..1
The official identification number of the organisation, as awarded by the relevant national authority.
group member of elm:groupMemberOf Group Shape
0..*
The group the organisation is a member of.
homepage foaf:homepage Web Resource Shape
0..*
The homepage of the organisation.
identifier adms:identifier Identifier Shape
0..*
An alternative identifier of the organisation.
last modification date dc:modified xsd:dateTime
0..1
The date when the organisation was last modified.
legal name rov:legalName rdf:langString
1..*
The legal name of the organisation.
location elm:location Location Shape
1..*
The location of the organisation.
logo elm:logo Media Object Shape
0..1
The logo of the organisation.
more information elm:additionalNote Note Shape
0..*
An additional free text note about the organisation.
parent organisation org:subOrganizationOf Organisation Shape
0..1
Indicates a larger organisation of which this organisation is a part of, e.g., the organisation within which a department operates.
registration rov:registration Legal Identifier Shape
0..1
The legal identifier of an organisation. The identifier given to a registered organisation by the authority with which it is registered. The legal status of a registered organisation is conferred on it by an authority within a given jurisdiction. The Legal Identifier is therefore a fundamental relationship between an organisation and the authority with which it is registered.
tax/fiscal identifier elm:taxIdentifier Legal Identifier Shape
0..*
Fiscal ID of the organisation.
type dc:type Concept Shape
0..*
The type of the organisation.

Person Shape

A human being. Person is a subclass of Agent.

Property name URI Expected value Card. Description
birth name person:birthName rdf:langString
0..*
The name of the person at birth. Birth names tend to be persistent and for this reason they are recorded by some public sector information systems. There is no granularity for birth name - the full name should be recorded in a single field.
citizenship elm:citizenshipCountry Concept Shape
0..*
The country (or countries) that conferred citizenship rights on the person. It should be provided using the Country Named Authority List.
contact information elm:contactPoint Contact Point Shape
0..*
The contact information of the person.
date of birth elm:dateOfBirth xsd:dateTime
0..1
The date of birth of the person.
family name foaf:familyName rdf:langString
0..1
The family name of the person.
full name foaf:fullName rdf:langString
0..1
The complete name of the person as one string.
gender elm:gender Concept Shape
0..1
The gender of the person. It should be provided using the Human Sex Named Authority List.
given name foaf:givenName rdf:langString
0..1
The given name of the person.
group member of elm:groupMemberOf Group Shape
0..*
The group the person is a member of.
identifier adms:identifier Identifier Shape
0..*
An identifier of the person.
last modification date dc:modified xsd:dateTime
0..1
The date when the person (information) was last modified.
location elm:location Location Shape
0..1
The location of the person.
member of org:memberOf Organisation Shape
0..*
The organisation of which the person is a member.
national ID number elm:nationalId Legal Identifier Shape
0..1
The 'primary' national identifier of the person.
patronymic name person:patronimycName rdf:langString
0..*
Patronymic names are important in some countries. Iceland does not have a concept of 'family name' in the way that many other European countries do, for example, Erik Magnusson and Erika Magnusdottir are siblings, both offspring of Mangnus, irrespective of his patronymic name. In Bulgaria and Russia, patronymic names are in everyday usage, for example, the Sergeyevich in 'Mikhail Sergeyevich Gorbachev.
place of birth elm:placeOfBirth Location Shape
0..1
The place of birth of the person.

Phone Shape

A phone.

Property name URI Expected value Card. Description
area dialling code elm:areaDialing xsd:string
0..1
The area dialling code for a contact number.
country dialling code elm:countryDialing xsd:string
0..1
The country dialling code for a contact number.
full phone number elm:phoneNumber xsd:string
0..1
The full phone number as a string.
phone number elm:dialNumber xsd:string
0..1
The contact number, not including country dialling or area dialling codes. (e.g., '3445654', '1234567', etc.).

Web Resource Shape

A public web resource.

Property name URI Expected value Card. Description
URL elm:contentUrl xsd:anyURI
1..1
The public access URL.
language dc:language Concept Shape
0..1
The language of the web resource. It should be provided using Language Named Authority List.
title dc:title rdf:langString
0..*
The title of the web resource. One value per language is permitted.