OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] RelaxNG question

[ Lists Home | Date Index | Thread Index ]

Tim Bray wrote:

> I'm writing a schema for something that will serve as a container,

I guess this is fecho*.


> I'm fiddling with name classes and "-" and having trouble getting it to 
> do what I want.  There's an example in section 11 of the RNC tutorial 
> that kind of does this with attributes. Anyone done this?


This goes some of the way:

<?xml version="1.0"?>
<grammar
   xmlns="http://relaxng.org/ns/structure/1.0";
   >
   <start>
     <ref name="anyWithNS"/>
   </start>

   <define name="anyWithNS">
     <element name="grammar" ns="http://www.example.com";>
       <zeroOrMore>
         <attribute>
           <anyName>
           </anyName>
         </attribute>
       </zeroOrMore>
        <zeroOrMore>
          <choice>
            <text/>
            <ref name="inverseNS" />
          </choice>
        </zeroOrMore>
     </element>
   </define>
   <define name="inverseNS">
     <element>
       <anyName >
         <except>
           <nsName ns="http://www.example.com"; />
         </except>
       </anyName >
       <zeroOrMore>
         <attribute>
           <anyName>
             <except>
               <nsName ns="" />
               <nsName ns="http://www.example.com"; />
             </except>
           </anyName>
         </attribute>
       </zeroOrMore>
       <zeroOrMore>
         <choice>
           <text/>
           <ref name="inverseNS" />
         </choice>
        </zeroOrMore>
     </element>
   </define>
</grammar>


it will allow child elements to be in no namespace, I'm not sure you 
can spec the rejection of non-namepaced elements with rng; anyway it 
seems a daft enough constraint. You can use trang to blow out the rnc.

Bill de hÓra

-- 
Technical Architect
Propylon
http://www.propylon.com


* Surely Father Ted fans would like this name





 

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

Copyright 2001 XML.org. This site is hosted by OASIS