- From: Seaborne, Andy <andy.seaborne@hp.com>
- Date: Fri, 25 Mar 2005 17:12:38 +0000
- To: "Personick, Michael R." <MICHAEL.R.PERSONICK@saic.com>
- Cc: '''RDF Data Access Working Group ' ' ' <public-rdf-dawg@w3.org>, "Bebee, Bradley R." <BRADLEY.R.BEBEE@saic.com>, "Thompson, Bryan B." <BRYAN.B.THOMPSON@saic.com>
Personick, Michael R. wrote:
> Andy,
>
> Regarding "construct *" being taken out, we do use "construct *" for all of
> our queries, but only because we might be formulating queries incorrectly.
> It's nice for lazy programmers such as myself that tend to want to construct
> a subgraph using the same triple patterns used for matching. So if I only
> need to match on one triple pattern but I want to know everything about the
> resources that satisfy the query, I'll write something like this:
>
> construct *
> where (?resource <myns:attribute> "Value")
> (?resource ?p ?o)
>
> Perhaps I should be doing something like this?
>
> construct (?resource ?p ?o)
> where (?resource <myns:attribute> "Value")
>
The syntax in the published working drafts has been superceeded so now
triples are written in an Turtle or N3-like form. <> round qnames was not
legal - it's an old RDQL-ism - as it confuses URI scheme name with a prefix.
prefix myns: <http://.....>
construct { ?resource myns:attribute "Value" }
where { ?resource myns:attribute "Value" }
In the simple cases, "construct *" was the extraction operation you want.
It's just that it does not extend as queries become more complex.
Andy
> (Not sure if this is even legal.)
>
> -Mike
Received on Friday, 25 March 2005 17:13:24 UTC