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] RELAX NG equivalent of <xsd:any processContents="lax">?

It's not about recursion. This won't work because the reference you make in the <start> element is resolved to zeroOrMore elements and a document cannot have several roots.

See RELAX NG specification:

Simplification, section 4.15 zeroOrMore element
http://relaxng.org/spec-20011203.html#IDAGHZR

Restrictions, section 7.15 start element
http://relaxng.org/spec-20011203.html#context-start


2007/2/7, Jeff Lowery <jlowery@myrio.com>:
Thanks for your help. I'm thankful for what functionality there is in
RELAX NG, trust me.

Just for kicks I tried self-referencing back to the schema, but
recursion is not allowed (ah well).

Test.rng :

<?xml version="1.0"?>
<grammar
  xmlns="http://relaxng.org/ns/structure/1.0"
  ns="http://foo.org/bar ">

    <start>
        <ref name="children"></ref>
    </start>

    <define name="children">
        <zeroOrMore>
            <element>
                <anyName>
                    <except>
                        <nsName/>
                    </except>
                </anyName>
                <ref name="children"></ref>
            </element>
        </zeroOrMore>
        <optional>
            <ref name="interestingElements"></ref>
        </optional>
    </define>

    <define name="interestingElements">
        <choice>
            <externalRef href=""Test.rng"/>        </choice>
    </define>

</grammar>




[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