[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] Performance Vs Size of XSD + Extension of restriction
- From: "Sudheshna Iyer" <sudheshnaiyer@hotmail.com>
- To: petexmldev@tech-know-ware.com, xml-dev@lists.xml.org
- Date: Mon, 05 Feb 2007 19:27:20 -0500
Thank you very much for your clear explanation.
Sudheshna
>From: "Pete Cordell" <petexmldev@tech-know-ware.com>
>To: "Sudheshna Iyer" <sudheshnaiyer@hotmail.com>,<xml-dev@lists.xml.org>
>Subject: Re: [xml-dev] 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@lists.xml.org
>subscribe: xml-dev-subscribe@lists.xml.org
>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]