Re: <length> = a real number plus a unit qualification

Hi Chuck,

> I'm trying to create a simpleType definition for length, which is
> defined as a real number plus a unit qualification. I've come up
> with this, which I know is wrong.
>
>    <simpleType name = "length_Type">
>        <restriction base = "NMTOKEN">
>            <pattern value = "[+-]?\d+\.?\d*[p|m|i|c|e][x|t|m|n]"/>
>        </restriction>
>    </simpleType>
>
> The unit qualification is one of px, pt, mm, in, cm, em so I
> constructed the above 2 part choice. The problem being it allows
> illegal values such as ix. How do I create a list of atoms greater
> than one character? [px|pt|mm|cm|in|em] is not right.

You need to use ()s rather than []s. The []s are used when you want to
say "one of this set of characters", so:

  [pmice]

means one of p, m, i, c or e.

So you need:

<simpleType name="length_Type">
  <restriction base="NMTOKEN">
    <pattern value = "[+-]?\d+\.?\d*(px|pt|mm|cm|in|em)"/>
  </restriction>
</simpleType>

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/

Received on Monday, 13 May 2002 16:24:36 UTC