Запрос Sparql с uri

У меня есть структура rdf, как это

<owl:Thing rdf:about="http://hust.se.vtio.owl#atm-techcombank-127-pho-minh-khai-hai-ba-trung-ha-noi">
<rdf:type rdf:resource="http://hust.se.vtio.owl#ATM"/>
<rdfs:label xml:lang="vn"><![CDATA[ATM - Techcombank]]></rdfs:label>
<rdfs:label xml:lang="en"><![CDATA[ATM - Techcombank]]></rdfs:label>
<hasLatitude rdf:datatype="&xsd;double">20.9954529</hasLatitude>
<hasLongtitude rdf:datatype="&xsd;double">105.8546176</hasLongtitude>
<hasGeoPoint rdf:datatype="http://franz.com/ns/allegrograph/3.0/geospatial/spherical/degrees/-180.0/180.0/-90.0/90.0/5.0">+20.9954529+105.8546176</hasGeoPoint>
<hasLocation rdf:resource="http://hust.se.vtio.owl#atm-techcombank-127-pho-minh-khai-hai-ba-trung-ha-noi-address"/>
<belongToBank rdf:resource="http://hust.se.vtio.owl#techcombank"/>
<hasMedia rdf:resource="http://hust.se.vtio.owl#atm-techcombank-127-pho-minh-khai-hai-ba-trung-ha-noi-images"/>

How can I get label and Latitude... by sparql when I know uri :

http://hust.se.vtio.owl#atm-techcombank-127-pho-minh-khai-hai-ba-trung-ha-noi

person abent    schedule 06.04.2015    source источник


Ответы (1)


Это зависит от того, как вы определили онтологию. Например, давайте представим, что вы определили что-то вроде x subClassOf: hasLatitude value 20.9954529, тогда вы можете задать запрос, аналогичный приведенному ниже:

prefix :<http://hust.se.vtio.owl#>
SELECT  *
    WHERE { ?s rdfs:label ?label.
            ?s rdfs:subClassOf  ?o.
            ?o owl:onProperty :hasLatitude.
            ?o ?x ?y.
 }

Вы можете отфильтровать ?s, чтобы получить ответы только для atm-techcombank-127-pho-minh-khai-hai-ba-trung-ha-noi. Например, filter (?s=:atm-techcombank-127-pho-minh-khai-hai-ba-trung-ha-noi).

person Artemis    schedule 06.04.2015