I'm hoping someone on this list has the quick answer that will end my
frustration ;-).
I loaded some BIBFRAME records into Protege (desktop, 5.0, because
earlier versions have problems in the RDF->OWL transform). I have this data:
_:genid4 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://bibframe.org/vocab/Provider> .
_:genid5 <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://bibframe.org/vocab/Organization> .
_:genid5 <http://bibframe.org/vocab/label> "Morrow" .
_:genid4 <http://bibframe.org/vocab/providerName> _:genid5 .
<http://bibframe.org/resources/Ahx1405278232/566369instance27>
<http://bibframe.org/vocab/publication> _:genid4
[more readable version]
:instance27 bf:publication _:genid4 .
_:genid4 bf:providerName _:genid5 .
_:genid5 bf:label "Morrow" .
I want to create a SPARQL query that will select the labels for
bf:providerName. I thought it would be:
SELECT ?subject ?label
WHERE { ?subject bf:providerName ?bnode .
?bnode bf:label ?label . }
But it turns out that this doesn't work. As I understand it, it is
because blank nodes are "unnamed" and therefore do not identify a
particular entity, and cannot be used more than once in a query. See: [1][2]
I've hit a dead-end, but surely there is a solution -- possibly right in
front of me but I'm not seeing it.
Thanks,
kc
[1]
http://answers.semanticweb.com/questions/1673/skolem-syntax-for-blank-nodes-in-sparql
[2]
http://stackoverflow.com/questions/20629437/sparql-query-with-blank-node-can-be-complex
--
Karen Coyle
[log in to unmask] http://kcoyle.net
m: 1-510-435-8234
skype: kcoylenet
|