Message:

  A new issue has been created in JIRA.

---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/XERCESC-1281

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: XERCESC-1281
    Summary: Validation by restriction doesn't take into account substitution groups
       Type: Bug

     Status: Unassigned
   Priority: Major

    Project: Xerces-C++
 Components: 
             Validating Parser (Schema) (Xerces 1.5 or up only)
   Versions:
             2.5.0

   Assignee: 
   Reporter: Alberto Massari

    Created: Thu, 30 Sep 2004 3:53 AM
    Updated: Thu, 30 Sep 2004 3:53 AM
Environment: Windows XP, Visual C++ 6.0

Description:
Running SaxCount -n -f -s rT.xml shows the following errors:

Error at file c:\testcase\schema-restriction/restrictionTest.xsd, line 42, char 30
  Message: Recurse: There is not a complete functional mapping between the particles

Error at file c:\testcase\schema-restriction/restrictionTest.xsd, line 63, char 30
  Message: Forbidden restriction of 'choice': All,Seq,Leaf

The first error is caused by a restriction of A1_Type, replacing a sequence of O1 with 
a sequence of O2, O2 being in the substitution group of O1.
The second error is caused by a restriction of B1_Type, replacing a sequence of O1 
with a sequence of a choice of O2. Here Xerces complains that a choice should not be 
matched against a single element; but if Xerces had implemented this rule from the 
spec (§ 3.9.6 "Constraints on Particle Schema Components", section "Schema Component 
Constraint: Particle Valid (Restriction)", point 2.1 "Any top-level element 
declaration particle (in R or B) which is the {substitution group affiliation} of one 
or more other element declarations and whose - substitution group-  contains at least 
one element declaration other than itself is treated as if it were a choice group 
whose {min occurs} and {max occurs} are those of the particle, and whose {particles} 
consists of one particle with {min occurs} and {max occurs} of 1 for each of the 
declarations in its - substitution group- ") the sequence of O1 would have been 
replaced with a sequence of a choice between O1 and O2, and this would have matched 
this choice with the one in the B2_Type declaration.

Alberto


---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to