Subject: Re: [xsl] Schema restriction between attributes From: Colin Paul Adams <colin@xxxxxxxxxxxxxxxxxx> Date: 31 May 2003 06:53:16 +0100 |
>>>>> "Eran" == Eran Hammer-Lahav <xalan@xxxxxxxxx> writes: Eran> Is there a way in a schema to specify restrictions on one Eran> attribute if another has a certain value? Here is an Eran> example: Eran> <?xml version="1.0" ?> <xs:schema id="x" targetNamespace="x" Eran> xmlns:x="x" xmlns:xs="http://www.w3.org/2001/XMLSchema" Eran> version="1.0"> <xs:element name="structure"> Eran> <xs:complexType> <xs:sequence> <xs:element name="field" Eran> minOccurs="0" maxOccurs="unbounded"> <xs:complexType> Eran> <xs:attribute name="name" type="xs:string" use="required" /> Eran> <xs:attribute name="type" type="omm:memberType" Eran> use="required" /> <xs:attribute name="typeName" Eran> type="xs:string" use="optional" /> </xs:complexType> Eran> </xs:element> </xs:sequence> <xs:attribute name="class" Eran> type="xs:string" use="required" /> <xs:attribute Eran> name="dbTable" type="xs:string" use="required" /> Eran> </xs:complexType> </xs:element> </xs:schema> Eran> I want that if structure/@type = 'enum', structure/@typeName Eran> will not be empty. Is there a way to achieve this in the Eran> schema? I know I can do this in the xslt script, by check Eran> each value and using the <xsl:message> message to end Eran> execution, but I would like to have the schema control this. You can do this by embedding Schematron rules within the schema. See: http://www.topologi.com/public/Schtrn_XSD/Paper.html -- Colin Paul Adams Preston Lancashire XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Schema restriction between at, Eran Hammer-Lahav | Thread | [xsl] "Text" Representaion of Xml i, Alan Flaherty |
RE: [xsl] Re: Flat -> Hierarchy ---, Dongling Ding | Date | [xsl] Re: Looking for an equivalent, Dimitre Novatchev |
Month |