VCard migration

This commit is contained in:
brianjlowe 2013-09-06 16:41:15 -04:00
parent 5d2e44c08f
commit 1c60c24002
12 changed files with 253 additions and 83 deletions

View file

@ -1,83 +0,0 @@
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#> .
CONSTRUCT {
?s arg:ARG_2000028 _:vcard .
_:vcard arg:ARG_2000029 ?s .
_:vcard a v:Individual .
_:vcard v:hasName _:name .
_:name a v:Name .
_:name v:givenName ?firstName .
_:name vivo:middleName ?middleName .
_:name v:familyName ?lastName .
_:name v:hasEmail _:email .
_:email a v:Email .
_:email v:email ?email .
_:name v:hasEmail _:primaryEmail .
_:primaryEmail a v:Email .
_:primaryEmail a v:Work .
_:primaryEmail v:email ?primaryEmail .
_:name v:hasTelephone _:telephone .
_:telephone a v:Telephone .
_:telephone a v:Voice .
_:telephone v:telephone ?phoneNumber .
_:name v:hasTelephone _:primaryTelephone .
_:primaryTelephone a v:Telephone .
_:primaryTelephone a v:Voice .
_:primaryTelephone a v:Work .
_:primaryTelephone v:telephone ?primaryPhoneNumber .
_:name v:hasTelephone _:fax .
_:fax a v:Telephone .
_:fax a v:Fax.
_:fax v:telephone ?faxNumber .
_:name v:hasAddress _:address .
_:address v:streetAddress ?
} WHERE {
?s a foaf:Person
{
?s foaf:firstName ?firstName .
} UNION {
?s foaf:lastName ?lastName .
} UNION {
?s vivo:middleName ?middleName
} UNION {
?s vivo:email ?email
} UNION {
?s vivo:primaryEmail ?primaryEmail
} UNION {
?s vivo:phoneNumber ?phoneNumber
} UNION {
?s vivo:primaryPhoneNumber ?primaryPhoneNumber
} UNION {
?s vivo:faxNumber ?faxNumber
} UNION {
?s vivo:mailingAddress ?address .
?address vivo:addressCity ?addressCity .
?address vivo:addressState ?addressState .
?address vivo:addressCountry ?addressCountry .
?address vivo:addressPostalCode ?addressPostalCode .
?address vivo:address1 ?address1 .
BIND (?address1 AS ?streetAddress)
} UNION {
?s vivo:mailingAddress ?address .
?address vivo:addressCity ?addressCity .
?address vivo:addressState ?addressState .
?address vivo:addressCountry ?addressCountry .
?address vivo:addressPostalCode ?addressPostalCode .
?address vivo:address1 ?address1 .
?address vivo:address2 ?address2 .
BIND (CONCAT(?address1, ", ", ?address2) AS ?streetAddress)
} UNION {
?s vivo:mailingAddress ?address .
?address vivo:addressCity ?addressCity .
?address vivo:addressState ?addressState .
?address vivo:addressCountry ?addressCountry .
?address vivo:addressPostalCode ?addressPostalCode .
?address vivo:address1 ?address1 .
?address vivo:address2 ?address2 .
?address vivo:address3 ?address3 .
BIND (CONCAT(?address1, ", ", ?address2, ", ", ?address3) AS ?streetAddress)
}
}

View file

@ -0,0 +1,20 @@
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#>
CONSTRUCT {
?s arg:ARG_2000028 _:vcard .
_:vcard arg:ARG_2000029 ?s .
_:vcard a v:Organization .
} WHERE {
?s a foaf:Organization
FILTER (
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 }
)
}

View file

@ -0,0 +1,20 @@
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#>
CONSTRUCT {
?s arg:ARG_2000028 _:vcard .
_:vcard arg:ARG_2000029 ?s .
_:vcard a v:Group .
} WHERE {
?s a foaf:Group
FILTER (
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 }
)
}

View file

@ -0,0 +1,23 @@
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#>
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 }
)
}

View file

@ -0,0 +1,27 @@
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#>
CONSTRUCT {
?vcard v:hasName _:name .
_:name a v:Name .
_:name v:givenName ?firstName .
_:name vivo:middleName ?middleName .
_:name v:familyName ?lastName .
} WHERE {
?s arg:ARG_2000028 ?vcard .
OPTIONAL {
?s foaf:firstName ?firstName .
BIND("yes" as ?test)
}
OPTIONAL {
?s foaf:lastName ?lastName .
BIND("yes" as ?test)
}
OPTIONAL {
?s vivo:middleName ?middleName
BIND("yes" as ?test)
}
FILTER(bound(?test))
}

View file

