Query definition:
$query=' PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?name ?mbox WHERE { ?x foaf:name ?name ; foaf:mbox ?mbox } ORDER BY ASC(?name) LIMIT 10 OFFSET 20 ';
Parser instantiation and parsing:
$parser=new ARC_sparql_parser();
$parser->parse($query);
if(!$parser->get_errors()){
$infos=$parser->get_infos();
}
The $infos array has the following structure:
Array (
[query_type] => select
[distinct] => 1
[vars] => Array (
[0] => name
[1] => mbox
[2] => x
)
[result_vars] => Array (
[0] => name
[1] => mbox
)
[datasets] => Array (
)
[patterns] => Array (
[0] => Array (
[type] => triples
[triples] => Array (
[0] => Array (
[s] => Array (
[type] => var
[val] => x
)
[p] => Array (
[type] => iri
[val] => http://xmlns.com/foaf/0.1/name
)
[o] => Array (
[type] => var
[val] => name
)
)
[1] => Array (
[s] => Array (
[type] => var
[val] => x
)
[p] => Array (
[type] => iri
[val] => http://xmlns.com/foaf/0.1/mbox
)
[o] => Array (
[type] => var
[val] => mbox
)
)
)
)
)
[order_conditions] => Array (
[0] => Array (
[type] => expression
[direction] => asc
[expression] => Array (
[type] => var
[var] => name
[modifier] =>
)
)
)
[limit] => 10
[offset] => 20
)

