DATA
SUPPORT
OPEN
Training Module 2.4
Designing and
developing RDF
vocabularies
PwC firms help organisations and individuals create the value they’re looking for. We’re a network of firms in 158 countries with close to 180,000 people who are committed to
delivering quality in assurance, tax and advisory services. Tell us what matters to you and find out more by visiting us at www.pwc.com.
PwC refers to the PwC network and/or one or more of its member firms, each of which is a separate legal entity. Please see www.pwc.com/structure for further details.
DATASUPPORTOPEN
This presentation has been created by PwC
Authors:
Nikolaos Loutas, Michiel De Keyzer and Stijn
Goedertier
Presentation
metadata
Slide 2
Open Data Support is funded by
the European Commission
under SMART 2012/0107 ‘Lot
2: Provision of services for the
Publication, Access and Reuse of
Open Public Data across the
European Union, through
existing open data
portals’(Contract No. 30-CE-
0530965/00-17).
© 2014 European Commission
Disclaimers
1. The views expressed in this presentation are purely those of the authors and may not, in any
circumstances, be interpreted as stating an official position of the European Commission.
The European Commission does not guarantee the accuracy of the information included in this
presentation, nor does it accept any responsibility for any use thereof.
Reference herein to any specific products, specifications, process, or service by trade name,
trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement,
recommendation, or favouring by the European Commission.
All care has been taken by the author to ensure that s/he has obtained, where necessary,
permission to use any parts of manuscripts including illustrations, maps, and graphs, on which
intellectual property rights already exist from the titular holder(s) of such rights or from her/his
or their legal representative.
2. This presentation has been carefully compiled by PwC, but no representation is made or
warranty given (either express or implied) as to the completeness or accuracy of the information it
contains. PwC is not liable for the information in this presentation or any decision or
consequence based on the use of it.. PwC will not be liable for any damages arising from the use of
the information contained in this presentation. The information contained in this presentation is
of a general nature and is solely for guidance on matters of general interest. This presentation is
not a substitute for professional advice on any particular matter. No reader should act on the basis
of any matter contained in this publication without considering appropriate professional advice.
DATASUPPORTOPEN
Learning objectives
By the end of this training module you should have an understanding
of:
• What the best practices are for creating an RDF vocabulary for
modelling your data
• Where to find RDF vocabularies for reuse.
• How you can create your own RDF vocabulary.
• How to publish your RDF vocabulary.
• The process and methodology for developing semantic agreements
developed by the ISA Programme of the European Commission.
Slide 3
DATASUPPORTOPEN
Content
This module is about...
• The steps for modelling your data.
• How to reuse existing vocabularies to model your data.
• How to create new classes and properties in RDF.
• How and where to publish your RDF vocabulary so that it can be
reused by others.
Slide 4
DATASUPPORTOPEN
RDF Vocabulary
Slide 5
“A vocabulary is a data model comprising classes, properties and
relationships which can be used for describing your data and
metadata.”
• RDF Vocabularies are sets of terms used to describe things.
• A term is either a class or a property.
 Object type properties (relationships)
 Data type properties (attributes)
DATASUPPORTOPEN
What are classes, relationships and properties?
Class. A construct that represents things in the real and/or
information world, e.g. a person, an organisation, a concepts such as
“health” or “freedom”.
Relationship. A link between two classes; for the link between a
document and the organisation that published it (i.e. organisation
publishes document), or the link between a map and the geographic
region it depicts (i.e. map depicts geographic region). In RDF
relationships are encoded as object type properties.
Property. A characteristic of a class in a particular dimension such as
the legal name of an organisation or the date and time that an
observation was made.
Slide 6
DATASUPPORTOPEN
Examples of classes, relationships and properties
Slide 7
http://.../org/217279
8119
site
http://example.com/site
/1234
RegisteredOrganisation Address
Dahliastraat 24, 2160
Wommelgem“Nikè”
a a
fullAddresslegalName
ClassProperty
Relationship
DATASUPPORTOPEN
Model your data
How to reuse from other vocabularies, define your own
terms and publish and promote your vocabularies to
describe the data.
Slide 8
DATASUPPORTOPEN
6 steps for modelling your data
Start with a robust Domain Model developed following a
structured process and methodology.
Research existing terms and their usage and maximise reuse of
those terms.
Where new terms can be seen as specialisations of existing terms,
create sub class and sub properties.
Where new terms are required, create them following
commonly agreed best practice.
Publish within a highly stable environment designed to be
persistent.
Publicise the RDF schema by registering it with relevant
services.
Slide 9
1
See also:
https://joinup.ec.europa.eu/community/semic/document/
cookbook-translating-data-models-rdf-schemas
2
3
4
5
6
DATASUPPORTOPEN
Start with a robust Domain Model
Slide 10
1
class Domain Model
RegisteredOrganisation
- identifier
- name
- registrationDate
- status
- type
Address
- identifier
- fullAddress
- postcode
ContactPoint
- identifier
- name
- telephone
- email
- fax
- website
Activity
- identifier
- name
Certificate
- identifier
- name
location
organisationCertificate
contactInformation
organisationActivity
DATASUPPORTOPEN
Reuse existing terms and vocabularies
• General purpose vocabularies: DCMI, RDFS
• To name things: rdfs:label, foaf:name, skos:prefLabel
• To describe people: FOAF, vCard, Core Person Vocabulary
• To describe projects: DOAP, ADMS.SW
• To describe interoperability assets: ADMS
• To describe registered organisations: Registered Organisation
Vocabulary
• To describe addresses: vCard, Core Location Vocabulary
• To describe public services: Core Public Service Vocabulary
• To describe datasets: DCAT, DCAT Application Profile, VoID
Slide 11
2
DATASUPPORTOPEN
Creating application profiles
• Different domains have different requirements for domain-specific
semantics, e.g. classification concepts.
• Generic RDF vocabularies usually provides the core base classes needed
to allow extensions to add specific sub-class structures or classification
schemes as required.
• In such cases, reusers are encouraged to define application profiles
particular to an application domain by specifying (if required) sub-
classes, sub-properties and controlled vocabularies.
• For example,
 DCAT Application profile for data portals in Europe
 Registered Organization vocabulary as an application profile of the
