[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] variables in XSD?
- From: "G. Ken Holman" <gkholman@CraneSoftwrights.com>
- To: xml-dev@lists.xml.org
- Date: Wed, 23 Mar 2011 10:27:25 -0700
At 2011-03-23 09:48 -0700, trubliphone wrote:
>Hello. Is there any way to use variables w/in XSD?
>
>I would like to bind the maxOccurs attribute of an element to a value
>defined elsewhere in the XSD file. It could either be defined as its
>own variable or as a computed value. I've been working in XSL for so
>long, I just sort of assumed I could do this:
>
><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
>
> <xs:element name="root">
> <xs:complexContent>
> <xs:sequence>
> <xs:element name="foo" minOccurs="0" maxOccurs="$n"/>
> </xs:sequence>
> </xs:complexContent>
> </xs:element>
>
> <!-- I know this is wrong -->
> <xs:variable name="n">23</xs:variable>
>
></xs:schema>
>
>Obviously, this won't work. But is there any way it could work? I
>don't think so, I just thought I'd double-check.
Computed values aren't possible, but string replacement certainly is
in any XML file:
<!DOCTYPE xs:schema
[
<!ENTITY n "unbounded">
]>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="root">
<xs:complexContent>
<xs:sequence>
<xs:element name="foo" minOccurs="0" maxOccurs="&n;"/>
</xs:sequence>
</xs:complexContent>
</xs:element>
</xs:schema>
I hope this helps.
. . . . . . . . . . . Ken
--
Contact us for world-wide XML consulting & instructor-led training
Crane Softwrights Ltd. http://www.CraneSoftwrights.com/x/
G. Ken Holman mailto:gkholman@CraneSoftwrights.com
Legal business disclaimers: http://www.CraneSoftwrights.com/legal
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]