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


Help: OASIS Mailing Lists Help | MarkMail Help



   Re: [xml-dev] XSD spec question

[ Lists Home | Date Index | Thread Index ]

Eric van der Vlist wrote:

On mer, 2005-04-27 at 07:33 +0300, Razvan MIHAIU wrote:
Eric van der Vlist wrote: 
On mar, 2005-04-26 at 13:22 -0700, Chris Griffin wrote:
In section 3.14.2 of http://www.w3.org/TR/xmlschema-1/ it says "{any  
attributes with non-schema namespace . . . }" Does that mean I can  
add my own attributes? For example can I do this:

  <simpleType name="myName" xyz:myattribute="something">
   . . .

    I was not aware of this feature before. In fact, if the above is
true, it is not possible to validate an XML Schema (which itself is an
XML document) against a DTD because there is no way to specify in a
DTD that an element can have any attributes.
    The obvious question is why would you need attributes outside the
XML Schema specification ? If you extend an XML Schema in such a way
then you defeat one of the main goals of XML, which is to be portable
(only you tool will understand the custom attributes)

That depends what you call portable. Your schemas are still portable in
the sense that they are still producing the same results when used by a
schema processor to validate a document. 

    This depends on how would you choose to use your custom attributes. Please take a look at the following example:

    <xsd:element name="Test1" type="xsd:integer" abc:SquareRoot="RealSpace"/>

    Of course, this can be much more easily expressed in XML Schema by forcing the integer to be positive.

    I am sorry, but I am unable to provide an example in which standard XML Schema cannot be used for validation but for which such an extension would do the job. I would need to search the XML-DEV archive about some constraints that can only be expressed in Schematron or RelanxNG and not in XML Schema. Anyway, I hope that you understand my point.

In other words, the core features defined in the WXS recommendations are
portable (or should be if all the implementations were conformant, but
that's another thread!).

Now, allowing foreign namespaces does insure that another of the main
goal of XML (to be eXtensible) can be achieved and that's a trade off:
    You have custom data types, you have inheritance !! This is what extensibility is in the first place.

    Really, the question comes down to practice: have you ever encoutered in practice a complex solution based on this kind of extension ? I mean something more complicated that the "xml:lang" attribute example provided by Ian Hunter.


SCJP preparation material:



News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS