W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > October 2001

MT comment - bagId ambiguity ...

From: Jeremy Carroll <jjc@hplb.hpl.hp.com>
Date: Mon, 1 Oct 2001 18:37:13 +0100
To: <w3c-rdfcore-wg@w3.org>
Message-ID: <JAEBJCLMIFLKLOJGMELDIEEBCCAA.jjc@hplb.hpl.hp.com>

This is really a comment about syntax than about MT.

In MT, Pat says:

"We understand linear RDF notations such as N-Triples and rdf/xml [RDF/XML]
as lexical notations for describing an RDF graph"

which seems innocuous enough, and appears to suggest that there is a
function from RDF/XML documents to RDF graphs.

Unfortunately, there isn't.

A test case is:

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   <rdf:Description rdf:bagID="BAG"
                    foo:a="a" foo:b="a" />

This does not specify which reification, that of foo:a or foo:b comes first
in the bag.

In not-quite-N-triples the difference between the two legal models is:

<#BAG> <rdf:_1> _:j2 .
_:j2 <rdf:predicate> <http://foo/a> .
<#BAG> <rdf:_2> _:j3 .
_:j3 <rdf:predicate> <http://foo/b> .


<#BAG> <rdf:_1> _:j2 .
_:j3 <rdf:predicate> <http://foo/a> .
<#BAG> <rdf:_2> _:j3 .
_:j2 <rdf:predicate> <http://foo/b> .

The whole models is:

<#BAG> <rdf:type> <rdf:Bag .
_:j0 <http://foo/a> "a" .
<#BAG> <rdf:_1> _:j2 .
_:j2 <rdf:type> <rdf:Statement> .
_:j2 <rdf:subject> _:j0 .
_:j2 <rdf:predicate> <http://foo/a> .
_:j2 <rdf:object> "a" .
_:j0 <http://foo/b> "a" .
<#BAG> <rdf:_2> _:j3 .
_:j3 <rdf:type> <rdf:Statement> .
_:j3 <rdf:subject> _:j0 .
_:j3 <rdf:predicate> <http://foo/b> .
_:j3 <rdf:object> "a" .

A bag created by a BagID on a rdf:Description node with n property
attributes has n! different graphs, on a typedNode this rises to (n+1)!
different graphs.

We can regard this as an issue in three different places:

+ either:
  (my preference) this is a bug with the XML/RDF syntax, solution: deprecate
bagID when mixed with property attributes.

+ or
  (what M&S states) the unorderedness of a bag is fundamental, and the model
theory must capture this despite the sequential numbering on its members.

M&S ref


"Bags are used to declare that a property has multiple values and that there
is no significance to the order in which the values are given"

   The radical position: M&S is simply wrong to show Bag membership with
rdf:_NNN properties, if it is unordered make it a set not a bag and use
rdf:li as the property!

Received on Monday, 1 October 2001 13:40:32 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 20:24:05 UTC