SPARQL UPDATE queries add standard vocabulary properties alongside existing custom predicates: schema:Person/Place/Organization types, schema:givenName/familyName/birthDate, owl:sameAs for authority links, wgs84:lat/long for coordinates, skos:Concept/prefLabel for enumerations, and rdfs:label for persons.
46 lines
1.3 KiB
SPARQL
46 lines
1.3 KiB
SPARQL
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
|
|
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
|
|
PREFIX owl: <http://www.w3.org/2002/07/owl#>
|
|
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
|
|
PREFIX schema: <https://schema.org/>
|
|
PREFIX wgs84: <http://www.w3.org/2003/01/geo/wgs84_pos#>
|
|
PREFIX wdtn: <http://www.wikidata.org/prop/direct-normalized/>
|
|
PREFIX migrants: <http://example.org/migrants/>
|
|
PREFIX person: <http://example.org/migrants/person/>
|
|
PREFIX personp: <http://example.org/migrants/person#>
|
|
PREFIX work: <http://example.org/migrants/work/>
|
|
PREFIX workp: <http://example.org/migrants/work#>
|
|
PREFIX location: <http://example.org/migrants/location/>
|
|
PREFIX locationp: <http://example.org/migrants/location#>
|
|
|
|
CONSTRUCT {
|
|
?s ?p ?o .
|
|
}
|
|
WHERE {
|
|
{
|
|
# Hop 0: Triples about Irene Abendroth (as subject)
|
|
?s ?p ?o .
|
|
FILTER(?s = person:AbeIre-00)
|
|
}
|
|
UNION
|
|
{
|
|
# Hop 1 (incoming): Triples about nodes referencing the anchor
|
|
?s ?p ?o .
|
|
?s ?ref person:AbeIre-00 .
|
|
}
|
|
UNION
|
|
{
|
|
# Hop 1 (outgoing): Triples about IRI nodes referenced by the anchor
|
|
?s ?p ?o .
|
|
person:AbeIre-00 ?ref ?s .
|
|
FILTER(isIRI(?s))
|
|
}
|
|
UNION
|
|
{
|
|
# Hop 2: Triples about IRI nodes referenced by hop-1 nodes
|
|
?s ?p ?o .
|
|
?hop1 ?r1 person:AbeIre-00 .
|
|
?hop1 ?r2 ?s .
|
|
FILTER(isIRI(?s) && ?s != person:AbeIre-00)
|
|
}
|
|
}
|