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