@ -0,0 +1,13 @@
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#>
CONSTRUCT {
?vcard v:hasEmail _:email .
_:email a v:Email .
_:email v:email ?email .
} WHERE {
?s arg:ARG_2000028 ?vcard .
?s vivo:email ?email
}

View file

@ -0,0 +1,14 @@
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#>
CONSTRUCT {
?vcard v:hasEmail _:primaryEmail .
_:primaryEmail a v:Email .
_:primaryEmail a v:Work .
_:primaryEmail v:email ?primaryEmail .
} WHERE {
?s arg:ARG_2000028 ?vcard .
?s vivo:primaryEmail ?primaryEmail
}

View file

@ -0,0 +1,14 @@
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#>
CONSTRUCT {
?vcard v:hasTelephone _:telephone .
_:telephone a v:Telephone .
_:telephone a v:Voice .
_:telephone v:telephone ?phoneNumber .
} WHERE {
?s arg:ARG_2000028 ?vcard .
?s vivo:phoneNumber ?phoneNumber
}

View file

@ -0,0 +1,21 @@
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#>
CONSTRUCT {
?vcard v:hasTelephone _:primaryTelephone .
_:primaryTelephone a v:Telephone .
_:primaryTelephone a v:Voice .
_:primaryTelephone a v:Work .
_:primaryTelephone v:telephone ?primaryPhoneNumber .
_:name v:hasTelephone _:fax .
_:fax a v:Telephone .
_:fax a v:Fax.
_:fax v:telephone ?faxNumber .
_:name v:hasAddress _:address .
_:address v:streetAddress ?streetAddress .
} WHERE {
?s arg:ARG_2000028 ?vcard .
?s vivo:primaryPhoneNumber ?primaryPhoneNumber
}

View file

@ -0,0 +1,16 @@
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#>
CONSTRUCT {
?vcard v:hasTelephone _:fax .
_:fax a v:Telephone .
_:fax a v:Fax.
_:fax v:telephone ?faxNumber .
_:name v:hasAddress _:address .
_:address v:streetAddress ?streetAddress .
} WHERE {
?s arg:ARG_2000028 ?vcard .
?s vivo:faxNumber ?faxNumber
}

View file

@ -0,0 +1,37 @@
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#>
CONSTRUCT {
?vcard v:hasAddress _:address .
_:address a v:Address .
_:address v:streetAddress ?streetAddress .
_:address v:locality ?addressCity .
_:address v:region ?addressState .
_:address v:postalCode ?addressPostalCode .
_:address v:country ?addressCountry .
} WHERE {
?s arg:ARG_2000028 ?vcard .
?s vivo:mailingAddress ?address .
?address vivo:addressCity ?addressCity .
?address vivo:addressState ?addressState .
?address vivo:addressCountry ?addressCountry .
?address vivo:addressPostalCode ?addressPostalCode .
OPTIONAL {
?address vivo:address1 ?address1 .
?address vivo:address2 ?address2 .
?address vivo:address3 ?address3 .
BIND (CONCAT(?address1, ", ", ?address2, ", ", ?address3) AS ?streetAddress)
}
OPTIONAL {
?address vivo:address1 ?address1 .
?address vivo:address2 ?address2 .
FILTER NOT EXISTS { ?address vivo:address3 ?address3 }
BIND (CONCAT(?address1, ", ", ?address2) AS ?streetAddress)
}
OPTIONAL {
?address vivo:address1 ?address1
BIND(?address1 as ?streetAddress)
}
}

View file

@ -0,0 +1,48 @@
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#>
CONSTRUCT {
?s foaf:firstName ?firstName .
?s foaf:lastName ?lastName .
?s vivo:middleName ?middleName .
?s vivo:email ?email .
?s vivo:primaryEmail ?primaryEmail .
?s vivo:phoneNumber ?phoneNumber .
?s vivo:primaryPhoneNumber ?primaryPhoneNumber .
?s vivo:faxNumber ?faxNumber .
?s vivo:mailingAddress ?address .
?address ?addressP ?addressO .
} WHERE {
?s a foaf:Agent
OPTIONAL {
?s foaf:firstName ?firstName .
}
OPTIONAL {
?s foaf:lastName ?lastName .
}
OPTIONAL {
?s vivo:middleName ?middleName
}
OPTIONAL {
?s vivo:email ?email
}
OPTIONAL {
?s vivo:primaryEmail ?primaryEmail
}
OPTIONAL {
?s vivo:phoneNumber ?phoneNumber
}
OPTIONAL {
?s vivo:primaryPhoneNumber ?primaryPhoneNumber
}
OPTIONAL {
?s vivo:faxNumber ?faxNumber
} OPTIONAL {
?s vivo:mailingAddress ?address .
OPTIONAL {
?address ?addressP ?addressO
}
}
}