Organization ontology.
Slide 12
See also:
joinup.ec.europa.eu/asset/dcat_application_profile/home
DATASUPPORTOPEN
Advantages of reuse
• Reuse greatly aids interoperability of your data
 Use of dcterms:created, for example, the value for which should be a data typed
date such as 2013-02-21^^xsd:date, is immediately processable by many machines.
If your schema encourages data publishers to use a different term and date format,
such as ex:date "21 February 2013" – data published using your schema will require
further processing to make it the same as everyone else's.
• Reuse adds credibility to your schema.
 It shows it has been published with care and professionalism, again, this promotes
its reuse.
• Reuse is easier and cheaper.
 Reusing classes and properties from well defined and properly hosted vocabularies
avoids your having to replicate that effort.
Slide 13
DATASUPPORTOPEN
You can find reusable RDF vocabularies on...
Slide 14
http://joinup.ec.europa.eu/
http://lov.okfn.org/
DATASUPPORTOPEN
Creation of sub-classes and sub-properties
• RDF schemas and vocabularies often include terms that are very
generic.
• By creating sub-class and sub-property relationships, systems
that understand the super property or super class may be able to
interpret the data even if the more specific terms are unknown.
• Do not create sub-classes and sub-properties simply to
allow you to use your own term for something that already
exists.
Slide 15
3
DATASUPPORTOPEN
Creation of sub-properties - example
The Registered Organization vocabulary defines three sub-properties of
org:classification: companyType, companyStatus and companyActivity.
Slide 16
DATASUPPORTOPEN
Defining a sub-property in RDF
<rdf:Property rdf:about="rov:companyType">
<rdfs:label xml:lang="en">company type</rdfs:label>
<rdfs:comment xml:lang="en" rdf:parseType="Literal">
This property records the type of company. Familiar types are SA, PLC, LLC,
GmbH etc. Each jurisdiction will have a limited set of recognised company
types and these should be used in a consistent manner using a skos:Concept
as described in the <a href="#skos:Concept">Code</a> Class.
</rdfs:comment>
<rdfs:isDefinedBy rdf:resource="http://www.w3.org/ns/regorg#"/>
<rdfs:range rdf:resource="skos:Concept"/>
<rdfs:subPropertyOf rdf:resource="org:classification" />
<dcterms:identifier>legal:companyType</dcterms:identifier>
</rdf:Property>
Slide 17
DATASUPPORTOPEN
Where new terms are required, create them
following commonly agreed best practices
 Classes begin with a capital letter and are always singular, e.g.
skos:Concept.
 Properties begin with a lower case letter, e.g. rdfs:label.
 Object properties should be verbs, e.g. org:hasSite.
 Data type properties should be nouns, e.g. dcterms:description.
 Use camel case if a term has more than one word, e.g.
