ZVON > Tutorials > XML Schema and Relax NG Tutorial |
Intro / Search / ZVON |
Index | >> Example 2 / 4 << | Prev | Next | |
Let's say we use "any" or "anyAttribute" elements and set their attribute "processContents" to value "lax". Then those elements/attributes, which are represented by the "any/anyAttribute" pattern are validated as follows: if there is a definition for them, they must be valid with respect to that definition. If there is no definition, never mind. 3.10.1 The Wildcard Schema Component
Valid document <foo:root xsi:schemaLocation="http://foo correct_0.xsd" xmlns:foo="http://foo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bar="http://bar" > <bar:x>1</bar:x> <bar:x>2</bar:x> </foo:root> Valid document <foo:root xsi:schemaLocation="http://foo correct_0.xsd" xmlns:foo="http://foo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bar="http://bar" > <bar:x>1</bar:x> <x xmlns="">xyz</x> <bar:x>2</bar:x> </foo:root> Invalid document <foo:root xsi:schemaLocation="http://foo correct_0.xsd" xmlns:foo="http://foo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bar="http://bar" > <bar:x>1</bar:x> <bar:x>aaa</bar:x> </foo:root> |
Correct XML Schema (correct_0.xsd) <xsd:schema targetNamespace="http://foo" xmlns:xsd="http://www.w3.org/2001/XMLSchema" > <xsd:import namespace="http://bar" schemaLocation="correct_1.xsd"/> <xsd:element name="root"> <xsd:complexType> <xsd:sequence minOccurs="1" maxOccurs="1"> <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded" processContents="lax"/> </xsd:sequence> </xsd:complexType> </xsd:element> </xsd:schema> Correct XML Schema (correct_1.xsd) <xsd:schema targetNamespace="http://bar" xmlns:xsd="http://www.w3.org/2001/XMLSchema" > <xsd:element name="x" type="xsd:integer"/> </xsd:schema> |