DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21882>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21882

TraverseSchema::checkAttDerivationOK() incorrect for prohibited attributes

           Summary: TraverseSchema::checkAttDerivationOK() incorrect for
                    prohibited attributes
           Product: Xerces-C++
           Version: 2.3.0
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Validating Parser (Schema) (Xerces 1.5 or up only)
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


Constraints 2.1.2 and 2.1.3 do not apply if derived attribute has 
use="prohibited". The correct behaviour is found in 
org.apache.xerces.impl.xs.XSAttributeGroupDecl (Xerces2 Java Parser 2.4.0 
Release).

Fix (based on XSAttributeGroupDecl) is to insert following block before the 
2.1.2 check in the two versions of checkAttDerivationOK().

>    // if this attribute is prohibited in the derived type, don't
>    // need to check any of the following constraints.
>    if (childAttDefType == XMLAttDef::Prohibited) {
>        continue;
>    }

     // Constraint 2.1.2
     DatatypeValidator* baseDV = baseAttDef->getDatatypeValidator();
     ...


In current HEAD (Revision 1.83) the line numbers are 7319 and 7395.


Gareth

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

Reply via email to