Re: datatypes and MT

Brian McBride wrote:
>
> Dan Connolly wrote:
> >
> > [...]
> >
> >  <rdf:Description rdf:about="#me">
> >    <shoeSize>
> >             <integer decimalRep="10"/>
> >    </shoeSize>
> >         </rdf:Description>
> >
> > To fill in the details... let dt:
> > be the namespace of XML Schema primitive datatypes,
> > and let rdfs:str be a new property
> > that relates XML Schema datatype to strings;
> > it's unambiguous over each of the primitive datatypes;
> > in the case of dt:string, it's the identity relation.
> >
> >  <rdf:Description rdf:about="#me">
> >    <shoeSize>
> >             <dt:decimal rdfs:str="10"/>
> >    </shoeSize>
> >         </rdf:Description>
>
>
> This isn't the same as above is it?  In your first example I could have extended
> it to read:
>
>    <rdf:Description rdf:about="#me">
>      <shoeSize>
>               <integer decimalRep="10" hexadecimalrep="A"/>
>      </shoeSize>
>           </rdf:Description>
>
> I don't seem to be able to do that with your second example.  Are there
> advantages to that which you have written over:
>
>    <rdf:Description rdf:about="#me">
>      <shoeSize dt:decimal="10"/>
>          </rdf:Description>
>
> or if you want the type property explicit, we need to invent a URI for the value
> space of the xsd datatype:
>
>          <rdf:Description rdf:about="#me">
>            <shoeSize>
>              <eg:integer dt:decimal="10"/>
>            </shoeSize>
>          </rdf:Description>

I really see advantages in DanC's proposal

People often write
  :s eg:shoeSize "10".
  :s nav:date "2001-11-02".
  :s nav:time "16:14".
  :s nav:flightNum "1154".
  :s nav:customerNumber "678".
  :s apt:latitude "50-54N".
  :s apt:longitude "004-32E".
  :s apt:elevation "58M".
or in general
  :s :p "ooo".
and I believe that is a shorthand for
  :s :p [ rdfs:str "ooo" ].
(I used to prefer rdfs:label instead of rdfs:str
but now I think that rdfs:str is a better name for
the property mapping a data value (that bNode)
to it's string representation)

So that object is actually some thing (that bNode)
which has that particular rdfs:str representation.
The shorthand is convenient when no additional
description of that thing is needed.

Now if we want to be more precise w.r.t. that thing,
we just describe it further i.e.
  :s eg:shoeSize [ rdfs:str "10"; rdf:type dt:decimal ].

The real advantage I see is that
  :s eg:shoeSize [ rdfs:str "10" ].
can be entailed given that
  :s eg:shoeSize [ rdfs:str "10"; rdf:type dt:decimal ].
(and only in that direction)

--
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/

Received on Saturday, 3 November 2001 13:49:12 UTC