Re: D-enatilment and canonicalization

Thanks andy, my (maybe naïve) question would then be: is behavior 2 warranted "as is" by the current spec, or is "canonical datatype representation" actually another (commonly used already) "entailment regime" that should be defined as such?


----- Original Message -----
From: Andy Seaborne <>
To: Polleres, Axel
Cc: <>; <>
Sent: Fri Mar 05 09:06:09 2010
Subject: D-enatilment and canonicalization

On 05/03/2010 8:45 AM, Polleres, Axel wrote:
> In my opinion this is a question concerning all entailments from D-entailment "upwards".
> ----- Original Message -----
> From: Ivan Herman<>
> To: Polleres, Axel
> Cc: Birte Glimm<>; SPARQL Working Group<>
> Sent: Fri Mar 05 08:08:10 2010
> Subject: Re: [TF-ENT] Condition C2 modifications
> On 2010-3-5 24:36 , Axel Polleres wrote:
>> No objections, but one additional side question:
>> Do we have an issue with systems that use canonical forms of datatype literals internally?
>> Say you have:
>>   :s :p "1.000"^^xsd:decimal
>> is a Datatype-aware system really supposed to return
>>   "1.000"^^xsd:decimal
>> on { :s :p ?O}
>> but not it's internal representation?
> This is a good question, I do not know the answer:-(, but is this an
> entailment specific question? I would expect that to be a question for
> SPARQL as a whole...
> Cheers
> Ivan

There are 2 cases for value aware systems and there are examples of 
systems in each case:

1/ Data "1.00"^^xsd:decimal,
    stores "1.00"^^xsd:decimal,
    matches "1.0"^^xsd:decimal,
    matches "1.00"^^xsd:decimal,
    returns "1.00"^^xsd:decimal

i.e. the original term is stored and returned

2/ Data "1.00"^^xsd:decimal,
    stores "1.0"^^xsd:decimal,
    matches "1.0"^^xsd:decimal
    matches "1.00"^^xsd:decimal (canonicialization applied)
    returns "1.0"^^xsd:decimal

i.e. the canonicalized term is stored and returned

See also "1"^^xsd:byte and "1"^^xsd:integer

I avoided describing them as D-entailment because that really is a set 
of possibilities depending on the datatypes supported and ranges of 
values within the datatypes.  They don't necessarily force D-consistency.


1 - Jena memory model
2 - Jena TDB

Received on Friday, 5 March 2010 09:30:02 UTC