[Home] [By Thread] [By Date] [Recent Entries]

  • From: "Sudheshna Iyer" <sudheshnaiyer@h...>
  • To: petexmldev@t..., xml-dev@l...
  • Date: Mon, 05 Feb 2007 19:27:20 -0500

Thank you very much for your clear explanation.

Sudheshna





>From: "Pete Cordell" <petexmldev@t...>
>To: "Sudheshna Iyer" <sudheshnaiyer@h...>,<xml-dev@l...>
>Subject: Re:  Performance Vs Size of XSD + Extension of 
>restriction
>Date: Mon, 5 Feb 2007 20:26:33 -0000
>
>----- Original Message From: "Sudheshna Iyer" > Pete, I didn't get what you 
>are saying.
>>
>>I want my 'ChildType' to inherit the restrictions 'minLength' and 
>>'whiteSpace' from 'OrigType' and
>>has its own 'maxLength'. So will the following info solve the requirements 
>>relating to both syntax and semantics?
>>
>><xs:simpleType name="OrigType">
>><xs:restriction base="xs:string">
>><xs:minLength value="1"/>
>><xs:maxLength value="20"/>
>><xs:whiteSpace value="collapse"/>
>></xs:restriction>
>></xs:simpleType>
>>
>><xs:simpleType name="ChildType">
>><xs:restriction base="OrigType">
>><xs:maxLength value="40"/>
>></xs:restriction>
>></xs:simpleType>
>
>As Michael said, restriction restricts what a type can accept.  So if you 
>want to define types that only accept subsets of values that other types 
>accept, then you have to start off defining the least restricted type and 
>then progressively define each more restricted type from the previously 
>(less) restricted type.
>
>A type that accepts a string of 40 characters is less restricted than a 
>string that accepts a string of 20 characters.  Therefore, in your case you 
>have to define ChildType first.  Hence, using your names, you get:
>
><xs:simpleType name="ChildType">
><xs:restriction base="xs:string">
><xs:minLength value="1"/>
><xs:maxLength value="40"/>
><xs:whiteSpace value="collapse"/>
></xs:restriction>
></xs:simpleType>
>
><xs:simpleType name="OrigType">
><xs:restriction base="ChildType">
>   <xs:maxLength value="20"/>
></xs:restriction>
></xs:simpleType>
>
>OrigType will inherit the restrictions of ChildType.  So OrigType is 
>equivalent to:
>
><xs:simpleType name="OrigType">
><xs:restriction base="ChildType">
>   <xs:minLength value="1"/>
>   <xs:maxLength value="20"/>
>   <xs:whiteSpace value="collapse"/>
></xs:restriction>
></xs:simpleType>
>
>Note that I'm referring to order of derivation here, not the order they 
>appear in the XSD file (which isn't) significant.  So the XSD file contents 
>could equally be:
>
><xs:simpleType name="OrigType">
><xs:restriction base="ChildType">
>   <xs:maxLength value="20"/>
></xs:restriction>
></xs:simpleType>
>
><xs:simpleType name="ChildType">
><xs:restriction base="xs:string">
><xs:minLength value="1"/>
><xs:maxLength value="40"/>
><xs:whiteSpace value="collapse"/>
></xs:restriction>
></xs:simpleType>
>
>HTH,
>
>Pete.
>--
>=============================================
>Pete Cordell
>Tech-Know-Ware Ltd
>for XML to C++ data binding visit
>http://www.tech-know-ware.com/lmx
>(or http://www.xml2cpp.com)
>=============================================
>
>
>
>_______________________________________________________________________
>
>XML-DEV is a publicly archived, unmoderated list hosted by OASIS
>to support XML implementation and development. To minimize
>spam in the archives, you must subscribe before posting.
>
>[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
>Or unsubscribe: xml-dev-unsubscribe@l...
>subscribe: xml-dev-subscribe@l...
>List archive: http://lists.xml.org/archives/xml-dev/
>List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>

_________________________________________________________________




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


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member