OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

relax-ng message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Subject: Re: [relax-ng] Compact syntax issue: namespace declarations

>  xsd:QName { [xmlns:x = "http://www.example.com";] "x:y" }

Should be:

 [xmlns:x = "http://www.example.com";] xsd:QName "x:y"

Thinking about this a bit more, I don't like the idea of something like:

namespace x = "something"

[xmlns:x = "something else"]
element x:y { empty }

Things in square brackets are supposed to be annotation-ish: they shouldn't 
be affecting the meaning of RELAX NG defined things.  On the other hand, 
something like this:

 [xmlns:x = "something" x:foo = "bar" ]
 element y { empty }

seems more reasonable.

So we could say that:

- namespace declaration attributes aren't allowed to conflict with global 
namespace declarations, and

- prefixes in name classes must be declared globally, and are not allowed 
to be declared by namespace declaration attributes

That leaves datatype values.  It doesn't seem quite right for something 
with an annotation-like syntax to be affecting the interpretation of a 
datatype value. Since datatype values can't have parameters, which could 
use curly braces to specify the set of in-scope namespaces, eg

  xsd:QName "x:y" { namespace x = "http://www.example.com"; }


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Powered by eList eXpress LLC