foaf:isPrimaryTopicOf.
Slide 18
4
DATASUPPORTOPEN
Defining a new class - Organisation
<rdf:RDF
xmlns:rdfs=“http://www.w3.org/2000/01/rdf-schema#”
xmlns:org=“htpp://example.org/organisation-schema”>
<rdf:Class rdf:about=“org:Organisation">
<rdfs:label xml:lang="en">Organisation</rdfs:label>
<rdfs:comment xml:lang:”en”>
Legal entity that is registered in an official national or regional
register.
</rdfs:comment>
</rdf:Class>
Slide 19
DATASUPPORTOPEN
Defining a new property - registrationNumber
<rdf:RDF
xmlns:rdfs=“http://www.w3.org/2000/01/rdf-schema#”
xmlns:org=“htpp://example.org/organisation-schema”>
<rdf:Property rdf:about=“org:registrationNumber">
<rdfs:label xml:lang="en">registrationNumber</rdfs:label>
<rdfs:comment xml:lang:”en”>
The number that a registered organisation receives upon registration
in the official register.
</rdfs:comment>
</rdf:Class>
Slide 20
DATASUPPORTOPEN
Defining domain and range restrictions
<rdf:RDF
xmlns:rdfs=“http://www.w3.org/2000/01/rdf-schema#”
xmlns:org=“htpp://example.org/organisation-schema”
xmlns:locn=“http://www.w3.org/ns/locn#”>
<rdf:Property rdf:about=“org:isLocated">
<rdfs:label xml:lang="en">isLocated</rdfs:label>
<rdfs:comment xml:lang:”en”>
The official address of the registered organisation’s headquarters.
</rdfs:comment>
<rdfs:domain rdf:resource=“org:Organisation”/>
<rdfs:range rdf:resource=“locn:Address”>
</rdf:Class>
Slide 21
http://example.org/org/1234 org:isLocated http://dbpedia.org/page/Brussels
DATASUPPORTOPEN
Publish within a highly stable environment
designed to be persistent
• Choose a stable namespace for your RDF schema (e.g. W3C, Purl...)
• Use good practices on the publication of persistent Uniform
Resource Identifiers (URI) sets, both in terms of format and of their
design rules and management.
• Examples:
 http://www.w3.org/ns/adms
 http://purl.org/dc/elements/1.1
Slide 22
5
See also:
https://joinup.ec.europa.eu/community/semic/document/cookbook-translating-
data-models-rdf-schemas
http://www.slideshare.net/OpenDataSupport/design-and-manage-persitent-uris
DATASUPPORTOPEN
Publicise the RDF schema by registering it with
relevant services
Once your RDF schema is published you will want people to know about it. To
reach a wider audience register it Joinup and Linked Open Vocabularies.
Slide 23
6
Refinethesearch results via the
facetedsearch filters.
2
1
3
http://joinup.ec.europa.eu
http://lov.okfn.org
DATASUPPORTOPEN
Conclusions
Slide 24
Start with a robust Domain Model developed following a structured
process and methodology.
Research existing terms and their usage and maximise reuse of those
terms.
Where new terms can be seen as specialisations of existing terms, create
sub class and sub properties as appropriate.
Where new terms are required, create them following commonly agreed
best practice in terms of naming conventions etc
Publish within a highly stable environment designed to be persistent.
Publicise the RDF schema by registering it with relevant services.
Analyse
Model
Publish
DATASUPPORTOPEN
Group exercise
Slide 25
In groups of 2, create the RDF description of a vocabulary for
representing a citizen.
According to you, what are the main barriers to the reuse of
existing RDF vocabularies?
http://www.visualpharm.com
http://www.visualpharm.com
Take also the online test here!
DATASUPPORTOPEN
Thank you!
...and now YOUR questions?
Slide 26
DATASUPPORTOPEN
References
Slides 9:
• Linked Data Cookbook. W3C.
http://www.w3.org/2011/gld/wiki/Linked_Data_Cookbook
Slide 10-23:
• ISA Programme. Cookbook for translating Data Models to RDF Schemas.
https://joinup.ec.europa.eu/community/semic/document/cookbook-translating-
data-models-rdf-schemas
Slide 16, 18,-21:
• W3C. An organization ontology. http://www.w3.org/TR/vocab-org/
Slide 23:
• ADMS Brochure. ISA Programme.
https://joinup.ec.europa.eu/elibrary/document/adms-brochure
Slide 27
DATASUPPORTOPEN
Further reading
Linked Data Cookbook, W3C Government Linked Data Working
Group,
http://www.w3.org/2011/gld/wiki/Linked_Data_Cookbook
EC, ISA Process and methodology for developing semantic
agreements,
https://joinup.ec.europa.eu/community/core_vocabularies/documen
t/process-and-methodology-developing-semantic-agreements
EC ISA, Cookbook for translating Data Models to RDF Schemas
https://joinup.ec.europa.eu/community/semic/document/cookbook-
translating-data-models-rdf-schemas
Slide 28
DATASUPPORTOPEN
Related projects and initiatives
Joinup, http://joinup.ec.europa.eu
Linked Open Vocabularies (LOV), http://lov.okfn.org/
EC ISA, e-Government Core Vocabularies,
https://joinup.ec.europa.eu/community/core_vocabularies/home
W3C Schools – Learn RDF
http://www.w3schools.com/rdf/default.asp
EUCLID, http://euclid-project.eu/
XML Summer School http://xmlsummerschool.com/
Slide 29
DATASUPPORTOPEN
Be part of our team...
Find us on
Contact us
Join us on
Follow us
Open Data Support
http://www.slideshare.net/OpenDataSupport
http://www.opendatasupport.euOpen Data Support
http://goo.gl/y9ZZI
@OpenDataSupport contact@opendatasupport.eu
Slide 30

