PowerPoint Template
Download
Report
Transcript PowerPoint Template
Linked Open Vocabularies – the vision and the reality
Pierre-Yves Vandenbussche
Lead Researcher
Fujitsu Ireland
0
© FUJITSU LIMITED 2014
Linked Open Data / Linked Open Vocabularies
1
© FUJITSU LIMITED 2014
Linked Open Data
Focus is on linking instances
Direct benefit for end applications
(data mashup, knowledge graph, etc.)
Link type
owl:sameAs (23.000k)
skos:closeMatch (380k)
skos:exactMatch (150k)
skos:relatedMatch (125k)
skos:broadMatch (7k)
skos:narrowMatch (1k)
Source: http://stats.lod2.eu/
Source: http://lod-cloud.net
2
© FUJITSU LIMITED 2014
Linked Open Vocabularies
Focus is on linking schema elements
Facilitates data linkage
Enables multi vocabularies
ontology design
Link type (% of vocabularies in LOV
with this relationship)
voaf:metadataVoc (87%)
voaf:specializes (55%)
voaf:extends (51%)
voaf:hasEquivalences With (15%)
voaf:generalizes (6%)
voaf:hasDisjunctionsWith (3%)
3
© FUJITSU LIMITED 2014
Towards a Linked Open Vocabularies ecosystem
4
© FUJITSU LIMITED 2014
Towards a Linked Open Vocabularies ecosystem
History
Started 2011-Q1 (Initially a deliverable of Datalift project :
http://datalift.org)
2012 : Growing interest beyond the initial scope
Migration to OKFN since July 2012 : http://lov.okfn.org
Status as of June 2014
440 vocabularies and counting
429 agents involved (342 foaf:Person and 87 foaf:Organization)
Continuous feedback from the community (subscribe to the Google+
community)
5
© FUJITSU LIMITED 2014
Towards a Linked Open Vocabularies ecosystem
LOV Home : http://lov.okfn.org
LOV-Search : http://lov.okfn.org/dataset/lov/search/
LOV-Suggest : http://lov.okfn.org/dataset/lov/suggest/
LOV-Stats : http://lov.okfn.org/dataset/lov/stats/
LOV-API : http://lov.okfn.org/dataset/lov/apidoc/
LOV-Bot : Daily or on-demand scan of vocabularies
LOV-Edit : Administration and curation back-office
SPARQL endpoint(s) / Dump
Endpoint: http://lov.okfn.org/endpoint/lov_aggregator
Nquads: http://lov.okfn.org/dataset/lov/agg/lov_aggregator.nq.zip
6
© FUJITSU LIMITED 2014
Towards a Linked Open Vocabularies ecosystem
Rich metadata
Usage in linked data
Relations
with other
vocabularies
Versions and timeline
Source: http://lov.okfn.org/dataset/lov/details/vocabulary_org.html
7
© FUJITSU LIMITED 2014
Typology of vocabulary linkage
8
© FUJITSU LIMITED 2014
Before linking your vocabularies
Pros
Maximising the probability that data can be consumed by applications
without requiring further pre-processing of the data or modification of the
application
Facilitating the creation of links between different datasets entities using
same or related types/properties.
Easing data understanding by linking to already well known vocabularies
Cons
Meaning Dependency to external specifications beyond our control and
with unknown futures.
Meaningfulness of linkage between two models with different intentions
9
© FUJITSU LIMITED 2014
Vocabulary linkage
voaf:metadataVoc
metadata vocabulary - Indicates that the subject vocabulary
uses the object vocabulary in metadata at vocabulary or
element level
CONSTRUCT{
?vocab1 voaf:metadataVoc ?vocab2
}
WHERE{
?elem1 ?elem2 ?o.
?elem1 rdfs:isDefinedBy ?vocab1.
?vocab1 a voaf:Vocabulary.
?elem2 rdfs:isDefinedBy ?vocab2.
?vocab2 a voaf:Vocabulary.
FILTER(?vocab1!=?vocab2)
}
<http://purl.org/vocommons/voaf> dc:modified “2013-05-24”^^xsd:Date
Source: http://lov.okfn.org/vocab/voaf/
10
© FUJITSU LIMITED 2014
Vocabulary linkage
voaf:extends
extends - Indicates that the subject vocabulary extends the expressivity of the object
vocabulary by declaring subsumption relationships, using object vocabulary class as
domain or range of a subject vocabulary property, defining local restrictions etc ...
CONSTRUCT{
?vocab1 voaf:extends ?vocab2
}
WHERE{
{?elem1 owl:inverseOf ?elem2. FILTER(!isBlank(?elem2))}
UNION{?elem1 rdfs:domain ?elem2. FILTER(!isBlank(?elem2))}
UNION{?elem1 rdfs:range ?elem2. FILTER(!isBlank(?elem2))}
?elem1 rdfs:isDefinedBy ?vocab1.
?vocab1 a voaf:Vocabulary.
?elem2 rdfs:isDefinedBy ?vocab2.
?vocab2 a voaf:Vocabulary.
FILTER(?vocab1!=?vocab2)
}
mo:biography rdfs:range foaf:Document
11
© FUJITSU LIMITED 2014
Vocabulary linkage
voaf:specializes
specializes - Indicates that the subject vocabulary defines some subclasses or
subproperties of the object vocabulary, or local restrictions on those.
CONSTRUCT{
?vocab1 voaf:specializes ?vocab2
}
WHERE{
{?elem1 rdfs:subPropertyOf ?elem2. FILTER(!isBlank(?elem2))}
UNION{?elem1 rdfs:subClassOf ?elem2. FILTER(!isBlank(?elem2))}
UNION{?elem1 skos:broadMatch ?elem2. FILTER(!isBlank(?elem2))}
?elem1 rdfs:isDefinedBy ?vocab1.
?vocab1 a voaf:Vocabulary.
?elem2 rdfs:isDefinedBy ?vocab2.
?vocab2 a voaf:Vocabulary.
FILTER(?vocab1!=?vocab2)
}
cgov:fullTimeEquivalentSalary rdfs:subPropertyOf org:remuneration
12
© FUJITSU LIMITED 2014
Vocabulary linkage
voaf:generalizes
generalizes - Indicates that the subject vocabulary generalizes by some
superclasses or superproperties the object vocabulary.
CONSTRUCT{
?vocab1 voaf:generalizes ?vocab2
}
WHERE{
{?elem1 skos:narrowMatch ?elem2. FILTER(!isBlank(?elem2))}
UNION{?elem2 rdfs:subPropertyOf ?elem1.}
UNION{?elem1 a owl:Class. ?elem1 owl:unionOf ?union. ?union
rdf:first ?elem2.}
UNION{ […]}
FILTER(!isBlank(?elem2))
?elem1 rdfs:isDefinedBy ?vocab1.
?vocab1 a voaf:Vocabulary.
?elem2 rdfs:isDefinedBy ?vocab2.
?vocab2 a voaf:Vocabulary.
FILTER(?vocab1!=?vocab2)
}
ldr:RightsExpression skos:narrowMatch cc:License
13
© FUJITSU LIMITED 2014
How to link two vocabularies
voaf:hasEquivalencesWith
has equivalences with - Indicates that the subject vocabulary declares some
equivalent classes or properties with the object vocabulary.
CONSTRUCT{
?vocab1 voaf:hasEquivalencesWith ?vocab2
}
WHERE{
{?elem1 owl:equivalentProperty ?elem2.}
UNION{?elem1 owl:sameAs ?elem2.}
UNION{?elem1 owl:equivalentClass ?elem2.}
UNION{?elem2 owl:equivalentProperty ?elem1.}
UNION{?elem2 owl:equivalentClass ?elem1.}
UNION{?elem1 skos:exactMatch ?elem2.}
UNION{?elem2 skos:exactMatch ?elem1.} FILTER(!isBlank(?elem2))
?elem1 rdfs:isDefinedBy ?vocab1.
?vocab1 a voaf:Vocabulary.
?elem2 rdfs:isDefinedBy ?vocab2.
?vocab2 a voaf:Vocabulary.
FILTER(?vocab1!=?vocab2)
}
bio:child owl:equivalentProperty rel:parentOf
14
© FUJITSU LIMITED 2014
Vocabulary linkage
voaf:hasDisjunctionsWith
has disjunctions with - Indicates that the subject vocabulary declares some disjoint
classes with the object vocabulary.
CONSTRUCT{
?vocab1 voaf:hasDisjunctionsWith ?vocab2
}
WHERE{
?elem1 owl:disjointWith ?elem2. FILTER(!isBlank(?elem2))
?elem1 rdfs:isDefinedBy ?vocab1.
?vocab1 a voaf:Vocabulary.
?elem2 rdfs:isDefinedBy ?vocab2.
?vocab2 a voaf:Vocabulary.
FILTER(?vocab1!=?vocab2)
}
skosxl:Label owl:disjointWith skos:Concept
15
© FUJITSU LIMITED 2014
Discussion
Maintenance cost of links in a distributed system
Sync with new version in external vocabularies
Find existing vocabularies / concept schemes
Map vocabularies
Handle language heterogeneity
16
© FUJITSU LIMITED 2014
17
© FUJITSU LIMITED 2014