W3C home > Mailing lists > Public > public-rdf-wg@w3.org > November 2012

Re: RDF-ISSUE-109 (ill-typed-so-what): What's the consequence of a literal being ill-typed? [RDF Concepts]

From: Antoine Zimmermann <antoine.zimmermann@emse.fr>
Date: Tue, 13 Nov 2012 13:49:50 +0100
Message-ID: <50A241EE.4070708@emse.fr>
To: Pat Hayes <phayes@ihmc.us>
CC: Richard Cyganiak <richard@cyganiak.de>, Pierre-Antoine Champin <pierre-antoine.champin@liris.cnrs.fr>, RDF Working Group <public-rdf-wg@w3.org>
Le 13/11/2012 10:50, Pat Hayes a écrit :
>
> On Nov 13, 2012, at 1:31 AM, Antoine Zimmermann wrote:
>
>> Le 13/11/2012 09:31, Pat Hayes a écrit :
>>>
>>> On Nov 12, 2012, at 5:41 AM, Richard Cyganiak wrote:
>>>
>>>> ... But that's all besides the point. My question was why the
>>>> specs distinguish between the two things in the first place.
>>>> Even in XSD entailment, this is consistent:
>>>>
>>>> :a :b "xxx"^^xsd:integer.
>>>>
>>>> But this is not:
>>>>
>>>> :a :b "xxx"^^xsd:integer. :b rdfs:range rdfs:Literal.
>>>>
>>>> I don't understand the point of singling out the concept of
>>>> the “ill-typed literal”, declaring it to be a “non-syntactic
>>>> error”, but not declaring it to be an inconsistency.
>>>>
>>>
>>> You completely miss the point. Nothing is being "singled out" in
>>> the 2004 design. Inconsistency isn't something you get to
>>> "declare", it's a word with a technical meaning. It means, the
>>> graph is false in every interpretation. You get to define truth
>>> conditions on triples, and then consistency is a product of
>>> that.
>>>
>>> So, you want
>>>
>>>> :a :b "xxx"^^xsd:integer.
>>>
>>> to be always false in any XSD-interpretation, no matter what :a
>>> and :b are interpreted to mean, right? That is what it means to
>>> say that this triple is XSD-inconsistent.
>>>
>>> I don't think this is possible without tweaking the basic RDF
>>> semantic rules.
>>>
>>> Here's the only way I can see of doing it. We require the
>>> universe of every interpretation to contain a special semantic
>>> value called "error", and we stipulate that no relational
>>> extensions ever contain a pair <x, error>, and we also tweak the
>>> blank node conditions so that bnodes are never mapped to error.
>>> Then we say that any ill-formed literal is required to denote
>>> error. This ensures that all triples with an ill-formed literal
>>> will be false, so such graphs are always inconsistent. Note, this
>>> has to be done in the basic RDF semantics, not just in the XSD
>>> semantics, since adding datatypes to literals doesn't change what
>>> URIs like :a and :b mean.
>>
>> I was thinking of something else:
>>
>> if <d> is an IRI in the datatype map, then for any character string
>> aaa in the vocabulary V, < I(aaa^^<d>),I(<d>) > in
>> IEXP(I(rdf:type)).
>>
>> For instance, if we have:
>>
>> <s> <p> "xyz"^^xsd:integer .
>>
>> By definition of D-interpretation, "xyz"^^xsd:integer has to be
>> interpreted as a non literal. But with the constraint I just
>> stated, the resource denoted by "xyz"^^xsd:integer must be of type
>> xsd:integer, which, by virtue of XSD only contains integers, that
>> are literals. Inconsistency!
>
> Yes, I thought of that, but I don't think it works. What you get is
> an inconsistency in the metatheory, ie in the semantic conditions
> themselves, not that the graph itself is false. I mean, if the
> semantics says that something has to not be in LV and the semantics
> also says that this same thing, whatever it is, has to be in LV, then
> its the *semantics* which is inconsistent. What we want is that the
> graph should be false in every interpretation, not that the semantics
> should break :-)

Not really but yes, it's weird. It means that there is no 
D-interpretation over a vocabulary that includes an ill-typed literals. 
This could work but I don't quite foresee the consequences.


> I think allowing LV to be partial is the simplest and most intuitive
> way to make this work. See my most recent email to Richard.

Possibly yes.

>
> Pat
>
>>
>>>
>>> We didn't do this in 2004 because the basic RDF semantic
>>> machinery was seen as being defined independently of literal
>>> datatyping, but we could revisit this decision, I guess. I really
>>> don't like this idea, but we could do it. It would amount to
>>> incorporating datatype correctness checking into the basic RDF
>>> semantic machinery, and we ought to check any consequences it
>>> might have for OWL and RIF, as it is a rather basic change to the
>>> design.
>>>
>>> Pat
>>
>> <skip>
>>
>> -- Antoine Zimmermann ISCOD / LSTI - Institut Henri Fayol École
>> Nationale Supérieure des Mines de Saint-Étienne 158 cours Fauriel
>> 42023 Saint-Étienne Cedex 2 France Tél:+33(0)4 77 42 66 03
>> Fax:+33(0)4 77 42 66 66 http://zimmer.aprilfoolsreview.com/
>>
>>
>
> ------------------------------------------------------------ IHMC
> (850)434 8903 or (650)494 3973 40 South Alcaniz St.
> (850)202 4416   office Pensacola                            (850)202
> 4440   fax FL 32502                              (850)291 0667
> mobile phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes
>
>
>
>
>
>


-- 
Antoine Zimmermann
ISCOD / LSTI - Institut Henri Fayol
École Nationale Supérieure des Mines de Saint-Étienne
158 cours Fauriel
42023 Saint-Étienne Cedex 2
France
Tél:+33(0)4 77 42 66 03
Fax:+33(0)4 77 42 66 66
http://zimmer.aprilfoolsreview.com/
Received on Tuesday, 13 November 2012 12:48:55 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:25:52 GMT