More Related Content

PDF
Introduction to linked data
PDF
Organizing Knowledge: A Knowledge Manager’s Primer to Taxonomy Development
PPTX
ETL Technologies.pptx
PPTX
Replication and Consistency in Cassandra... What Does it All Mean? (Christoph...
PPTX
IA& Taxonomy Planning for SharePoint Online & Office 365
PPTX
RDF data model
PPTX
Introduction to EAD
PPTX
ontop: A tutorial
Introduction to linked data
Organizing Knowledge: A Knowledge Manager’s Primer to Taxonomy Development
ETL Technologies.pptx
Replication and Consistency in Cassandra... What Does it All Mean? (Christoph...
IA& Taxonomy Planning for SharePoint Online & Office 365
RDF data model
Introduction to EAD
ontop: A tutorial

What's hot (20)

PPTX
Dspace software
PPTX
Dspace
PDF
Jena – A Semantic Web Framework for Java
PDF
Introduction to Ontology Concepts and Terminology
PDF
Data Mesh Part 4 Monolith to Mesh
PDF
Beyond the Brokers: A Tour of the Kafka Ecosystem
PDF
Data Engineer's Lunch #83: Strategies for Migration to Apache Iceberg
PPTX
Introduction to SPARQL
PPTX
FAIR data
PDF
Koha Library Management System presentation
PDF
Apache Kafka® and the Data Mesh
PDF
The Graph Database Universe: Neo4j Overview
PPT
Introduction To RDF and RDFS
PPTX
Model of information retrieval (3)
PDF
Ontology Learning
PPTX
Data weekender4.2 azure purview erwin de kreuk
PDF
SQL vs NoSQL, an experiment with MongoDB
PPTX
Introducing RDA
PPTX
Towards an Open Research Knowledge Graph
PDF
Introduction to the Semantic Web
Dspace software
Dspace
Jena – A Semantic Web Framework for Java
Introduction to Ontology Concepts and Terminology
Data Mesh Part 4 Monolith to Mesh
Beyond the Brokers: A Tour of the Kafka Ecosystem
Data Engineer's Lunch #83: Strategies for Migration to Apache Iceberg
Introduction to SPARQL
FAIR data
Koha Library Management System presentation
Apache Kafka® and the Data Mesh
The Graph Database Universe: Neo4j Overview
Introduction To RDF and RDFS
Model of information retrieval (3)
Ontology Learning
Data weekender4.2 azure purview erwin de kreuk
SQL vs NoSQL, an experiment with MongoDB
Introducing RDA
Towards an Open Research Knowledge Graph
Introduction to the Semantic Web
Ad

Similar to Designing and developing vocabularies in RDF (20)

PPTX
Apa itu RDF dan SPARQL sebagai alat bantu pada big Data
PDF
Introduction to RDF & SPARQL
PDF
Introduction to metadata management
PDF
Llinked open data training for EU institutions
PDF
Linked Open Data Principles, Technologies and Examples
PDF
Design and manage persistent URIs
PPT
Eprints Special Session - DC-2006, Mexico
PPTX
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Estand...
PPT
Repositories and the wider context
PPT
Eprints Application Profile
PPTX
Chris Oliver: RDA: Designed for Current and Future Environments
PPT
Swap For Dummies Rsp 2007 11 29
PPTX
Introduction to Application Profiles
PPTX
Semantic interoperability courses training module 2 - core vocabularies v0.11
PDF
Linked Open Data in the World of Patents
PPTX
Linked data 20171106
PDF
Promoting the re use of open data through ODIP
PPT
Repositories thru the looking glass
PDF
Linked Data at the OU - the story so far
DOC
Notes for talk on 12th June 2013 to Open Innovation meeting, Glasgow
Apa itu RDF dan SPARQL sebagai alat bantu pada big Data
Introduction to RDF & SPARQL
Introduction to metadata management
Llinked open data training for EU institutions
Linked Open Data Principles, Technologies and Examples
Design and manage persistent URIs
Eprints Special Session - DC-2006, Mexico
Seminario eMadrid sobre "Nuevas experiencias en laboratorios remotos". Estand...
Repositories and the wider context
Eprints Application Profile
Chris Oliver: RDA: Designed for Current and Future Environments
Swap For Dummies Rsp 2007 11 29
Introduction to Application Profiles
Semantic interoperability courses training module 2 - core vocabularies v0.11
Linked Open Data in the World of Patents
Linked data 20171106
Promoting the re use of open data through ODIP
Repositories thru the looking glass
Linked Data at the OU - the story so far
Notes for talk on 12th June 2013 to Open Innovation meeting, Glasgow
Ad

More from Open Data Support (20)

PDF
Open government data and the psi directive et
PDF
License your data and metadata et
PDF
Introduction to open data quality et
PDF
Designing and developing vocabularies in rdf et
PDF
D2.1.2 training module 2.1 the linked open government data lifecycle v1.00
PPT
Podatki & licenciranje metapodatkov
PPT
Odprti podatki & kakovost metapodatkov
PPT
Uvod v upravljanje z metapodatki
PPT
Odprti podatki javnega sektorja & Direktiva PSI
PDF
Open Data Support - Wie können wir Ihnen helfen?
PDF
Stałe identyfikatory URI – tworzenie i zarządzanie
PDF
Zarządzanie metadanymi – wprowadzenie
PDF
Dane powiązane - wprowadzenie
PDF
atvirų duomenų kokybė
PDF
Įvadas į susietuosius duomenis
PDF
Atviri valdžios duomenys ir vsi direktyva
PDF
Open Data Support onsite training in Latvia (Latvian)
PDF
Open Data Support - bridging open data supply and demand
PPTX
Open data quality
PDF
Open Data Support onsite training in Italy (Italian)
Open government data and the psi directive et
License your data and metadata et
Introduction to open data quality et
Designing and developing vocabularies in rdf et
D2.1.2 training module 2.1 the linked open government data lifecycle v1.00
Podatki & licenciranje metapodatkov
Odprti podatki & kakovost metapodatkov
Uvod v upravljanje z metapodatki
Odprti podatki javnega sektorja & Direktiva PSI
Open Data Support - Wie können wir Ihnen helfen?
Stałe identyfikatory URI – tworzenie i zarządzanie
Zarządzanie metadanymi – wprowadzenie
Dane powiązane - wprowadzenie
atvirų duomenų kokybė
Įvadas į susietuosius duomenis
Atviri valdžios duomenys ir vsi direktyva
Open Data Support onsite training in Latvia (Latvian)
Open Data Support - bridging open data supply and demand
Open data quality
Open Data Support onsite training in Italy (Italian)

Recently uploaded (20)

PDF
Enhancing plagiarism detection using data pre-processing and machine learning...
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PDF
Consumable AI The What, Why & How for Small Teams.pdf
PPTX
Configure Apache Mutual Authentication
PPTX
Training Program for knowledge in solar cell and solar industry
PPTX
Module 1 Introduction to Web Programming .pptx
PDF
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
PDF
Improvisation in detection of pomegranate leaf disease using transfer learni...
PDF
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
PPTX
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
PDF
Advancing precision in air quality forecasting through machine learning integ...
PDF
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
PPTX
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
PPTX
Internet of Everything -Basic concepts details
PPTX
Microsoft User Copilot Training Slide Deck
PDF
NewMind AI Weekly Chronicles – August ’25 Week IV
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PDF
Comparative analysis of machine learning models for fake news detection in so...
PDF
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
DOCX
search engine optimization ppt fir known well about this
Enhancing plagiarism detection using data pre-processing and machine learning...
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
Consumable AI The What, Why & How for Small Teams.pdf
Configure Apache Mutual Authentication
Training Program for knowledge in solar cell and solar industry
Module 1 Introduction to Web Programming .pptx
CXOs-Are-you-still-doing-manual-DevOps-in-the-age-of-AI.pdf
Improvisation in detection of pomegranate leaf disease using transfer learni...
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
GROUP4NURSINGINFORMATICSREPORT-2 PRESENTATION
Advancing precision in air quality forecasting through machine learning integ...
Transform-Your-Supply-Chain-with-AI-Driven-Quality-Engineering.pdf
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
Internet of Everything -Basic concepts details
Microsoft User Copilot Training Slide Deck
NewMind AI Weekly Chronicles – August ’25 Week IV
Convolutional neural network based encoder-decoder for efficient real-time ob...
Comparative analysis of machine learning models for fake news detection in so...
AI.gov: A Trojan Horse in the Age of Artificial Intelligence
search engine optimization ppt fir known well about this

Designing and developing vocabularies in RDF

  • 1. DATA SUPPORT OPEN Training Module 2.4 Designing and developing RDF vocabularies PwC firms help organisations and individuals create the value they’re looking for. We’re a network of firms in 158 countries with close to 180,000 people who are committed to delivering quality in assurance, tax and advisory services. Tell us what matters to you and find out more by visiting us at www.pwc.com. PwC refers to the PwC network and/or one or more of its member firms, each of which is a separate legal entity. Please see www.pwc.com/structure for further details.
  • 2. DATASUPPORTOPEN This presentation has been created by PwC Authors: Nikolaos Loutas, Michiel De Keyzer and Stijn Goedertier Presentation metadata Slide 2 Open Data Support is funded by the European Commission under SMART 2012/0107 ‘Lot 2: Provision of services for the Publication, Access and Reuse of Open Public Data across the European Union, through existing open data portals’(Contract No. 30-CE- 0530965/00-17). © 2014 European Commission Disclaimers 1. The views expressed in this presentation are purely those of the authors and may not, in any circumstances, be interpreted as stating an official position of the European Commission. The European Commission does not guarantee the accuracy of the information included in this presentation, nor does it accept any responsibility for any use thereof. Reference herein to any specific products, specifications, process, or service by trade name, trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation, or favouring by the European Commission. All care has been taken by the author to ensure that s/he has obtained, where necessary, permission to use any parts of manuscripts including illustrations, maps, and graphs, on which intellectual property rights already exist from the titular holder(s) of such rights or from her/his or their legal representative. 2. This presentation has been carefully compiled by PwC, but no representation is made or warranty given (either express or implied) as to the completeness or accuracy of the information it contains. PwC is not liable for the information in this presentation or any decision or consequence based on the use of it.. PwC will not be liable for any damages arising from the use of the information contained in this presentation. The information contained in this presentation is of a general nature and is solely for guidance on matters of general interest. This presentation is not a substitute for professional advice on any particular matter. No reader should act on the basis of any matter contained in this publication without considering appropriate professional advice.
  • 3. DATASUPPORTOPEN Learning objectives By the end of this training module you should have an understanding of: • What the best practices are for creating an RDF vocabulary for modelling your data • Where to find RDF vocabularies for reuse. • How you can create your own RDF vocabulary. • How to publish your RDF vocabulary. • The process and methodology for developing semantic agreements developed by the ISA Programme of the European Commission. Slide 3
  • 4. DATASUPPORTOPEN Content This module is about... • The steps for modelling your data. • How to reuse existing vocabularies to model your data. • How to create new classes and properties in RDF. • How and where to publish your RDF vocabulary so that it can be reused by others. Slide 4
  • 5. DATASUPPORTOPEN RDF Vocabulary Slide 5 “A vocabulary is a data model comprising classes, properties and relationships which can be used for describing your data and metadata.” • RDF Vocabularies are sets of terms used to describe things. • A term is either a class or a property.  Object type properties (relationships)  Data type properties (attributes)
  • 6. DATASUPPORTOPEN What are classes, relationships and properties? Class. A construct that represents things in the real and/or information world, e.g. a person, an organisation, a concepts such as “health” or “freedom”. Relationship. A link between two classes; for the link between a document and the organisation that published it (i.e. organisation publishes document), or the link between a map and the geographic region it depicts (i.e. map depicts geographic region). In RDF relationships are encoded as object type properties. Property. A characteristic of a class in a particular dimension such as the legal name of an organisation or the date and time that an observation was made. Slide 6
  • 7. DATASUPPORTOPEN Examples of classes, relationships and properties Slide 7 http://.../org/217279 8119 site http://example.com/site /1234 RegisteredOrganisation Address Dahliastraat 24, 2160 Wommelgem“Nikè” a a fullAddresslegalName ClassProperty Relationship
  • 8. DATASUPPORTOPEN Model your data How to reuse from other vocabularies, define your own terms and publish and promote your vocabularies to describe the data. Slide 8
  • 9. DATASUPPORTOPEN 6 steps for modelling your data Start with a robust Domain Model developed following a structured process and methodology. Research existing terms and their usage and maximise reuse of those terms. Where new terms can be seen as specialisations of existing terms, create sub class and sub properties. Where new terms are required, create them following commonly agreed best practice. Publish within a highly stable environment designed to be persistent. Publicise the RDF schema by registering it with relevant services. Slide 9 1 See also: https://joinup.ec.europa.eu/community/semic/document/ cookbook-translating-data-models-rdf-schemas 2 3 4 5 6
  • 10. DATASUPPORTOPEN Start with a robust Domain Model Slide 10 1 class Domain Model RegisteredOrganisation - identifier - name - registrationDate - status - type Address - identifier - fullAddress - postcode ContactPoint - identifier - name - telephone - email - fax - website Activity - identifier - name Certificate - identifier - name location organisationCertificate contactInformation organisationActivity
  • 11. DATASUPPORTOPEN Reuse existing terms and vocabularies • General purpose vocabularies: DCMI, RDFS • To name things: rdfs:label, foaf:name, skos:prefLabel • To describe people: FOAF, vCard, Core Person Vocabulary • To describe projects: DOAP, ADMS.SW • To describe interoperability assets: ADMS • To describe registered organisations: Registered Organisation Vocabulary • To describe addresses: vCard, Core Location Vocabulary • To describe public services: Core Public Service Vocabulary • To describe datasets: DCAT, DCAT Application Profile, VoID Slide 11 2
  • 12. DATASUPPORTOPEN Creating application profiles • Different domains have different requirements for domain-specific semantics, e.g. classification concepts. • Generic RDF vocabularies usually provides the core base classes needed to allow extensions to add specific sub-class structures or classification schemes as required. • In such cases, reusers are encouraged to define application profiles particular to an application domain by specifying (if required) sub- classes, sub-properties and controlled vocabularies. • For example,  DCAT Application profile for data portals in Europe  Registered Organization vocabulary as an application profile of the Organization ontology. Slide 12 See also: joinup.ec.europa.eu/asset/dcat_application_profile/home
  • 13. DATASUPPORTOPEN Advantages of reuse • Reuse greatly aids interoperability of your data  Use of dcterms:created, for example, the value for which should be a data typed date such as 2013-02-21^^xsd:date, is immediately processable by many machines. If your schema encourages data publishers to use a different term and date format, such as ex:date "21 February 2013" – data published using your schema will require further processing to make it the same as everyone else's. • Reuse adds credibility to your schema.  It shows it has been published with care and professionalism, again, this promotes its reuse. • Reuse is easier and cheaper.  Reusing classes and properties from well defined and properly hosted vocabularies avoids your having to replicate that effort. Slide 13
  • 14. DATASUPPORTOPEN You can find reusable RDF vocabularies on... Slide 14 http://joinup.ec.europa.eu/ http://lov.okfn.org/
  • 15. DATASUPPORTOPEN Creation of sub-classes and sub-properties • RDF schemas and vocabularies often include terms that are very generic. • By creating sub-class and sub-property relationships, systems that understand the super property or super class may be able to interpret the data even if the more specific terms are unknown. • Do not create sub-classes and sub-properties simply to allow you to use your own term for something that already exists. Slide 15 3
  • 16. DATASUPPORTOPEN Creation of sub-properties - example The Registered Organization vocabulary defines three sub-properties of org:classification: companyType, companyStatus and companyActivity. Slide 16
  • 17. DATASUPPORTOPEN Defining a sub-property in RDF <rdf:Property rdf:about="rov:companyType"> <rdfs:label xml:lang="en">company type</rdfs:label> <rdfs:comment xml:lang="en" rdf:parseType="Literal"> This property records the type of company. Familiar types are SA, PLC, LLC, GmbH etc. Each jurisdiction will have a limited set of recognised company types and these should be used in a consistent manner using a skos:Concept as described in the <a href="#skos:Concept">Code</a> Class. </rdfs:comment> <rdfs:isDefinedBy rdf:resource="http://www.w3.org/ns/regorg#"/> <rdfs:range rdf:resource="skos:Concept"/> <rdfs:subPropertyOf rdf:resource="org:classification" /> <dcterms:identifier>legal:companyType</dcterms:identifier> </rdf:Property> Slide 17
  • 18. DATASUPPORTOPEN Where new terms are required, create them following commonly agreed best practices  Classes begin with a capital letter and are always singular, e.g. skos:Concept.  Properties begin with a lower case letter, e.g. rdfs:label.  Object properties should be verbs, e.g. org:hasSite.  Data type properties should be nouns, e.g. dcterms:description.  Use camel case if a term has more than one word, e.g. foaf:isPrimaryTopicOf. Slide 18 4
  • 19. DATASUPPORTOPEN Defining a new class - Organisation <rdf:RDF xmlns:rdfs=“http://www.w3.org/2000/01/rdf-schema#” xmlns:org=“htpp://example.org/organisation-schema”> <rdf:Class rdf:about=“org:Organisation"> <rdfs:label xml:lang="en">Organisation</rdfs:label> <rdfs:comment xml:lang:”en”> Legal entity that is registered in an official national or regional register. </rdfs:comment> </rdf:Class> Slide 19
  • 20. DATASUPPORTOPEN Defining a new property - registrationNumber <rdf:RDF xmlns:rdfs=“http://www.w3.org/2000/01/rdf-schema#” xmlns:org=“htpp://example.org/organisation-schema”> <rdf:Property rdf:about=“org:registrationNumber"> <rdfs:label xml:lang="en">registrationNumber</rdfs:label> <rdfs:comment xml:lang:”en”> The number that a registered organisation receives upon registration in the official register. </rdfs:comment> </rdf:Class> Slide 20
  • 21. DATASUPPORTOPEN Defining domain and range restrictions <rdf:RDF xmlns:rdfs=“http://www.w3.org/2000/01/rdf-schema#” xmlns:org=“htpp://example.org/organisation-schema” xmlns:locn=“http://www.w3.org/ns/locn#”> <rdf:Property rdf:about=“org:isLocated"> <rdfs:label xml:lang="en">isLocated</rdfs:label> <rdfs:comment xml:lang:”en”> The official address of the registered organisation’s headquarters. </rdfs:comment> <rdfs:domain rdf:resource=“org:Organisation”/> <rdfs:range rdf:resource=“locn:Address”> </rdf:Class> Slide 21 http://example.org/org/1234 org:isLocated http://dbpedia.org/page/Brussels
  • 22. DATASUPPORTOPEN Publish within a highly stable environment designed to be persistent • Choose a stable namespace for your RDF schema (e.g. W3C, Purl...) • Use good practices on the publication of persistent Uniform Resource Identifiers (URI) sets, both in terms of format and of their design rules and management. • Examples:  http://www.w3.org/ns/adms  http://purl.org/dc/elements/1.1 Slide 22 5 See also: https://joinup.ec.europa.eu/community/semic/document/cookbook-translating- data-models-rdf-schemas http://www.slideshare.net/OpenDataSupport/design-and-manage-persitent-uris
  • 23. DATASUPPORTOPEN Publicise the RDF schema by registering it with relevant services Once your RDF schema is published you will want people to know about it. To reach a wider audience register it Joinup and Linked Open Vocabularies. Slide 23 6 Refinethesearch results via the facetedsearch filters. 2 1 3 http://joinup.ec.europa.eu http://lov.okfn.org
  • 24. DATASUPPORTOPEN Conclusions Slide 24 Start with a robust Domain Model developed following a structured process and methodology. Research existing terms and their usage and maximise reuse of those terms. Where new terms can be seen as specialisations of existing terms, create sub class and sub properties as appropriate. Where new terms are required, create them following commonly agreed best practice in terms of naming conventions etc Publish within a highly stable environment designed to be persistent. Publicise the RDF schema by registering it with relevant services. Analyse Model Publish
  • 25. DATASUPPORTOPEN Group exercise Slide 25 In groups of 2, create the RDF description of a vocabulary for representing a citizen. According to you, what are the main barriers to the reuse of existing RDF vocabularies? http://www.visualpharm.com http://www.visualpharm.com Take also the online test here!
  • 26. DATASUPPORTOPEN Thank you! ...and now YOUR questions? Slide 26
  • 27. DATASUPPORTOPEN References Slides 9: • Linked Data Cookbook. W3C. http://www.w3.org/2011/gld/wiki/Linked_Data_Cookbook Slide 10-23: • ISA Programme. Cookbook for translating Data Models to RDF Schemas. https://joinup.ec.europa.eu/community/semic/document/cookbook-translating- data-models-rdf-schemas Slide 16, 18,-21: • W3C. An organization ontology. http://www.w3.org/TR/vocab-org/ Slide 23: • ADMS Brochure. ISA Programme. https://joinup.ec.europa.eu/elibrary/document/adms-brochure Slide 27
  • 28. DATASUPPORTOPEN Further reading Linked Data Cookbook, W3C Government Linked Data Working Group, http://www.w3.org/2011/gld/wiki/Linked_Data_Cookbook EC, ISA Process and methodology for developing semantic agreements, https://joinup.ec.europa.eu/community/core_vocabularies/documen t/process-and-methodology-developing-semantic-agreements EC ISA, Cookbook for translating Data Models to RDF Schemas https://joinup.ec.europa.eu/community/semic/document/cookbook- translating-data-models-rdf-schemas Slide 28
  • 29. DATASUPPORTOPEN Related projects and initiatives Joinup, http://joinup.ec.europa.eu Linked Open Vocabularies (LOV), http://lov.okfn.org/ EC ISA, e-Government Core Vocabularies, https://joinup.ec.europa.eu/community/core_vocabularies/home W3C Schools – Learn RDF http://www.w3schools.com/rdf/default.asp EUCLID, http://euclid-project.eu/ XML Summer School http://xmlsummerschool.com/ Slide 29
  • 30. DATASUPPORTOPEN Be part of our team... Find us on Contact us Join us on Follow us Open Data Support http://www.slideshare.net/OpenDataSupport http://www.opendatasupport.euOpen Data Support http://goo.gl/y9ZZI @OpenDataSupport [email protected] Slide 30