[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Re: [relax-ng-comment] conformance testing
The full syntax requires <start> to have exactly one child pattern.
--On 13 November 2001 13:04 +1100 Gary Stephenson <garys@ihug.com.au> wrote:
> Hello,
>
> In test no 81 of James' test suite, the following is asserted to be
> invalid
>
> <grammar xmlns="http://relaxng.org/ns/structure/0.9">
> <start>
> <element name="foo">
> <empty/>
> </element>
> <empty/>
> </start>
> </grammar>
>
> What is wrong with this? After simplifying up to step 4.19 (before
> processing <empty/>s I get:
>
> ( T_Root :
> ( T_Grammar :
> ( DEFINE - start :
> ( T_Group :
> ( REF : __sub__2 )
> ( T_Empty )
> )
> )
> ( DEFINE - __sub__2 :
> ( ELEMENT (
> ( EXPANDED-NAME : {,foo} )
> ( T_Empty )
> )
> )
> )
> )
>
> After applying step 4.20 I get:
>
> ( T_Root :
> ( T_Grammar :
> ( DEFINE - start :
> ( REF : __sub__2 )
> )
> ( DEFINE - __sub__2 :
> ( ELEMENT (
> ( EXPANDED-NAME : {,foo} )
> ( T_Empty )
> )
> )
> )
> )
>
> which seems OK to me. I can't understand where the invalidity is
> supposed to come from.
>
> Last week I posted the following message, with no response (as yet). If
> this is because this is not the correct list for posting such messages,
> please let me know, and I will cease and desist. I am not a member of
> OASIS, and cannot currently afford to join, so if this means that I am
> unable to get further assistance in progressing my implementation further
> then so be it.
>
> In test no 292 from James Clark's test suite we have :
>
> <?xml version="1.0" encoding="utf-8"?>
> <choice xmlns="http://relaxng.org/ns/structure/0.9">
> <element name="foo">
> <empty/>
> </element>
> <group>
> <notAllowed/>
> <element name="bar">
> <group>
> <data type="token"/>
> <data type="token"/>
> </group>
> </element>
> </group>
> </choice>
>
> After running this through the simplification process - but before
> executing step 4.19 (process notAllowed's) I get :
>
> ( T_Root :
> ( T_Grammar :
> ( DEFINE - start :
> ( T_Choice :
> ( REF : __sub__2 )
> ( T_Group :
> ( T_NotAllowed )
> ( REF : __sub__3 )
> )
> )
> )
> ( DEFINE - __sub__2 :
> ( ELEMENT
>
> ( EXPANDED-NAME : {,foo} )
> ( T_Empty )
> )
> )
> ( DEFINE - __sub__3 :
> ( ELEMENT
>
> ( EXPANDED-NAME : {,bar} )
> ( T_Group :
> ( DATA : token )
> ( DATA : token )
> )
> )
> )
> )
> )
>
> After executing step 4.19 - i.e. removing the notAllowed's I end up with:
>
> ( T_Root :
> ( T_Grammar :
> ( DEFINE - start :
> ( REF : __sub__2 )
> )
> ( DEFINE - __sub__2 :
> ( ELEMENT
>
> ( EXPANDED-NAME : {,foo} )
> ( T_Empty )
> )
> )
> ( DEFINE - __sub__3 :
> ( ELEMENT
>
> ( EXPANDED-NAME : {,bar} )
> ( T_Group :
> ( DATA : token )
> ( DATA : token )
> )
> )
> )
> )
> )
>
> Note that the __sub__3 define has now been "orphaned" - there is no
> longer any reference to it. When I then run content-type check (section
> 7.2) I get a content-type error for that define - 'coz groupable( data(),
> data() ) --> false.
>
> So, it would appear that after running simplification steps 4.19 and
> 4.20, I need to again check for and remove any define's orphaned in the
> process - yes?
>
> Also, is my processor correct in rejecting the __sub__3 element pattern
> as not having a defined content-type?
>
> Many tias,
>
> gary
>
>
>
>
> ----------------------------------------------------------------
> 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