IBM Support

IT33063: KC DOES NOT DOCUMENT A PERMANENT RESTRICTION IN XMLNSC VALIDATION INVOLVING UNBOUNDED WILDCARD PATTERNS

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as documentation error.

Error description

  • The XMLNSC parser is not capable of correctly validating an XML
    element restricted by a pattern that includes an unbounded
    wildcard followed by a negated character class. For example
    consider the following XML schema:
    
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified">
        <xs:element name="StringWithXSDPattern">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:pattern value="A.*[&#94;D]"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:element>
    </xs:schema>
    
    Then the input
    <StringWithXSDPattern>ADDDDDDA</StringWithXSDPattern> will fail
    validation with a cvc-pattern-valid XML schema validation error
    despite this being acceptable input. This is a permanent
    restriction of the pattern validator in the XMLNSC parser.
    Replacing the inverted character class with a non-inverted class
    will not trigger this behaviour, i.e. the pattern A.*[ABC] will
    correctly validate the same input.
    

Local fix

  • Do not use .* followed by a negated character class in an XML
    schema element restriction pattern.
    

Problem summary

  • ****************************************************************
    USERS AFFECTED:
    All users of the XMLNSC parser in IBM Integration Bus v10 and
    IBM App Connect Enterprise v11 using patterns in schema
    validation.
    
    
    Platforms affected:
    z/OS, MultiPlatform
    
    ****************************************************************
    PROBLEM DESCRIPTION:
    The XMLNSC parser is not capable of correctly validating an XML
    element restricted by a pattern that includes an unbounded
    wildcard followed by a negated character class. For example
    consider the following XML schema:
    
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified">
        <xs:element name="StringWithXSDPattern">
            <xs:simpleType>
                <xs:restriction base="xs:string">
                    <xs:pattern value="A.*[&#94;D]"/>
                </xs:restriction>
            </xs:simpleType>
        </xs:element>
    </xs:schema>
    
    Then the input
    <StringWithXSDPattern>ADDDDDDA</StringWithXSDPattern> will fail
    validation with a cvc-pattern-valid XML schema validation error
    despite this being acceptable input. This is a permanent
    restriction of the pattern validator in the XMLNSC parser.
    Replacing the inverted character class with a non-inverted class
    will not trigger this behaviour, i.e. the pattern A.*[ABC] will
    correctly validate the same input.
    

Problem conclusion

  • The Knowledge Center article on XMLNSC validation now document
    this restriction.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT33063

  • Reported component name

    INTEGRATION BUS

  • Reported component ID

    5724J0540

  • Reported release

    A00

  • Status

    CLOSED DOC

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-06-03

  • Closed date

    2020-10-19

  • Last modified date

    2020-10-19

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

Applicable component levels

[{"Line of Business":{"code":"LOB36","label":"IBM Automation"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSNQK6","label":"IBM Integration Bus"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"10.0"}]

Document Information

Modified date:
20 October 2020