RE: Allowing only a fixed length or empty for an element

I don't know off-hand whether a quantifier of {0} is allowed, but it's
certainly unconventional. What's wrong with
 
pattern value="([0-9]{4})?"
 
Michael Kay
http://www.saxonica.com/


  _____  

From: xmlschema-dev-request@w3.org [mailto:xmlschema-dev-request@w3.org] On
Behalf Of Wilde Rebecca L SSgt HQ SSG/STS
Sent: 06 October 2004 21:04
To: xmlschema-dev@w3.org
Subject: Allowing only a fixed length or empty for an element



Hello, 

I am trying to create a type that allows either a four position numeric or
else must be an empty tag. 

I.E. I want <Tag/> or <Tag>0045</Tag> to be valid, but I don't want
<Tag>45</Tag> to be validated. 

I've come up with the following to try and do this: 

<xs:element name="Tag" type="TagType"/> 
<xs:simpleType name="TagType"> 
  <xs:restriction base="xs:string"> 
    <xs:pattern value="([0-9]{4})|[ ]{0}"/> 
  </xs:restriction> 
</xs:simpleType> 

I'm using XMLSpy to help me as an editor for creating most of my work and
validating it.  The above will allow me to validate/not validate as I
desired, but when others try to use XMLSpy to validate against it as an
empty tag, it comes back invalid.  

Is this a problem with XMLSpy, or is there a different way I should be
trying to accomplish my goal? 

Thank you! 
Becky 

Received on Wednesday, 6 October 2004 20:59:01 UTC