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] xsi:type handling

[ Lists Home | Date Index | Thread Index ]

If you declare an element to be of type MyDerivedFromShortType, then you can
use xsi:type to further restrict it to a subtype of MyDerivedFromShortType,
but you can't relax the restrictions by making it an xs:short.

I wouldn't personally derive a restricted integer value from short, unless
you have some reasons I don't know about. The type you've defined could just
as validly be derived from xs:byte, or xs:unsignedInt, or
xs:nonNegativeInteger. If there are no structural semantics (like
"pass-grade" being derived from "grade") I prefer to derive such types
directly from xs:integer. So long as you're only doing validation it doesn't
really matter, but once you start using typed values in your application it
makes a difference.

Michael Kay

> -----Original Message-----
> From: Yves Langisch [mailto:lists@langisch.ch] 
> Sent: 23 May 2005 09:19
> To: xml-dev@lists.xml.org
> Subject: [xml-dev] xsi:type handling
> All,
> I have a derived type from short in my schema such as:
>      <xs:simpleType name="MyDerivedFromShortType">
>          <xs:restriction base="xs:short">
>              <xs:minInclusive value="1"/>
>              <xs:maxInclusive value="100"/>
>          </xs:restriction>
>      </xs:simpleType>
> My question now is, if following line in a instance document is valid?
>         <ns2:MyDerivedFromShort
> xsi:type="xsd:short">99</ns2:MyDerivedFromShort>
> When parsing this with Xerces it will throw
> Validation error: LineNumber: 48 ColumnNumber: 2883 Message: 
> cvc-elt.4.3: Type 'xsd:short' is not validly derived from the type 
> definition, 'MyDerivedFromShortType', of element
> 'ns2:MyDerivedFromShort'.:
> Can someone confirm that Xerces' behaviour is reasonable?
> Thanks
> Yves
> -----------------------------------------------------------------
> The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
> initiative of OASIS <http://www.oasis-open.org>
> The list archives are at http://lists.xml.org/archives/xml-dev/
> To subscribe or unsubscribe from this list use the subscription
> manager: <http://www.oasis-open.org/mlmanage/index.php>


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

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