xsd restriction

E

Ed Slen

Hi, Guys!
Have a question about xsd restriction:

I am having an element "state" and it could be US state (Which is
easy) or Canadian postal code which is easy too (both rules are
working separately), but I am having difficulties combining this two
rules together.
Here is what I have tried:

<xsd:simpleType name="StateType">
<xsd:union>
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:pattern value="[a-zA-Z]\d[a-zA-Z] \d[a-zA-Z]\d" />
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType>
<xsd:restriction base="b:usState">
</xsd:restriction>
</xsd:simpleType>
</xsd:union>
</xsd:simpleType>


<xsd:simpleType name="usState">
<xsd:restriction base="xsd:NMTOKEN">
<xsd:enumeration value="AL"/>
<!—and all of other states up to: à
<xsd:enumeration value="WY"/>
</xsd:restriction>
</xsd:simpleType>

this gives enumeration error if I use Canadian postal code.

Please, help!
What am I doing wrong?

Thanks in advance!
 
D

Derek Harmon

Ed Slen said:
<xsd:simpleType name="StateType"> : :
<xsd:restriction base="b:usState"> : :
<xsd:simpleType name="usState"> : :
this gives enumeration error if I use Canadian postal code.

This works for me, assuming the prefix b is defined as your targetNamespace.

Your XML Schema snippet did not include an element declaration, I'd just check
for what might be an obvious snag:

<xsd:element name="location" type="b:StateType" /> <!-- OK -->
<xsd:element name="location" type="b:usState" /> <!-- Not the Union type: Bug -->

You would get an enumeration error if the element where the Canadian postal
code appears is making reference to the b:usState type instead of the union
type, b:StateType.


Derek Harmon
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,989
Messages
2,570,207
Members
46,783
Latest member
RickeyDort

Latest Threads

Top