W3C home > Mailing lists > Public > public-rdf-in-xhtml-tf@w3.org > January 2006

Web Rule Language (WRL) Also Needs 'Compact URIs'

From: Mark Birbeck <mark.birbeck@x-port.net>
Date: Sat, 7 Jan 2006 20:20:30 -0000
Message-ID: <6010DA77-42D0-4BF5-ABC0-8A1ED7E9388B@s15.mail.x-port.net>
To: <public-rdf-in-xhtml-tf@w3.org>

Hi everyone,

I hope you all had good breaks, and happy new year.

As part of looking at RulesML [1] I was reading a W3C member submission
called "Web Rule Language (WRL)" [2] and came across this:

  An IRI can be abbreviated to an sQName. Note that the term 'QName' has
  been used, after its introduction in XML [XMLNamespaces], with different
  meanings. The meaning of the term 'QName' as defined in XML got blurred
  after the adoption of the term in RDF. In XML, QNames are simply used to
  qualify local names and thus every name is a tuple <namespace, localname>.
  In RDF, QNames have become abbreviations for URIs, which is different from
  the meaning in XML. WRL adopts a view similar to the RDF-like version of
  QNames, but due to its deviation from the original definition in XML we
  call them sQNames which is short for 'serialized QName'.

This is exactly the motivation we have for CURIEs--that the definitions have
become blurred. The only thing I would disagree with the authors on is that
the use of 'QNames' in RDF should be blamed--it's hard to find a W3C spec
that *isn't* using QNames inappropriately!

What also really caught my eye was that the document goes on to present a
different syntax to the normal 'QNames' one:

  An sQName consists of two parts, namely, the namespace prefix and the
  local part. WRL allows two distinct ways to write sQNames. sQName can
  be seen as a datatype and thus it has an associated datatype wrapper,
  namely, _sqname (see also Appendix A), which has two arguments: namespace
  and localname. Because sQNames are very common in WRL specifications,
  WRL allows a short syntax for sQNames. An sQName can simply be written
  using a namespace prefix and a localname, separated by a hash ('#'):
  namespace_prefix#localname. It is also possible to omit the namespace
  prefix and the hash symbol. In this case, the name is defined in the
  default namespace.

I'm not suggesting that we stray from using the colon as the separator--I
just thought it was interesting that they have chosen to avoid the QName
syntax altogether, and it might provoke some thoughts.



[1] www.ruleml.org/spec
[2] http://www.w3.org/Submission/WRL/

Mark Birbeck
x-port.net Ltd.

e: Mark.Birbeck@x-port.net
t: +44 (0) 20 7689 9232
w: http://www.formsPlayer.com/

Download our XForms processor from
Received on Saturday, 7 January 2006 20:21:04 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:01:46 UTC