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

 


Help: OASIS Mailing Lists Help | MarkMail Help

relax-ng-comment message

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


Subject: RE: [relax-ng-comment] Mixing patterns and (empty) tags


Hmmm. This is what I got.

C:\Rng\Examples>cat mixed.xml
<?xml version="1.0"?>
<example>The quick <a/> brown fox <b/> jumped over the lazy dog 5
times.<c/></example>

C:\Rng\Examples>cat mixed.rng
<element name="example" xmlns="http://relaxng.org/ns/structure/1.0";>
 <interleave>
  <text/>
  <element name="a"><empty/></element>
  <element name="b"><empty/></element>
  <element name="c"><empty/></element>
 </interleave>
</element>

C:\Rng\Examples>java -jar c:\lib\jing.jar mixed.rng mixed.xml

C:\Rng\Examples>java -jar c:\lib\msv.jar mixed.rng mixed.xml
start parsing a grammar.
validating mixed.xml
the document is valid.

C:\Rng\Examples>

One problem I saw in your instance was that you probably intended </b> to be
<b/>.

Hope it helps,

Mike

P.S. This also works. It's syntax sugar for <interleave><text/> pattern
</interleave>

<element name="example" xmlns="http://relaxng.org/ns/structure/1.0";>
 <mixed>
  <element name="a"><empty/></element>
  <element name="b"><empty/></element>
  <element name="c"><empty/></element>
 </mixed>
</element>

> -----Original Message-----
> From: Daniel Prager [mailto:danielp@deakin.edu.au]
> Sent: Thursday, September 26, 2002 7:48 PM
> To: relax-ng
> Subject: [relax-ng-comment] Mixing patterns and (empty) tags
>
>
> How do you mix restricted text patterns with empty elements
> (used to represent escaped text)?
>
> <example>
>     The quick <a/> brown fox </b> <a/> jumped <c/> over the lazy
> dog 5 times.
> <c/>
> </example>
>
> I've tried  variants on
>
>  <element name="example">
>   <zeroOrMore>
>    <choice>
>     <list>
>      <oneOrMore>
>       <data type="token">
>                 <param name="pattern">[a-zA-Z0-9]+</param>
>             </data>
>      </oneOrMore>
>     </list>
>
>     <element name="a"> <empty/> </element>
>     <element name="b"> <empty/> </element>
>     <element name="c"> <empty/> </element>
>   </zeroOrMore>
>  </element>
>
> and with <interleave>, but both MSV and Jing give cryptic error messages.
>
> [ For extra gratitude can anyone tell me whether XSD can cope with this? ]
>
>
> Thanks in advance
>
> Daniel
>
> --
> Dr Daniel Prager
> Research Fellow & Consultant
> Deakin University & Freelance
>
> Phone: +61 3 9251 7484
> Web: www.deakin.edu.au/~danielp
>
>
>
> ----------------------------------------------------------------
> To subscribe or unsubscribe from this elist use the subscription
> manager: <http://lists.oasis-open.org/ob/adm.pl>
>



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


Powered by eList eXpress LLC