Hello,

i am running Virtuoso 6.1.1 and experience some unexpected behaviour of
a query containing a isUri Filter in combination with 2 triple
patterns. when i query with this:

SELECT DISTINCT ?resourceUri 
FROM <http://purl.org/net/faunistics#> 
WHERE { 
?resourceUri <http://purl.org/net/faunistics#recordedAtLocation>
<http://db.caucasus-spiders.info/Place/152> . 
?resourceUri <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://purl.org/net/faunistics#CitedRecord> 
FILTER (isURI(?resourceUri) && !isBLANK(?resourceUri)) 
} 

on that minimal model:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE ns3:RDF [
  <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#";>
  <!ENTITY dc "http://purl.org/dc/elements/1.1/";>
  <!ENTITY ns0 "http://purl.org/net/faunistics#";>
  <!ENTITY ns1 "http://www.mindswap.org/2003/owl/geo/geoFeatures.owl#";>
  <!ENTITY geo "http://www.w3.org/2003/01/geo/wgs84_pos#";>
  <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#";>
  <!ENTITY ns2 "http://purl.org/net/faunistics#ObjectProperty/";>
]>
<ns3:RDF xml:base="&ns0;"
  xmlns:rdfs="&rdfs;"
  xmlns:dc="&dc;"
  xmlns:ns0="&ns0;"
  xmlns:ns1="&ns1;"
  xmlns:geo="&geo;"
  xmlns:xsd="&xsd;"
  xmlns:ns2="&ns0;ObjectProperty/"
  xmlns:ns3="http://www.w3.org/1999/02/22-rdf-syntax-ns#";>
  <ns0:CitedRecord ns3:about="http://db.caucasus-spiders.info/record/10488";
    rdfs:label="10488: Hilaira frigida">
    <ns0:recordedAtLocation 
ns3:resource="http://db.caucasus-spiders.info/Place/152"; />
    <ns0:identifiesAs 
ns3:resource="http://db.caucasus-spiders.info/species/884"; />
    <ns0:citedIn ns3:resource="http://db.caucasus-spiders.info/Publication/8"; />
    <ns0:publishedIn 
ns3:resource="http://db.caucasus-spiders.info/Publication/79"; />
  </ns0:CitedRecord>
</ns3:RDF>

the result is empty (which i can not understand intuitively), but if i remove 
the isUri-Filter, the result comes
as wanted (but that are all URIs). so why does the isUri filter eliminate URIs?
Can somebody help me?

Regards
Jonas Brekle




Reply via email to