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

 


Help: OASIS Mailing Lists Help | MarkMail Help

relax-ng message

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


Subject: Re: Issue: restrict <interleave>



I certainly welcome some restrictions for <interleave>, but I have a
question about the reasons you mentioned.


For example, the following pattern still satisfies the imposed restriction
but it still causes a combinatory explosion.

<element>
  <interleave>
    <ref name="a"/>
    <ref name="b"/>
    ...
    <ref name="z"/>
  </interleave>
</element>

So my understanding is that your proposed restrictions are not for
making the automaton-based validation possible, but for making a simple
workaround for them.

If so, what is the point of allowing <choice>, as suggested in your note?
It makes the workaround difficult, doesn't it.



Also, I think it would be nice if we can allow the following pattern (in
the normalized form)

<element>
  <group>
    <!-- interleaved element contents -->
    <interleave>
      <element A/>
      <element B/>
      ..
    </interleave>
    <!-- a big tree of attributes -->
    <choice>
      <attribute A/>
      <attribute B/>
    </choice>
  </group>
</element>

Because this <group> is essentially the same as an <interleave>. I think
this situation happens very frequently because we'are assuming implicit
<group> for <element> patterns. We'll get the above internal form if the
user writes the following external form:

<element>
  <interleave>
    <element A/>
    <element B/>
  </interleave>
  <ref name="attributes"/>
</element>

<define name="attributes">
  <choice>
    <attribute A/>
    <attribute B/>
  </choioce>
</define>


regards,
--
Kohsuke KAWAGUCHI                          +1 650 786 0721
Sun Microsystems                   kohsuke.kawaguchi@sun.com



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


Powered by eList eXpress LLC