vivo/productMods/WEB-INF/ontologies/update15to16/sparqlConstructs/additions/vcard1-0.sparql

30 lines
1.1 KiB
SPARQL
Raw Normal View History

PREFIX arg: <http://purl.obolibrary.org/obo/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX v: <http://www.w3.org/2006/vcard/ns#>
PREFIX vivo: <http://vivoweb.org/ontology/core#>
PREFIX bibo: <http://purl.org/ontology/bibo/>
CONSTRUCT {
?s arg:ARG_2000028 _:vcard .
_:vcard arg:ARG_2000029 ?s .
_:vcard a v:Individual .
} WHERE {
?s a foaf:Person
FILTER (
EXISTS { ?s foaf:firstName ?firstName } ||
EXISTS { ?s foaf:lastName ?lastName } ||
EXISTS { ?s vivo:middleName ?middleName } ||
EXISTS { ?s vivo:email ?email } ||
EXISTS { ?s vivo:primaryEmail ?primaryEmail } ||
EXISTS { ?s vivo:phoneNumber ?phoneNumber } ||
EXISTS { ?s vivo:primaryPhoneNumber ?primaryPhoneNumber } ||
EXISTS { ?s vivo:faxNumber ?faxNumber } ||
EXISTS { ?s vivo:mailingAddress ?address } ||
EXISTS { ?s vivo:webpage ?webpage } ||
EXISTS { ?s vivo:preferredTitle ?preferredTitle } ||
EXISTS { ?s bibo:prefixName ?prefixName } ||
EXISTS { ?s bibo:suffixName ?suffixName }
)
FILTER NOT EXISTS { ?s arg:ARG_2000028 ?vcardNode }
}