The problem is that your ORDER BY clause is not in the correct place in the query. It should be after the closing bracket that closes the WHERE clause:
CONSTRUCT { ?s ?p ?o }
WHERE
{
GRAPH ?g { ?s ?p ?o }
?s <http://www.w3.org/1999/02/22-rdf-syntax-ns#https://forum.tuteehub.com/tag/type">type> <http://lod.isi.edu/ontology/syllabus/Homework> .
?s <http://lod.isi.edu/ontology/syllabus/hasEventDate> ?date .
}
ORDER BY ASC(?date)
Also note that several of the curly braces in your original query are, although not exactly https://forum.tuteehub.com/tag/wrong">wrong, superfluous.
manpreet
Best Answer
3 years ago
I followed SPARQL 1.1 section 10.2 CONSTRUCT and have the following SPARQL query which returns all triples whose subject has type
Homeworkand which also have an event date.CONSTRUCT { ?s ?p ?o } WHERE { GRAPH ?g { ?s ?p ?o } . { ?s <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://lod.isi.edu/ontology/syllabus/Homework> }. { ?s <http://lod.isi.edu/ontology/syllabus/hasEventDate> ?date}. }Now, I want to retrieve the results in ascending/descending order of the event date,
?date. I tried adding theorder bymodifier as shown below, but there are parse errors in the OpenRDF workbench.CONSTRUCT { ?s ?p ?o } WHERE { GRAPH ?g { ?s ?p ?o } . { ?s <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://lod.isi.edu/ontology/syllabus/Homework> }. { ?s <http://lod.isi.edu/ontology/syllabus/hasEventDate> ?date}. ORDER BY DESC(?date) }Encountered " "order" "ORDER "" at line 9, column 6. Was expecting one of: "(" ... "{" ... "}" ... "[" ... ... ... "optional" ...
"https://forum.tuteehub.com/tag/graph">graph" ... "minus" ... "filter" ... "true" ... "false" ... "bind" ...
"service" ... "values" ... ... ... ...
... ... ... ... ...
... ... ...
... ... ...
... ... ...
... ...