- From: McBride, Brian <brian.mcbride@hp.com>
- Date: Sat, 3 Dec 2005 21:16:45 -0000
- To: <public-swbp-wg@w3.org>
I have been reviewing SPARQL last call WD on the plane as promised, and wanted to return to an issue that David Wood had previously raised. (No URLs available at 30k feet - sorry) SPARQL does not support the expression of property closures, e.g. transitive closure. To ground this in BP work, consider an RDF graph that includes dc:subject properties whose values come from a SKOS taxonomy. You cannot express directly in SPARQL a query to find all the resources whose dc:subject is a (possibly indirect) narrower term of some term T. I earlier suggested that SPARQL does not have to support transitive closure because the graph can do it. There can be an inferencing graph which computes the transitive closure of skos:narrower. If you query that graph you query the transitive closure relationship. If you query the ground graph you get the direct, well at least directly asserted, relationship. The question arises, whether there is a need to distinguish between the direct relationship and the closure relationship. Are these different properties. Should we define skos:inNarrowerClosure (or something more appealingly named). In terms of the plumbing, this is not necessary. SPARQL supports querying over multiple graphs and so can support querying the ground graph to get at the direct relationship and an inferred graph to get at the closed one. However it strikes me that the direct relationship and the closure are different relationships and it might be best practice, perhaps generally, perhaps under certain circumstances, to define both. I believe the distinction to be useful. If I am creating a graphical representation of a SKOs taxaonomy, I want to query for the direct relationship. But if I'm searching for relevant resources, I probably want the closure relationship. If it can be useful to make this distinction, there may be value in defining property to relate the direct property to its closure property, e.g. ex;isTransitiveClosureOf. I'm feeling a bit out of my depth here. I expect this all got worked out a while ago, but just thought I'd check. Brian
Received on Saturday, 3 December 2005 21:16:50 UTC