W3C home > Mailing lists > Public > public-rdf-comments@w3.org > February 2012

Lang Tag IRI

From: Henry Story <henry.story@bblfish.net>
Date: Mon, 6 Feb 2012 14:08:32 +0100
Message-Id: <2676B176-5E46-4177-BCAE-488E83873673@bblfish.net>
To: public-rdf-comments@w3.org
In your latest draft  you have a lang tag iri be the same as

    http://www.w3.org/1999/02/22-rdf-syntax-ns#langString

[[
A language-tagged string is any literal whose datatype IRI is equal to http://www.w3.org/1999/02/22-rdf-syntax-ns#langString. In addition tolexical form and datatype IRI, a language-tagged string also has:

	 a non-empty language tag as defined by [BCP47]. The language tag must be well-formed according to section 2.2.9 of [BCP47], and must be normalized to lowercase.
]]

 This is great, as it simplifies the model a lot. Now we can have just one simple
notion of a literal, with different notations.

But perhaps it would be better to use a different URI, one dedicated completely to
language tags. Supposing it were for example

  http://www.w3.org/1999/02/22-rdf-syntax-ns/lang/

Then it would be extremely easy when looking at a URL to tell if it
was a language tag, and so move back to the @ notation. On the other hand
if you use the rdf syntax notation then testing urls for language
tags is a lot more difficult, because one also has to keep track of other
symbols defined in the rdf namespace.

  Ie in one case the test can be

 if ( iri startsWith "http://www.w3.org/1999/02/22-rdf-syntax-ns/lang/") new Lang(iri)
 else new IRI(iri)

 In the other it has to be 

  if (iri startsWith " http://www.w3.org/1999/02/22-rdf-syntax-ns/" && iri != rdf:type && ... )
  else new IRI(iri)

 Also language types are bound to be evolving, so that it is not really worth hardcoding a
full list.

	Henry



Social Web Architect
http://bblfish.net/
Received on Monday, 6 February 2012 14:59:44 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 16:59:30 UTC