- From: Brian McBride <bwm@hplb.hpl.hp.com>
- Date: Sun, 28 Apr 2002 17:18:31 +0100
- To: Patrick Stickler <patrick.stickler@nokia.com>, RDF Core <w3c-rdfcore-wg@w3.org>
Folks,
You will see I suggest a new name for Jeremy's entailment [1]. And before
Jeremy gets in, I did consider calling it the Cannot entailment. Beware
more puns ahead.
Several months after the Cannes f2f we have not agreed on a solution to
this issue that the working group has agreed is a problem. We have by
default been steering a course which would result in publishing a Datatypes
WD with this problem unresolved, seeking feedback from the community as to
whether they see this as a real obstacle.
In the light of recent discussions on datatyping, I think we need to
consider this explicitly.
I'm aware of the following options (details below) for dealing with this
problem:
o ask the community if its really a problem and they say no.
o the know fix (ho ho)
o the rule fix
o the syntax fix
o the abandon hope fix
Given the difficulties we have in agreeing anything about datatypes, and
the large amount of work we have done and not yet shared with the
community, I suggest we ask the community by publishing a WD, explicitly
seeking feedback on this issue and possibly listing the various options we
have identified.
The know fix
============
In the know fix, we assume that the knowledge that
<jenny> <age> "10" .
really means
<jenny> <age> _:a .
_:a <xsd:decimal> "10" .
is defined elsewhere. Perhaps an application just 'knows' that this is the
case. Perhaps there are some rules defined outside of RDF for expressing
this. However, its done, we take the view that if you want to do this sort
of thing, you do it extra-rdf.
The Rule Fix
============
We build a rule mechanism, as in the know fix, into RDF. I think Jos has
claimed that he has proved something similar, if not the same as this,
works. No one I have suggested this to has like it, usually for different
reasons.
<jenny> <ageA> "10" .
<ageA> <rdfd:datatype> <integer> .
<ageA> <rdfd:valueProp> <ageB> .
entails:
<jenny> <ageB> _:a .
_:a <integer> "10".
The Syntax Fix
==============
This fix is based on the idea that viewing the problem as an entailment
problem is incorrect. The real problem is syntactic. It arises solely
from the fact that folks are currently used to writing in rdf/xml:
<rdf:Descrption rdf:about="#jenny">
<age>10</age>
</rdf:Description>
and it is suggested that they expect the age property to represent the
number not the numeral.
The suggestion therefore, is to fix this in the syntax. If instead the
author writes:
<rdf:Description rdf:about="#jenny">
<age xsi:type="xsd:decimal">10</age>
</rdf:Description>
this should be equivalent to the following n-triples:
<jenny> <age> _:a .
_:a <xsd:decimal> "10" .
Could the xsi:type property be inserted by an XML Schema or a DTD?
The Abandon Hope Fix
====================
To those who say I am showing a lack of neutrality in the choice of name, I
reply that I am, perhaps mistakenly, using a name that I believe will be
considered appropriate by many WG members.
If it is decided that the community cannot live without a solution to this
problem, and none of the other solutions are acceptable, then we reconsider
the tradeoffs that got us to this point.
I strongly suggest we do not abandon hope until after we have sought
community feedback on the current proposal.
Brian
[1] http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2002Feb/0635.html
Thanks to Patrick for digging out the reference
Received on Sunday, 28 April 2002 12:22:12 UTC