XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
RE: [xml-dev] increment pattern for an attribute..

On Tue, 2007-11-06 at 20:35 +0000, Michael Kay wrote:
>  > 
> > I use W3C XML schema language 1.0.
> 
> Well, I assumed you were aware that what you are asking for is well beyond
> the expressive power of XSDL 1.0.
 
If you were desparate, you could try the following hack:  

<xsd:element name="data" >
	<xsd:complexType>
		<xsd:sequence>
			<xsd:element name="el">
				<xsd:complexType>
					<xsd:element ref="ch" />
					<xsd:attribute 	
					name="val"
					fixed="20" />
			</xsd:element>
		</xsd:element>

		<xsd:sequence minOccurs="0">
			<xsd:element name="el">
				<xsd:complexType>
					<xsd:element ref="ch" />
					<xsd:attribute 	
					name="val"
					fixed="21" />
			</xsd:element>
		</xsd:element>


		<xsd:sequence minOccurs="0">
			<xsd:element name="el">
				<xsd:complexType>
					<xsd:element ref="ch" />
					<xsd:attribute 	
					name="val"
					fixed="22" />
			</xsd:element>
		</xsd:element>

		<xsd:sequence minOccurs="0">
			<xsd:element name="el">
				<xsd:complexType>
					<xsd:element ref="ch" />
					<xsd:attribute 	
					name="val"
					fixed="23" />
			</xsd:element>
		</xsd:element>


		<xsd:sequence minOccurs="0">
			<xsd:element name="el">
				<xsd:complexType>
					<xsd:element ref="ch" />
					<xsd:attribute 	
					name="val"
					fixed="24" />
			</xsd:element>
		</xsd:element>


		<xsd:sequence minOccurs="0">
			<xsd:element name="el">
				<xsd:complexType>
					<xsd:element ref="ch" />
					<xsd:attribute 	
					name="val"
					fixed="25" />
			</xsd:element>
		</xsd:element>

		<xsd:sequence minOccurs="0">
			<xsd:element name="el">
				<xsd:complexType>
					<xsd:element ref="ch" />
					<xsd:attribute 	
					name="val"
					fixed="26" />
			</xsd:element>
		</xsd:element>

		<xsd:sequence>
		<xsd:sequence>
		<xsd:sequence>
		<xsd:sequence>
		<xsd:sequence>
		<xsd:sequence>
		<xsd:sequence>
	</xsd:complexType>
</xsd:element>

However, this is stretching the purpose of XML Schemas. When thinking
about XSD 1.0, it is approporiate to keep in mind that it is not
designed to handle dynamic or contextual constraints, only static
issues. (With the particular exceptions of local element declarations.)

If dynamic and contextual constraints are important to you, you may be
better to keep the XSD grammars simple and use another layer for the
additional constraints. I mentioned Schematron and Mike mentioned XSD
1.1, both of which support making assertions using XPaths. 

Cheers
Rick Jelliffe



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS