Dear List,
just ran into an issue with the following filter returning *no* match,
despite the respective elements happily living on the Graph tree.
FILTER ( xsd:dateTime(?Start) < xsd:dateTime(?End) )
Here come the samples:
*Query* (omitted the prefixes, since these obviously work as desired…)
CONSTRUCT {
?PageIRI rdf:type cnt:page ;
dct:Identifier ?uIdentifier ;
dct:hasVersion ?Version .
?Version rdf:type timed:versionedContent ;
dct:title ?Title ;
dct:description ?Description .
}
WHERE {
?PageIRI rdf:type cnt:page ;
dct:Identifier ?uIdentifier ;
dct:hasVersion ?Version .
{
{?Version rdf:type timed:versionedContent ;
dct:publisher "semawine" ;
timed:hasValidTimeStart ?Start ;
timed:hasValidTimeEnd ?End ;
dc:language "de-de" ;
dct:coverage "de" ;
dct:title ?Title ;
cnt:i18nslug "Nicht-gefunden-Fehler-404"@de-de ;
dct:description ?Description .
FILTER langMatches(lang(?Description),"de-de")
}
FILTER langMatches(lang(?Title),"de-de")
}
FILTER ( xsd:dateTime(?Start) < xsd:dateTime(?End) )
}
It's just this very last filter, which does not work (always produces an
empty result).
As soon as I remove the filter, the query instantly produces the desired
result, thus confirming there is nothing wrong e.g. with the causalities
inside the WHERE clause.
The graph in question goes:
<rdf:Description rdf:about=
"http://resources.semaworx.eu/timed/version#versioncrediblyuniqueid010">
<rdf:type rdf:resource=
"http://namespaces.semaworx.org/timed#versionedContent"/>
<dct:isVersionOf rdf:resource=
"http://resources.semaworx.eu/content/pages/pageincrediblyuniqueid002" />
<dct:format rdf:resource=
"http://purl.org/NET/mediatypes/application/xhtml+xml" />
<cnt:webapp>yes</cnt:webapp>
<dc:language>de-de</dc:language>
<dc:language>en-us</dc:language>
<dct:coverage>de</dct:coverage>
<dct:coverage>us</dct:coverage>
<age:x-content-age>14</age:x-content-age>
<cnt:i18nslug xml:lang="de-de">Nicht-gefunden-Fehler-404</cnt:i18nslug>
<cnt:i18nslug xml:lang="en-us">not-found-404-error</cnt:i18nslug>
<dct:title xml:lang="de-de">Fehler 404 – diese Seite gibt es
nicht</dct:title>
<dct:title xml:lang="en-us">Error 404 – page could not be found</dct:title>
<dct:subject>HTTP 404 Fehlerseite</dct:subject>
<dct:description xml:lang="de-de">Hier sind Sie leider total
verkehrt!</dct:description>
<dct:description xml:lang="en-us">Hm. You certainly shouldn't be
here…</dct:description>
<dct:publisher>semawine</dct:publisher>
<dc:creator rdf:resource=
"http://resources.semaworx.eu/ident/user#regUserxxxtheuniqueuserid001xxx" />
<dct:created>2013-09-10T00:08:00+01:00</dct:created>
<dct:date>2013-09-10T00:08:00+01:00</dct:date>
<gml:Point rdf:resource= "urn:ogc:def:crs:EPSG:6:6:4326" />
<dct:hasPart rdf:resource=
"http://resources.semaworx.eu/content/elements/elementincrediblyuniqueid001"
/>
<dct:hasPart rdf:resource=
"http://resources.semaworx.eu/content/elements/elementincrediblyuniqueid002"
/>
<dct:hasPart rdf:resource=
"http://resources.semaworx.eu/content/elements/elementincrediblyuniqueid003"
/>
<timed:hasValidTimeStart rdf:datatype=
"urn:ietf:params:xml:schema:dateTime"
>2013-09-16T15:48:21Z</timed:hasValidTimeStart>
<timed:hasValidTimeEnd rdf:datatype=
"urn:ietf:params:xml:schema:dateTime"
>2013-09-17T15:48:24Z</timed:hasValidTimeEnd>
</rdf:Description>
I'll be very glad to receive any hint on where I may possibly have
gotten the usage wrong.
Best,
Bardo