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


I have a question in regards to simple type definitions.  I have defined a simple type of string length 5 declared as follows:

        <xsd:simpleType name = "String5VariableType">
                <xsd:restriction base = "xsd:string">
                        <xsd:maxLength value = "5" fixed = "true"/>
                </xsd:restriction>
        </xsd:simpleType>

I am using this simple type for several local elements.  I would also like to declare another simple type (for example, called "SomeNewCodeType") which will also be string length 5.  I can certainly declare it as follows:

        <xsd:simpleType name = "SomeNewCodeType">
                <xsd:restriction base = "xsd:string">
                        <xsd:maxLength value = "5" fixed = "true"/>
                </xsd:restriction>
        </xsd:simpleType>

However, I'd like to define the "SomeNewCodeType" simple type as type "String5VariableType" if possible.  The only way I see that this can be done is by declaring a restriction with a base type of "String5VariableType" and then specifying a facet such as maxInclusive of "99999" (to have something listed as a restriction), or perhaps a regular expression - but this seems awful kludgy.

Any thoughts?

So, you just want to define a new SimpleType that has the same semantics as the String5VariableType?
In that case you can do a restriction without defining any more facets:

        <xsd:simpleType name = "SomeNewCodeType">
                <xsd:restriction base = "String5VariableType"/>
        </xsd:simpleType>

This will make SomeNewCodeType the same as String5VariableType.

Cheers,
/Eddie
 


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