Subject: Re: [xsl] Regular expressions in a schema From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Sat, 11 May 2002 01:10:51 +0100 |
Hi Chuck, XML Schema questions are best directed to xmlschema-dev@xxxxxxx But I'll answer this here anyway... > I'm trying to write a validating pattern in my schema to allow from > 1 to 4 occurrances of the pattern [+]?[\.0-9]+%[ ]? > > (That's 1 - 4 real number percentages delimited by a space) > > <simpleType name = "background_position_percentage_Type"> > <restriction base = "string"><!-- percentage_Type{1,4} --> > <pattern value = "[[+]?[\.0-9]+%[ ]?]{1,4}"/> > </restriction> > </simpleType> > > doesn't work because I can't put [] inside of an atom. Does anyone > know if there is a proper way to write this pattern? You just need to use braces to group together the atoms, rather than square brackets: (+?[\.0-9]+% ?){1,4} although having said that, you'd be better off creating a list type that was limited to between one and four real number percentages, as follows: <xs:simpleType name="background_position_percentage_type"> <xs:restriction> <xs:simpleType> <xs:list> <xs:simpleType> <xs:restriction base="xs:token"> <xs:pattern value="+?[\.0-9]+%" /> </xs:restriction> </xs:simpleType> </xs:list> </xs:simpleType> <xs:minLength value="1" /> <xs:maxLength value="4" /> </xs:restriction> </xs:simpleType> Among other things (and to try to keep this vaguely on topic), this specifies the type as a list type, which means that an XPath 2.0 processor will be able to create a sequence of real number percentages automatically, rather than you having to break up the string yourself to get at the values. You might want to revisit your regular expression so that the numbers that you get can't have two or more decimal points in them, or change the markup language so that you don't include the % signs in the list, and instead just make it a list of real numbers -- that would have the added benefit that a processor would deliver the numbers rather than you having to convert them yourself. Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Regular expressions in a sche, Chuck Paussa | Thread | Re: [xsl] Regular expressions in a , David Carlisle |
[xsl] Regular expressions in a sche, Chuck Paussa | Date | [xsl] apply-templates abnormality??, Nesbitt, David |
Month |