Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
763 views
in Technique[技术] by (71.8m points)

rdf - SPARQL Query: How I get only a literal or string as result?

Data:

<untitled-ontology-5:OperationName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">
  Adhesive Curing
</untitled-ontology-5:OperationName>

SPARQL Query:

PREFIX rdf:<http://wwww.semanticweb.org/ontologies/2012/7/9/untitled-ontology-5#>
SELECT ?object
WHERE { ?subject  rdf:OperationName ?object .       
}

Result:

Adhesive Curing^^http://www.w3.org/2001/XMLSchema#string 

My Question:

The result of the SPARQL Query is not the result what I wanted. The right result should contain only the Literal/String without the URI-part. I'd like to create the following result:

Proper Result:

Adhesive Curing
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You need to use the STR() function to retrieve the lexical label of your literal:

Query:

SELECT (str(?object) as ?label) 
WHERE { ?subject rdf:OperationName ?object . }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...