W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > December 2003

Semantics document, new rule 'gl'

From: Graham Klyne <gk@ninebynine.org>
Date: Mon, 15 Dec 2003 11:23:35 +0000
Message-Id: <>
To: w3c-rdfcore-wg@w3.org

I'm just looking at recent changes to the semantics document, and wish to 
(a) check my understanding, and (b) suggest a possible clarification for 
the errata and next round.

I refer to rule 'lg' in the document at:
at 15-Dec-2003, self-described as:

RDF Semantics
W3C Working Draft @@ November 2003

This Version:

In section 7.1 
(http://www.w3.org/2001/sw/RDFCore/TR/WD-rdf-mt-20030117/#simpleRules there 
is a new rule 'lg', which says:

[rule name] gl

[if E contains] uuu aaa _:nnn .
where _:nnn identifies a blank node allocated to the literal lll by rule lg.

[then add] uuu aaa lll .

My first reaction was that this new rule is redundant, but now I think that 
"[if E contains] uuu aaa _:nnn ." must refer to some property URI aaa other 
than that which was used by the use of rule lg to allocate _:nnn to lll.

I think this intent would be clearer if a different metavariable were used 
in rules 'lg' and 'gl', e.g. 'gl' might read:

[rule name] gl

[if E contains] uuu bbb _:nnn .
where _:nnn identifies a blank node allocated to the literal lll by rule lg.

[then add] uuu bbb lll .


Responding now as an implementer, the new rule looks like a pain to 
implement (which is maybe OK, but I have tried to create an implementation 
that can do, say, proof-checking that is based very closely on the 

I'm thinking that I might take a slightly different approach, which I think 
is equivalent:

Rule: lg1
If E contains: uuu aaa lll .
Then:          uuu aaa _:nnn.  _:nnn foo:sameAs lll .
(where _:nnn is allocated as described for rule 'lg'.)

Rule: gl1
If E contains: uuu bbb _:nnn .  _:nnn foo:sameAs lll .
Then:          uuu bbb lll .

(The 'foo:sameAs' property is intended to appeal to the owl:sameAs 
property, without getting entangled with the owl semantic conditions on 
I.e., a foo:sameAs b does not necessarily mean that I(a) == (b), just that
    a p c . <=> b p c .
    d q a . <=> d q b .
for all syntactically allowable c, d, p, q.)


Graham Klyne
For email:
Received on Monday, 15 December 2003 06:29:46 UTC

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