← Prev in month ← Prev in thread

[relax-ng] Re: RELAX NG + Schematron

From
Kohsuke KAWAGUCHI <>
Date
2001-10-18T00:52:39+00:00
ID
Thread
[relax-ng] Re: RELAX NG + Schematron
> Are you effectively doing type assignment (ie associating element patterns 
> with elements) and then checking constraints based on the assignment?

Yes.


> Or 
> does the assertion affect whether an element is considered to match the 
> element pattern?

No. Schematron assertions are checked after all the document is parsed.
As you know, a schematron assertion can potentially access the whole
document, so I don't think it's possible to use the assertion to affect
the match.


> If the former, what constraints are you imposing to enable type-assignment?

Right now, none. It's just assuming naively that there is no ambiguity
in the schema. So it will not work correctly for schemas like:

<choice>
  <element name="foo">
    <s:assert test="false"/>
    <empty/>
  </element>
  <element name="foo">
    <s:assert test="false"/>
    <empty/>
  </element>
</choice>

Where it should reject <foo/>, the current implementation accepts it.

I really want to find a restriction that makes the type-assignment
possible, but so far I no luck. I think it's very hard to develop an
algorithm which is complete as well as sound.

So the only hope is to develop a sound algorithm, if not complete.
Are you (or anyone) interested in such a restriction? Is it OK to
discuss more about this here?



regards,
--
Kohsuke KAWAGUCHI                          +1 650 786 0721
Sun Microsystems                   
← Prev in month ← Prev in thread