[
https://issues.apache.org/jira/browse/XERCESJ-1378?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12719751#action_12719751
]
Arthur De Magalhaes commented on XERCESJ-1378:
----------------------------------------------
With further investigation, I found 2 additional issues:
(1) we have to make sure the "built in" declarations such as xmlns:xsi would
not change the validation attempted values of the parent chain;
(2) have to distinguish between "some" attributes being found (not all, so
PARTIAL), and "all" attributes being found. This can easily be seen by having
one attribute that is declared and one that is not (ie: the parent chain should
be partial, never full, even if the parent is declared).
Please see latest patch for fixes to these issues.
> PSVI wrong for laxly validated element with validated attribute
> ----------------------------------------------------------------
>
> Key: XERCESJ-1378
> URL: https://issues.apache.org/jira/browse/XERCESJ-1378
> Project: Xerces2-J
> Issue Type: Bug
> Components: XML Schema API
> Affects Versions: 2.9.1
> Reporter: Arthur De Magalhaes
> Assignee: Arthur De Magalhaes
> Priority: Minor
> Attachments: XMLSchemaValidator_patch.txt
>
>
> Credit to Henry Zongaro for finding this bug.
> If an element is laxly assessed and it has an attribute that is strictly
> assessed, the [validation attempted] property of the element's PSVI should be
> "partial" according to
> <http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/#sic-e-outcome>.
> However, Xerces seems to set that property to "none" unless the element also
> had a child element whose [validation attempted] not "none".
> Using the two instances below, they both should have the "unknown" element
> with a validation attempted field as "partial", but only the second instance
> has that (the first one has validation attempted field as "none")
> ----- Problem recreation ---------------
> public static final String SCHEMA =
> "<xs:schema xmlns:xs='http://www.w3.org/2001/XMLSchema'" +
> " xmlns:my='http://example.org'" +
> " targetNamespace='http://example.org'" +
> " elementFormDefault='qualified'>\n" +
> " <xs:attribute name='var' type='xs:integer'/>\n" +
> " <xs:element name='foo'>\n" +
> " <xs:complexType>\n" +
> " <xs:sequence/>\n" +
> " </xs:complexType>\n" +
> " </xs:element>\n" +
> "</xs:schema>\n";
> public static final String INPUT1 =
> "<unknown xmlns:my='http://example.org' my:var='7'/>";
> public static final String INPUT2 =
> "<unknown xmlns:my='http://example.org'
> my:var='7'><my:foo/></unknown>";
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]