Re: Restricting attribute content to not include a specific string

Hi Roman,

"Not a pattern" doesn't seem to be something XSD supports.  I think the only 
way this can be done is by doing something like:

<xs:simpleType name="attrValue">
<xs:restriction base="xs:string">
<xs:pattern value=""/>
<xs:pattern value="[^u].*"/>
<xs:pattern value="u[^n].*"/>
<xs:pattern value="un[^k].*"/>
<xs:pattern value="unk[^n].*"/>
<xs:pattern value="unkn[^o].*"/>
<xs:pattern value="unkno[^w].*"/>
<xs:pattern value="unknow[^n].*"/>
<xs:pattern value="unknown.+"/>
</xs:restriction>
</xs:simpleType>

Not a pretty sight!

(Note that . does not match \n, so if you want your extra text to include \n 
you will have to modify the . bit.)
Pete.
--
=============================================
Pete Cordell
Tech-Know-Ware Ltd
                         for XML to C++ data binding visit
                         http://www.tech-know-ware.com/lmx
                         (or http://www.xml2cpp.com)
=============================================

----- Original Message ----- 
From: "Huditsch, Roman (LNG-VIE)" <Roman.Huditsch@lexisnexis.at>
To: <xmlschema-dev@w3.org>
Sent: Thursday, April 20, 2006 7:59 AM
Subject: Restricting attribute content to not include a specific string



Hi,

I need to restrict attribute values in my Schema to not be the string
"unknown".
So I declared a simple type as follows:

<xs:simpleType name="attrValue">
<xs:restriction base="xs:string">
<xs:pattern value="^(unknown)"/>
</xs:restriction>
</xs:simpleType>

Since I am not experienced with regular expressions I am kind of stuck
on the pattern value.
Do you have any idea, how to make that restriction in the most simple
way?
Thank you very much for your help.

best regards,
Roman

Received on Thursday, 20 April 2006 08:49:50 UTC