- From: Dave Beckett <dave.beckett@bristol.ac.uk>
- Date: Thu, 15 Nov 2001 14:24:35 +0000
- To: w3c-rdfcore-wg@w3.org
Issue http://www.w3.org/2000/03/rdf-tracking/#rdfms-abouteach Summary: I propose to remove rdf:aboutEach from the RDF/XML language. Virtually all RDF/XML parsers are streaming, based on SAX events or equivalent in other languages. rdf:aboutEach is a file-scope based construction that affects every property off a top level (in XML terms) node with the given URI, either previously mentioned or later on in the document. This means that the parsers have to record all the properties from top level nodes seen so that any potential rdf:aboutEach at the end of the document will work properly. It seems an odd syntactic construct that has not been widely used (I have never seen it) and sits badly in the core. If it remains useful, it should be layered in some form of system on top of RDF/S and not at the syntax layer. The CWM experiments with log:forall point at better ways to do this, IMHO. This issue was previously discussed in the 2001-Jun-01 RDF Core WG meeting where there was no consensus for removal at that time. See http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2001Jun/0008.html and Ora's action: http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2001Jul/0253.html Reasons I see for removal Insufficient use I don't think it has been used at all in any major RDF application that I've come across such as Dublin Core, PRISM, W3C SWAD, DAML+OIL. Google searches return mostly pointers to primers on RDF trying to explain it. Insufficient implementation (selected lists) I think these parsers implement it in some fashion: libwww RDF by parsing everything into memory before emitting triples SiRPAC (in non streaming mode) ARP - However, see below Wilbur (in non streaming mode, not the default) Doesn't handle aboutEach before container -- http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2001Jul/0253.html VRP Parsers that do not handle it: SiRPAC (in streaming mode) Wilbur (in streaming mode, default) Raptor RDF Filter Repat Mozilla RDF parser - http://www.mozilla.org/newlayout/faq.html CWM xm2rdf.py - it notes # aboutEach { <#> forall r . { ppp rdf:li r } l:implies ( zzz } ) Confusing interactions with rdf:bagID as recorded in Issue http://www.w3.org/2000/03/rdf-tracking/#rdfms-abouteach Difficult to implement, especially in streaming RDF/XML parsers; scalability problems. "For very large files (more than 100 Megabyte?), the way ARP handles rdf:aboutEach may exhaust memory. I have the design of a fix, but it is not high on my ToDo list. e-mail me if you wish to move it up." -- Jeremy, http://www.hpl.hp.co.uk/people/jjc/arp/issues.html A structure in the XML syntax with no graph representation Will make the primer shorter :) Actions to implement: ACTION Dave (RDF/XML syntax doc editor): remove from the grammar in the RDF/XML document ACTION Brian: Add explanatory text to RDF M&S errata warning of this change. This would close http://www.w3.org/2000/03/rdf-tracking/#rdfms-abouteach http://www.w3.org/2000/03/rdf-tracking/#rdfms-propElt-id-with-dr by removing rdf:aboutEach / distributed referrants from the language and affect the previously closed http://www.w3.org/2000/03/rdf-tracking/#rdfms-aboutEach-on-object by making the resolution moot. Dave
Received on Thursday, 15 November 2001 09:24:36 UTC