Re: Literals and turning off datatype/language

Hi Mark,

thanks, that indeed puts my concerns to rest. And I wholly agree it is
good to avoid a non-type type. Great to see this preciseness, I really
think RDFa will work as intended. (The discussions of RDFa core and
host vocabulary semantics of late also seem sound and clarifying.)

Indeed it's good to stress the details about what literal equality
means (and how to avoid type mismatch misses as you mention). Just as
equal care should be encouraged for authors - to be precise about what
kind of literal one uses (coupled with sensible defaults for casual
usage). The expected resolution of the datatype issue seems really
good in this respect.

Best regards,
Niklas



On 6/14/07, Mark Birbeck <mark.birbeck@x-port.net> wrote:
>
> Hi Niklas,
>
> Thanks for your thorough comments.
>
> Both of the things you ask for are available in the 'latest thinking',
> although it's probably not always easy to find the references in the
> email threads and telecon minutes. The language behaviour you describe
> is simply 'inherited' from xml:lang, whilst the @datatype behaviour
> was pretty much agreed during the discussion on XML literals, with the
> final point about having @datatype with no value being proposed here:
>
>   <http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Apr/0054.html>
>
> I say "pretty much" agreed, because we haven't nailed it down on a
> call yet, but I think others agree. (For example, Ivan follows up with
> an agreement in that thread.) Perhaps one of the most important things
> about this approach is that it doesn't introduce a 'made up' type to
> indicate that there is no type. :)
>
> Note that one aspect of the whole typed v. plain literal discussion is
> that we are encouraging people to write their queries over RDF in a a
> 'defensive' way. As you rightly say, none of the following are equal:
>
>   "Niklas"
>   "Niklas"@en
>   "Niklas"^^xsd:string
>
> and this is an issue in RDF, regardless of whether you use RDFa to
> carry your triples. Speaking for myself, I always use functions to
> convert strings into a standard form when writing SPARQL queries.
>
> Best regards,
>
> Mark
>
> On 14/06/07, Niklas Lindström <lindstream@gmail.com> wrote:
> >
> > [I'm sorry, Michael, I meant to reply-all.]
> >
> > Ah, now I remember. Thank you, I had forgotten to check it out again.
> > In general I find the hybrid approach fine for all the needs I have
> > come upon. And my concerns are clearly mentioned in "Issues".
> >
> >
> > 1. This I hope to be a part of the resolution:
> >
> >   * _always_ use the language when establishing plain literals
> >
> > Which (it seems) would involve updating the process flow chart, in the
> > case of "literal -> no @content -> no @datatype -> no markup" to
> > explicitly say "and evaluate xml:lang".
> >
> > For completeness - would it be useful to explicitly state:
> >
> >     * xml:lang="" to indicate no language
> >
> > ? To make clear that it is intentionally allowed (of course, as per
> > <http://www.w3.org/TR/REC-xml/#sec-lang-tag>).
> >
> >
> > 2. Less obvious (and I will not argue this further if the current
> > resolution goes against it):
> >
> >     * datatype="" to indicate no type
> >
> > Would this also mean that the following:
> >
> >     <tr about="..." property="foaf:name" datatype="" xml:lang="">
> >         <td>Some</td>
> >         <td>Body</td>
> >     </tr>
> >
> > will yield:
> >
> >     <...> foaf:name "Some Body" .
> >
> > ? I.e. meaning that "@datatype is present -> @datatype is empty"
> > would always yield a plain, stripped literal. If this is the case, it
> > seems the flow chart should to be updated for that too (since no
> > hybrid-mode check for contained markup should be done if
> > @datatype="").
> >
> >
> > Best regards,
> > Niklas
> >
> >
> > On 6/14/07, Hausenblas, Michael <michael.hausenblas@joanneum.at> wrote:
> > >
> > > Niklas,
> > >
> > > Thanks for sharing your concerns. Just a quick check:
> > > Did you have a look at [1], already?
> > >
> > > Cheers,
> > >         Michael
> > >
> > > [1] http://www.w3.org/2006/07/SWD/wiki/RDFa/LiteralObject
> > >
> > > ----------------------------------------------------------
> > >  Michael Hausenblas, MSc.
> > >  Institute of Information Systems & Information Management
> > >  JOANNEUM RESEARCH Forschungsgesellschaft mbH
> > >
> > >  http://www.joanneum.at/iis/
> > > ----------------------------------------------------------
> > >
> > >
> > > >-----Original Message-----
> > > >From: public-rdf-in-xhtml-tf-request@w3.org
> > > >[mailto:public-rdf-in-xhtml-tf-request@w3.org] On Behalf Of
> > > >Niklas Lindström
> > > >Sent: Wednesday, June 13, 2007 11:16 PM
> > > >To: public-rdf-in-xhtml-tf@w3.org
> > > >Subject: Literals and turning off datatype/language
> > > >
> > > >
> > > >Hello all!
> > > >
> > > >The telecon for this Thursday (June 14th) aims to make official the
> > > >resolution to ISSUE-25 - Default Datatype for Literals. This is not an
> > > >attempt to re-raise the long-running debate. I do however have two
> > > >concerns I'd like to voice before the issue is resolved. (I must admit
> > > >I wasn't sure that a consensus had been reached..) Hopefully this is
> > > >already as things are intended to work.
> > > >
> > > >
> > > >My concerns are:
> > > >
> > > >1) It should be possible to "turn off" datatyping, regardless of
> > > >whether rdf:XMLLiteral is the default or not. *Requiring* the author
> > > >to resort to @content could IMO discourage adoption of RDFa in
> > > >some/many cases. The reasons are:
> > > >
> > > >    - A datatyped literal has no language information.
> > > >    - Given the same string values, a datatyped literal is not the
> > > >same as a plain literal.
> > > >
> > > >Turning off datatyping should be done with an empty @datatype. Thus:
> > > >
> > > >    <html ... xml:lang="en">
> > > >        <head>
> > > >            <title property="dc:title" datatype="">The Story
> > > >Of Language</title>
> > > >
> > > >should yield:
> > > >
> > > >    <> dc:title "The Story Of Language"@en .
> > > >
> > > >
> > > >2) It should be possible to "turn off" language scope. The reason is:
> > > >
> > > >    - Given the same string values, a literal with language is not the
> > > >same as a plain literal.
> > > >
> > > >Turning off language scope should be done with an empty @xml:lang.
> > > >Thus (combined with turning off datatype):
> > > >
> > > >    <p property="foaf:name" datatype="" xml:lang="">Some Body</p>
> > > >
> > > >should yield:
> > > >
> > > >    <> foaf:name "Some Body" .
> > > >
> > > >
> > > >That is all. As said, this may already be the default behaviour,
> > > >either implicitly or because I have failed to see it in the
> > > >specification (this *is* how xml:lang is supposed to work as described
> > > >at <http://www.w3.org/TR/REC-xml/#sec-lang-tag>). If not, I hope that
> > > >this can be agreed upon and possibly added explicitly to avoid
> > > >misunderstandings.
> > > >
> > > >
> > > >Best regards,
> > > >Niklas Lindström
> > > >
> > > >
> > > >
> > >
> >
> >
> >
>
>
> --
>   Mark Birbeck, formsPlayer
>
>   mark.birbeck@x-port.net | +44 (0) 20 7689 9232
>   http://www.formsPlayer.com | http://internet-apps.blogspot.com
>
>   standards. innovation.
>
>

Received on Thursday, 14 June 2007 14:59:41 UTC