View Single Post
Old 09-29-2006, 09:37 AM   #1 (permalink)
feelgood
Free Mars!
 
feelgood's Avatar
 
Location: I dunno, there's white people around me saying "eh" all the time
[xml] Invalid Pattern

I've tested the pattern epxression in QuickREX for eclipse and it stated that the pattern is correct for American and Canadian Postal Code

Code:
<xsd:simpleType name="PostalFormat">
	<xsd:restriction base="xsd:string">
		<xsd:pattern value="(\d{5})(-\d{4})?"/>
		<xsd:pattern value="([ABCEGHJKLMNPRSTVXY]\d[A-Z](( )*|-)/?\d[A-Z]\d)$"/>
	</xsd:restriction>
</xsd:simpleType>

...

<xsd:element name="postal-code" type="PostalFormat"/>
However, when I use "T0J 1X0", "T0J1X0" "T0J-1X0" without the quotes in the xml document, the parser stated that the element wasn't following the pattern. When I changed the code to this instead:

Code:
<xsd:simpleType name="PostalFormat">
	<xsd:restriction base="xsd:string">
		<xsd:pattern value="(\d{5})(-\d{4})?|([ABCEGHJKLMNPRSTVXY]\d[A-Z]( |-)?\d[A-Z]\d)$"/>
	</xsd:restriction>
</xsd:simpleType>
The input strings that I used above was accepted. Any idea why its not working for the first set of code? I know that multiple definition of patterns are accepted in xml schema
__________________
Looking out the window, that's an act of war. Staring at my shoes, that's an act of war. Committing an act of war? Oh you better believe that's an act of war
feelgood is offline  
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73