W3C home > Mailing lists > Public > xmlschema-dev@w3.org > June 2006

Re: declaring an element having subelements and restricted child-text-node value

From: George Cristian Bina <george@oxygenxml.com>
Date: Tue, 06 Jun 2006 14:50:30 +0300
Message-ID: <44856C06.10601@oxygenxml.com>
To: Vasilis Vagenas <vagenas.v@gmail.com>
Cc: xmlschema-dev@w3.org


When you have mixed content you cannot place constraints on the text 
nodes. In fact in your sample the Brand element has 3 text nodes:

"HP\n  "
"\n  "

where \n stands for new line.

However, if you use Schematron then you can add rules to check for what 
you want but I would recommend changing the XML structure to have the 
brand name inside an element or attribute:



<Brand Name="HP">

Best Regards,
George Cristian Bina
<oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger

Vasilis Vagenas wrote:
> I am trying to write an xml schema which will allow xml instance
> documents of the following form:
> [............]
> <Brand>X1
>   <Type>X2
> [............]
> where X1 must belong to a set of string values, e.g. X1 in {"HP", 
> "Toshiba"}
> and X2 must belong to another set of string values, e.g. X2 in
> {"Laptop","Desktop"}.
> For examle:
> <Brand>HP
>   <Type>Laptop</Type>
>   <Type>Desktop</Type>
> </Brand>
> How can I declare an element that satisfies the following:
> 1) it has subelements and
> 2) the value of its child-text node is restricted (to belong to a set
> of values),
> just as in the example above?
> I can declare an element satisfying either condition 1 or condition 2,
> but not both of them.
> Thank you very much!
Received on Tuesday, 6 June 2006 11:48:00 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 14:56:10 UTC