W3C home > Mailing lists > Public > w3c-rdfcore-wg@w3.org > January 2002

Re: Datatypes and xml:lang

From: Dave Beckett <dave.beckett@bristol.ac.uk>
Date: Thu, 31 Jan 2002 10:18:28 +0000
To: Patrick Stickler <patrick.stickler@nokia.com>
cc: RDF Core <w3c-rdfcore-wg@w3.org>
Message-ID: <25871.1012472308@tatooine.ilrt.bris.ac.uk>
>>>Patrick Stickler said:
> On 2002-01-30 21:58, "ext Dave Beckett" <dave.beckett@bristol.ac.uk> wrote:
> > 
> > Can the TDL / S authors say something about where they see how the
> > xml:lang attribute will appear in the data type models.
> > 
> > Use this pseudo N-triples to talk about language-enabled literals:
> >  "foo"(en)
> >  "foo"        - no language
> > 
> > Thanks
> > 
> > Dave
> Firstly, was it not decided that xml:lang was to be removed
> or at least ignored?

Not at present:

  Summary: "This is a mess - it is in the syntax and not in the
  model. Should have used an RDF vocabulary for language. It should
  be removed from the syntax."

  Currently: for discussion

Which is really, waiting for the datatypes/what is a literal?
discussion to complete.

> Secondly, this is a matter of value qualification (or statement
> qualification, depending on your particular bent)
> At present, it seems the preferred way of handling this is
> by using a blank node that has the literal value and
> the qualifiers hanging off it. E.g.
>    X ex:title _:1 .
>    _:1 rdf:value "foo" .
>    _:1 xml:lang "en" .
> [or in RDF/XML:
>    <rdf:Description rdf:ID="X">
>      <ex:title xml:lang="en" rdf:value="foo"/>
>    </rdf:Description>

That's OK, if you model like that, see below.  I don't think using
xml:lang as a property is widespread.

> with the datatyping presumption
>    xml:lang rdfs:range xsd:lang .

Doesn't that require schema support in order to use it?  xml:lang in
M&S doesn't need that

> or an alternative is reification
>    X ex:title "foo" .
>    _:s rdf:type rdf:Statement .
>    _:s rdf:subject X .
>    _:s rdf:predicate ex:title .
>    _:s rdf:object "foo" .
>    _:s xml:lang "en" .

That attaches it to the statement, not the unicode string, see below

> So, this really isn't a datatyping issue at all. It's
> a qualification/scoping issue. The literal "foo" does
> not have a datatype of (xml:lang,"en") but rather that
> is a property of the value (not the literal).
> Right?

I don't know about prefered way; the abvoe is one way to model it but
RDF/XML in M&S gives the other way:

    <rdf:Description rdf:ID="X">
      <ex:title xml:lang="en">foo</ex:title>

M&S says:

  "The xml:lang attribute may be used as defined by [XML] to
  associate a language with the property value.  There is no specific
  data model representation for xml:lang (i.e., it adds no triples to
  the data model); the language of a literal is considered by RDF to
  be a part of the literal. An application may ignore language
  tagging of a string. All RDF applications must specify whether or
  not language tagging in literals is significant; that is, whether
  or not language is considered when performing string matching or
  other processing."

so there are several get out clauses there.

This form is used in examples and M&S and also, the RDF Schema for RDFS:


and we owe the community an answer for what these forms mean.

I think that since we use XML for the syntax, and M&S mentions
xml:lang, we must continue to support it. The in-scope xml:lang
attributes affect all inner literal element content so that I want to
know about these statements:

    <rdf:Description rdf:ID="X">
      <ex:title xml:lang="en">foo</ex:title>

and how you think they should be modelled?

Do literal-labelled nodes become (unicode string, optional xml:lang)
pair as the quoted paragraph above I think indicates - "part of the

Received on Thursday, 31 January 2002 05:18:31 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 14:53:54 UTC