<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright (C) 2006 W3C (R) (MIT ERCIM Keio), All Rights Reserved.
    W3C liability, trademark and document use rules apply.

    http://www.w3.org/Consortium/Legal/ipr-notice
    http://www.w3.org/Consortium/Legal/copyright-documents

    Generated from: $Id: examples.xml,v 1.57 2008/02/20 16:41:48 pdowney Exp $-->
<detected-patterns xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ex="http://www.w3.org/2002/ws/databinding/examples/6/09/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<example xml:id="TargetNamespace">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="NoTargetNamespace">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="NoTargetNamespace" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NoTargetNamespace" xpath=".[not(@targetNamespace)]/&#10;&#9;&#9;(.)"/>
   <pattern name="UnqualifiedLocalElements" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalElements" xpath=".[not(@elementFormDefault) or @elementFormDefault = 'unqualified']/&#10;&#9;&#9;(., @elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="QualifiedLocalElements">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="UnqualifiedLocalAttributes">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SchemaVersion">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="SchemaVersion" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SchemaVersion" xpath="./@version"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="FinalDefault">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="FinalDefault" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/FinalDefault" xpath="./@finalDefault"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="BlockDefault">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="BlockDefault" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/BlockDefault" xpath="./@blockDefault"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AnySimpleTypeAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AnySimpleTypeAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnySimpleTypeAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:anySimpleType')]"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AnySimpleTypeElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AnySimpleTypeElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnySimpleTypeElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:anySimpleType')]"/>
</detected>
</example>
<example xml:id="AnyTypeElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AnyTypeElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyTypeElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:anyType')]"/>
</detected>
</example>
<example xml:id="ImportSchemaNamespace">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ImportSchemaNamespace" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportSchemaNamespace" xpath="./xs:import[not(@schemaLocation)&#10;&#9;&#9;and @namespace = 'http://www.w3.org/2001/XMLSchema']/&#10;&#9;&#9;(., @namespace)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ImportNamespace">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ImportNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportNamespace" xpath="./xs:import[@namespace and not(@schemaLocation)&#10;&#9;&#9;and not(@namespace = 'http://www.w3.org/2001/XMLSchema')]/&#10;&#9;&#9;(., @namespace)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ImportSchema">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ImportSchema" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportSchema" xpath="./xs:import[@namespace and @schemaLocation]/&#10;&#9;&#9;(., @namespace, @schemaLocation)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ImportTypesNamespace">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="unknown">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ImportTypesNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportTypesNamespace" xpath=".//xs:import[@namespace&#10;&#9;&#9;and not(@schemaLocation) &#10;&#9;&#9;and (@namespace = ../../xs:schema/@targetNamespace)]/ &#10;&#9;&#9;(., @namespace)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl/xs:schema[1]" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl/xs:schema[1]/@targetNamespace" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl/xs:schema[1]/@elementFormDefault" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl/xs:schema[1]/xs:element" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl/xs:schema[2]" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl/xs:schema[2]/@targetNamespace" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/wsdl/xs:schema[2]/@elementFormDefault" lineno="-1"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ImportNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportNamespace" xpath="./xs:import[@namespace and not(@schemaLocation)&#10;&#9;&#9;and not(@namespace = 'http://www.w3.org/2001/XMLSchema')]/&#10;&#9;&#9;(., @namespace)"/>
</detected>
</example>
<example xml:id="DocumentationElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="DocumentationElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DocumentationElement" xpath=".//xs:annotation/xs:documentation/&#10;&#9;&#9;(.., ., .//*, .//@*)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="IdentifierName">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="NonIdentifierName">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="StringElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="StringAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="BooleanElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="BooleanElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:boolean')]"/>
</detected>
</example>
<example xml:id="BooleanAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="BooleanAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/BooleanAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:boolean')]"/>
</detected>
</example>
<example xml:id="DecimalElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DecimalElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:decimal')]"/>
</detected>
</example>
<example xml:id="DecimalAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="DecimalAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:decimal')]"/>
</detected>
</example>
<example xml:id="FloatElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="FloatElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/FloatElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:float')]"/>
</detected>
</example>
<example xml:id="FloatAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="FloatAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/FloatAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:float')]"/>
</detected>
</example>
<example xml:id="DoubleElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DoubleElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:double')]"/>
</detected>
</example>
<example xml:id="DoubleAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="DoubleAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:double')]"/>
</detected>
</example>
<example xml:id="DurationElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DurationElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DurationElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:duration')]"/>
</detected>
</example>
<example xml:id="DurationAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="DurationAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DurationAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:duration')]"/>
</detected>
</example>
<example xml:id="DateTimeElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DateTimeElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:dateTime')]"/>
</detected>
</example>
<example xml:id="DateTimeAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="DateTimeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DateTimeAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:dateTime')]"/>
</detected>
</example>
<example xml:id="TimeElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="TimeElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TimeElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:time')]"/>
</detected>
</example>
<example xml:id="TimeAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="TimeAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TimeAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:time')]"/>
</detected>
</example>
<example xml:id="DateElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DateElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DateElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:date')]"/>
</detected>
</example>
<example xml:id="DateAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="DateAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DateAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:date')]"/>
</detected>
</example>
<example xml:id="GYearMonthElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GYearMonthElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GYearMonthElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:gYearMonth')]"/>
</detected>
</example>
<example xml:id="GYearMonthAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="GYearMonthAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GYearMonthAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:gYearMonth')]"/>
</detected>
</example>
<example xml:id="GYearElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GYearElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GYearElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:gYear')]"/>
</detected>
</example>
<example xml:id="GYearAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="GYearAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GYearAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:gYear')]"/>
</detected>
</example>
<example xml:id="GMonthDayElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GMonthDayElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GMonthDayElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:gMonthDay')]"/>
</detected>
</example>
<example xml:id="GMonthDayAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="GMonthDayAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GMonthDayAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:gMonthDay')]"/>
</detected>
</example>
<example xml:id="GDayElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GDayElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GDayElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:gDay')]"/>
</detected>
</example>
<example xml:id="GDayAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="GDayAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GDayAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:gDay')]"/>
</detected>
</example>
<example xml:id="GMonthElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GMonthElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GMonthElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:gMonth')]"/>
</detected>
</example>
<example xml:id="GMonthAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="GMonthAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GMonthAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:gMonth')]"/>
</detected>
</example>
<example xml:id="HexBinaryElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="HexBinaryElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/HexBinaryElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:hexBinary')]"/>
</detected>
</example>
<example xml:id="HexBinaryAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="HexBinaryAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/HexBinaryAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:hexBinary')]"/>
</detected>
</example>
<example xml:id="Base64BinaryElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="Base64BinaryElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Base64BinaryElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:base64Binary')]"/>
</detected>
</example>
<example xml:id="Base64BinaryAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="Base64BinaryAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Base64BinaryAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:base64Binary')]"/>
</detected>
</example>
<example xml:id="AnyURIElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AnyURIElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:anyURI')]"/>
</detected>
</example>
<example xml:id="AnyURIAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="AnyURIAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyURIAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:anyURI')]"/>
</detected>
</example>
<example xml:id="QNameElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="QNameElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:QName')]"/>
</detected>
</example>
<example xml:id="QNameAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="QNameAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QNameAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:QName')]"/>
</detected>
</example>
<example xml:id="NormalizedStringElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NormalizedStringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:normalizedString')]"/>
</detected>
</example>
<example xml:id="NormalizedStringAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NormalizedStringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NormalizedStringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:normalizedString')]"/>
</detected>
</example>
<example xml:id="TokenElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="TokenElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:token')]"/>
</detected>
</example>
<example xml:id="TokenAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="TokenAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:token')]"/>
</detected>
</example>
<example xml:id="LanguageElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="LanguageElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LanguageElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:language')]"/>
</detected>
</example>
<example xml:id="LanguageAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="LanguageAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LanguageAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:language')]"/>
</detected>
</example>
<example xml:id="NMTOKENElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NMTOKENElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NMTOKENElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:NMTOKEN')]"/>
</detected>
</example>
<example xml:id="NMTOKENAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NMTOKENAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NMTOKENAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:NMTOKEN')]"/>
</detected>
</example>
<example xml:id="NMTOKENSElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NMTOKENSElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NMTOKENSElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:NMTOKENS')]"/>
</detected>
</example>
<example xml:id="NMTOKENSAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NMTOKENSAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NMTOKENSAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:NMTOKENS')]"/>
</detected>
</example>
<example xml:id="NameElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NameElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NameElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:Name')]"/>
</detected>
</example>
<example xml:id="NameAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NameAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NameAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:Name')]"/>
</detected>
</example>
<example xml:id="NCNameElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NCNameElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:NCName')]"/>
</detected>
</example>
<example xml:id="NCNameAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NCNameAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NCNameAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:NCName')]"/>
</detected>
</example>
<example xml:id="IDElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IDElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:ID')]"/>
</detected>
</example>
<example xml:id="IDAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IDAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:ID')]"/>
</detected>
</example>
<example xml:id="IDREFElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IDREFElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDREFElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:IDREF')]"/>
</detected>
</example>
<example xml:id="IDREFAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IDREFAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDREFAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:IDREF')]"/>
</detected>
</example>
<example xml:id="IDREFSElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IDREFSElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDREFSElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:IDREFS')]"/>
</detected>
</example>
<example xml:id="IDREFSAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IDREFSAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDREFSAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:IDREFS')]"/>
</detected>
</example>
<example xml:id="ENTITYElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ENTITYElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ENTITYElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:ENTITY')]"/>
</detected>
</example>
<example xml:id="ENTITYAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ENTITYAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ENTITYAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:ENTITY')]"/>
</detected>
</example>
<example xml:id="ENTITIESElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ENTITIESElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ENTITIESElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:ENTITIES')]"/>
</detected>
</example>
<example xml:id="ENTITIESAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ENTITIESAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ENTITIESAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:ENTITIES')]"/>
</detected>
</example>
<example xml:id="IntegerElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IntegerElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntegerElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:integer')]"/>
</detected>
</example>
<example xml:id="IntegerAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntegerAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntegerAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:integer')]"/>
</detected>
</example>
<example xml:id="NonPositiveIntegerElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NonPositiveIntegerElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonPositiveIntegerElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:nonPositiveInteger')]"/>
</detected>
</example>
<example xml:id="NonPositiveIntegerAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NonPositiveIntegerAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonPositiveIntegerAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:nonPositiveInteger')]"/>
</detected>
</example>
<example xml:id="NegativeIntegerElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NegativeIntegerElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NegativeIntegerElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:negativeInteger')]"/>
</detected>
</example>
<example xml:id="NegativeIntegerAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NegativeIntegerAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NegativeIntegerAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:negativeInteger')]"/>
</detected>
</example>
<example xml:id="LongElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="LongElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LongElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:long')]"/>
</detected>
</example>
<example xml:id="LongAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="LongAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LongAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:long')]"/>
</detected>
</example>
<example xml:id="IntElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IntElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="IntAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="ShortElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ShortElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:short')]"/>
</detected>
</example>
<example xml:id="ShortAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ShortAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:short')]"/>
</detected>
</example>
<example xml:id="ByteElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ByteElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:byte')]"/>
</detected>
</example>
<example xml:id="ByteAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ByteAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:byte')]"/>
</detected>
</example>
<example xml:id="NonNegativeIntegerElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NonNegativeIntegerElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:nonNegativeInteger')]"/>
</detected>
</example>
<example xml:id="NonNegativeIntegerAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="NonNegativeIntegerAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:nonNegativeInteger')]"/>
</detected>
</example>
<example xml:id="UnsignedLongElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnsignedLongElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedLongElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:unsignedLong')]"/>
</detected>
</example>
<example xml:id="UnsignedLongAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="UnsignedLongAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedLongAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:unsignedLong')]"/>
</detected>
</example>
<example xml:id="UnsignedIntElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnsignedIntElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedIntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:unsignedInt')]"/>
</detected>
</example>
<example xml:id="UnsignedIntAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="UnsignedIntAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedIntAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:unsignedInt')]"/>
</detected>
</example>
<example xml:id="UnsignedShortElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnsignedShortElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedShortElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:unsignedShort')]"/>
</detected>
</example>
<example xml:id="UnsignedShortAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="UnsignedShortAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedShortAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:unsignedShort')]"/>
</detected>
</example>
<example xml:id="UnsignedByteElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnsignedByteElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedByteElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:unsignedByte')]"/>
</detected>
</example>
<example xml:id="UnsignedByteAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="UnsignedByteAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedByteAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:unsignedByte')]"/>
</detected>
</example>
<example xml:id="PositiveIntegerElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="PositiveIntegerElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:positiveInteger')]"/>
</detected>
</example>
<example xml:id="PositiveIntegerAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="PositiveIntegerAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:positiveInteger')]"/>
</detected>
</example>
<example xml:id="GlobalSimpleType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="NullEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NullEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') &#10;&#9;&#9;and count(xs:enumeration) le 1 and xs:enumeration = '']/&#10;&#9;&#9;(@base, xs:enumeration/(., @value))"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="StringEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="NMTOKENEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="NMTOKENEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NMTOKENEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:NMTOKEN') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="IntEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="IntEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:int') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ShortEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ShortEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:short') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="LongEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="LongEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LongEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:long') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="DoubleEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="DoubleEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:double') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="IntegerEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="IntegerEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntegerEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:integer') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="DecimalEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="DecimalEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="FloatEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="FloatEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/FloatEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:float') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="NonNegativeIntegerEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="NonNegativeIntegerEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:nonNegativeInteger') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="PositiveIntegerEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="PositiveIntegerEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:positiveInteger')&#10;&#9;&#9;and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="UnsignedLongEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="UnsignedLongEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedLongEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:unsignedLong') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="UnsignedIntEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="UnsignedIntEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedIntEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:unsignedInt') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="UnsignedShortEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="UnsignedShortEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedShortEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:unsignedShort') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="TokenEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="TokenEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:token') and xs:enumeration]/&#10;         (., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ComplexTypeSequence">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
   <pattern name="IntAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="ComplexTypeOnlyAttributes">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeOnlyAttributes" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeOnlyAttributes" xpath=".//xs:complexType/xs:attribute[../not(xs:choice or xs:sequence or xs:all or xs:anyAttribute or xs:group &#10;         or xs:attributeGroup or xs:simpleContent or xs:complexContent)]/&#10;         (., ..,@use)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="ComplexTypeAll">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAll" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAll" xpath=".//xs:complexType/xs:all/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="AllElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AllElement" xpath=".//xs:all/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
   <pattern name="IntAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="ComplexTypeChoice">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="ComplexTypeSequenceChoice">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequenceChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceChoice" xpath=".//xs:complexType/xs:sequence/xs:choice/&#10;         (., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceChoice" xpath=".//xs:sequence/xs:choice/(.)"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="ElementMinOccurs1">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1" xpath=".//.[@minOccurs = '1']/&#10;&#9;&#9;(@minOccurs)"/>
   <pattern name="ElementMinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1" xpath=".//xs:element[@minOccurs = '1' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMinOccursFinite">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccursFinite" xpath=".//xs:element[xs:integer(@minOccurs) gt 1]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="ElementMaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccursFinite" xpath=".//xs:element[@maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;&#9;&#9;(@maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMinOccurs2MaxOccurs2">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccursFinite" xpath=".//xs:element[xs:integer(@minOccurs) gt 1]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="ElementMaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccursFinite" xpath=".//xs:element[@maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;&#9;&#9;(@maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMinOccurs2orMore">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccursFinite" xpath=".//xs:element[xs:integer(@minOccurs) gt 1]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMaxOccurs1">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1" xpath=".//.[@minOccurs = '1']/&#10;&#9;&#9;(@minOccurs)"/>
   <pattern name="MaxOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MaxOccurs1" xpath=".//.[@maxOccurs = '1']/&#10;&#9;&#9;(@maxOccurs)"/>
   <pattern name="ElementMinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1" xpath=".//xs:element[@minOccurs = '1' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="ElementMaxOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccurs1" xpath=".//xs:element[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = '1']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMaxOccursUnbounded">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs1MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded" xpath=".//xs:element[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMaxOccursFinite">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccursFinite" xpath=".//xs:element[@maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;&#9;&#9;(@maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeOptional">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="AttributeOptional" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeOptional" xpath=".//xs:attribute[@use = 'optional']/ &#10;&#9;&#9;(@use)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="LongElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LongElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:long')]"/>
</detected>
</example>
<example xml:id="AttributeRequired">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="AttributeRequired" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeRequired" xpath=".//xs:attribute[@use = 'required']/ &#10;&#9;&#9;(@use)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="AttributeFixed">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="AttributeFixed" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFixed" xpath=".//xs:attribute[@fixed] / &#10;&#9;&#9;(@fixed)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="AttributeDefault">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="AttributeDefault" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeDefault" xpath=".//xs:attribute[@default] / &#10;&#9;&#9;(@default)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalElementDefault">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementDefault" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementDefault" xpath=".//xs:element[@default]/&#10;&#9;&#9;(@default)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMinOccurs0">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="NillableElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="NillableElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NillableElement" xpath=".//xs:element[@nillable = 'true' and not(@minOccurs = '0')]/&#10;&#9;    (@nillable)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="NillableOptionalElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="NillableOptionalElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NillableOptionalElement" xpath=".//xs:element[@nillable = 'true' and @minOccurs = '0']/&#10;&#9;    (@nillable, @minOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="UnionMemberTypes">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnionMemberTypes" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnionMemberTypes" xpath=".//xs:simpleType/xs:union[@memberTypes and not(xs:simpleType)]/&#10;&#9;&#9;(., @memberTypes)"/>
</detected>
</example>
<example xml:id="UnionDateString">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnionMemberTypes" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnionMemberTypes" xpath=".//xs:simpleType/xs:union[@memberTypes and not(xs:simpleType)]/&#10;&#9;&#9;(., @memberTypes)"/>
</detected>
</example>
<example xml:id="UnionSimpleDateString">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnionSimpleTypes" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnionSimpleTypes" xpath=".//xs:simpleType/xs:union[not(@memberTypes)]/xs:simpleType/&#10;&#9;&#9;(.., .)"/>
   <pattern name="SimpleTypeRenamed" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SimpleTypeRenamed" xpath=".//xs:simpleType/xs:restriction[@base and count(./*) = 0]/&#10;&#9;&#9;(., @base)"/>
</detected>
</example>
<example xml:id="NullEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="NullEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NullEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') &#10;&#9;&#9;and count(xs:enumeration) le 1 and xs:enumeration = '']/&#10;&#9;&#9;(@base, xs:enumeration/(., @value))"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ElementEmptyComplexType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementEmptyComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptyComplexType" xpath=".//xs:element[@name]/xs:complexType[not(node())]/&#10;&#9;    (., .., ../@name)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ElementEmptySequence">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementEmptySequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementEmptySequence" xpath=".//xs:element[@name]/xs:complexType/xs:sequence[not(node())]/&#10;&#9;    (., .., ../.., ../../@name)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="GlobalElementSequence">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalElementAll">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeAll" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAll" xpath=".//xs:complexType/xs:all/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="GlobalElementAll" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementAll" xpath="./xs:element[@name]/xs:complexType/xs:all[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="AllElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AllElement" xpath=".//xs:all/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalElementChoice">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="GlobalElementChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementChoice" xpath="./xs:element[@name]/xs:complexType/xs:choice[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="NestedSequenceElementList">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded" xpath=".//xs:element[@minOccurs = '0' and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="MixedContentType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MixedContentType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MixedContentType" xpath=".//xs:complexType[@mixed = 'true']/&#10;&#9;&#9;(@mixed)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="StringSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="IntSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IntSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:int')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="IntegerSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IntegerSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntegerSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:integer')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="LongSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="LongSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LongSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:long')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="DecimalSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DecimalSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="FloatSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="FloatSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/FloatSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:float')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="DoubleSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DoubleSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DoubleSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:double')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="ShortSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ShortSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:short')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="NonNegativeIntegerSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="NonNegativeIntegerSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonNegativeIntegerSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:nonNegativeInteger')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="PositiveIntegerSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="PositiveIntegerSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/PositiveIntegerSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:positiveInteger')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="UnsignedLongSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnsignedLongSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedLongSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:unsignedLong')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="UnsignedIntSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnsignedIntSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedIntSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:unsignedInt')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="UnsignedShortSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnsignedShortSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnsignedShortSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:unsignedShort')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="DateSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DateSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DateSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:date')]/xs:pattern[@value]/&#10;         (.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedMinInclusive">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedMinInclusive" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMinInclusive" xpath=".//xs:simpleType/xs:restriction/xs:minInclusive[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedMaxInclusive">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedMaxInclusive" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMaxInclusive" xpath=".//xs:simpleType/xs:restriction/xs:maxInclusive[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedMinExclusive">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedMinExclusive" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMinExclusive" xpath=".//xs:simpleType/xs:restriction/xs:minExclusive[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedMaxExclusive">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedMaxExclusive" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMaxExclusive" xpath=".//xs:simpleType/xs:restriction/xs:maxExclusive[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedLength">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedLength" xpath=".//xs:simpleType/xs:restriction/xs:length[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedMaxLength">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedStringMaxLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedStringMaxLength" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string')]/xs:maxLength[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
   <pattern name="RestrictedMaxLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMaxLength" xpath=".//xs:simpleType/xs:restriction/xs:maxLength[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedMinLength">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedStringMinLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedStringMinLength" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string')]/xs:minLength[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
   <pattern name="RestrictedMinLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMinLength" xpath=".//xs:simpleType/xs:restriction/xs:minLength[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="AnyAttributeStrict">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute" xpath="./xs:attribute[@name and @type and contains(@type, &quot;:&quot;)]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAnyAttribute" xpath=".//xs:complexType/xs:anyAttribute"/>
   <pattern name="AnyAttributeStrict" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyAttributeStrict" xpath=".//xs:complexType/xs:anyAttribute[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AnyAttributeSkip">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAnyAttribute" xpath=".//xs:complexType/xs:anyAttribute"/>
   <pattern name="AnyAttributeSkip" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyAttributeSkip" xpath=".//xs:complexType/xs:anyAttribute[(@processContents = 'skip')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AnyAttributeLax">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAnyAttribute" xpath=".//xs:complexType/xs:anyAttribute"/>
   <pattern name="AnyAttributeLax" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyAttributeLax" xpath=".//xs:complexType/xs:anyAttribute[(@processContents = 'lax')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementReference">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeReference">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute" xpath="./xs:attribute[@name and @type and contains(@type, &quot;:&quot;)]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference" xpath=".//xs:attribute[@ref and contains(@ref, &quot;:&quot;)]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeElementNameClash">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="AttributeElementNameClash" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeElementNameClash" xpath=".//xs:complexType/xs:sequence/xs:element[@name = ../../xs:attribute/@name]/&#10;&#9;    (@name)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IntAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IntAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:int')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceStrict">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceStrict" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceStrict" xpath=".//xs:sequence/xs:any[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and @namespace = '##targetNamespace']/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceLax">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceLax" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceLax" xpath=".//xs:sequence/xs:any[@processContents = 'lax'&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and @namespace = '##targetNamespace']/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceSkip">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceSkip" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceSkip" xpath=".//xs:sequence/xs:any[@processContents = 'skip'&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and @namespace = '##targetNamespace']/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementTypeDefaultNamespace">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElementUnqualifiedType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementUnqualifiedType" xpath="./xs:element[@name &#10;&#9;&#9;and @type and not(contains(@type, ':'))]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementTypeDefaultNamespace" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeDefaultNamespace" xpath=".//xs:element[@name and @type and not(contains(@type, ':'))]/&#10;&#9;&#9;(@name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="RestrictedStringMinLength">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedStringMinLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedStringMinLength" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string')]/xs:minLength[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
   <pattern name="RestrictedMinLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMinLength" xpath=".//xs:simpleType/xs:restriction/xs:minLength[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedStringMaxLength">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedStringMaxLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedStringMaxLength" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string')]/xs:maxLength[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
   <pattern name="RestrictedMaxLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMaxLength" xpath=".//xs:simpleType/xs:restriction/xs:maxLength[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="RestrictedStringMinMaxLength">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="RestrictedStringMinLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedStringMinLength" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string')]/xs:minLength[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
   <pattern name="RestrictedStringMaxLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedStringMaxLength" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string')]/xs:maxLength[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
   <pattern name="RestrictedStringMinMaxLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedStringMinMaxLength" xpath="&#10;&#9;.//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') &#10;&#9;&#9;and xs:minLength/@value&#10;&#9;&#9;and xs:maxLength/@value]/&#10;&#9;&#9;(., @base, xs:minLength/(., @value), xs:maxLength/(., @value))&#10;&#9;"/>
   <pattern name="RestrictedMaxLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMaxLength" xpath=".//xs:simpleType/xs:restriction/xs:maxLength[@value]/(.., ../@base, ., @value)"/>
   <pattern name="RestrictedMinLength" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/RestrictedMinLength" xpath=".//xs:simpleType/xs:restriction/xs:minLength[@value]/(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="BareVector">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded" xpath=".//xs:element[@minOccurs = '0' and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ComplexTypeSequenceExtension">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ComplexTypeSequenceExtension" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceExtension" xpath=".//xs:complexType/xs:complexContent[xs:extension[@base]/xs:sequence]/&#10;&#9;&#9;(., xs:extension/&#10;&#9;&#9;(., @base, xs:sequence/(., xs:element/(., @name))))"/>
</detected>
</example>
<example xml:id="TypeSubstitutionUsingXsiType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded" xpath=".//xs:element[@minOccurs = '0' and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ComplexTypeSequenceExtension" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceExtension" xpath=".//xs:complexType/xs:complexContent[xs:extension[@base]/xs:sequence]/&#10;&#9;&#9;(., xs:extension/&#10;&#9;&#9;(., @base, xs:sequence/(., xs:element/(., @name))))"/>
</detected>
</example>
<example xml:id="IncludeRelative">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="Include" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Include" xpath="./xs:include[@schemaLocation]/&#10;&#9;&#9;(., @schemaLocation)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="Include">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="Include" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Include" xpath="./xs:include[@schemaLocation]/&#10;&#9;&#9;(., @schemaLocation)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="SimpleTypeAttributes">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSimpleContent" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSimpleContent" xpath=".//xs:complexType/xs:simpleContent/xs:extension[@base]/&#10;&#9;    (.., ., ./@base, xs:attribute/&#10;&#9;&#9;(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ChameleonInclude">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="Include" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Include" xpath="./xs:include[@schemaLocation]/&#10;&#9;&#9;(., @schemaLocation)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="PrecisionDecimal">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnionSimpleTypes" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnionSimpleTypes" xpath=".//xs:simpleType/xs:union[not(@memberTypes)]/xs:simpleType/&#10;&#9;&#9;(.., .)"/>
   <pattern name="SimpleTypeRenamed" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SimpleTypeRenamed" xpath=".//xs:simpleType/xs:restriction[@base and count(./*) = 0]/&#10;&#9;&#9;(., @base)"/>
   <pattern name="PrecisionDecimal" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/PrecisionDecimal" xpath=".//xs:simpleType/xs:union[&#10;&#9;    xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal')]/xs:totalDigits[@value ='16']&#10;&#9;    and xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:double')]&#10;&#9;    and xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') &#10;&#9;&#9;    and xs:enumeration/@value='NaN' and xs:enumeration/@value='-INF' and not(xs:enumeration[3])]&#10;&#9;    and not(xs:simpleType[4] | xs:simpleType[@*])&#10;&#9;]/(., xs:simpleType/(., xs:restriction/(., @base, xs:totalDigits/(., @value), xs:enumeration/(., @value))))&#10;      "/>
   <pattern name="DecimalSimpleTypeTotalDigits" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalSimpleTypeTotalDigits" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal') and xs:totalDigits/@value]/&#10;&#9;    (., @base, xs:totalDigits/(., @value))"/>
</detected>
</example>
<example xml:id="ExtendedSimpleType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSimpleContent" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSimpleContent" xpath=".//xs:complexType/xs:simpleContent/xs:extension[@base]/&#10;&#9;    (.., ., ./@base, xs:attribute/&#10;&#9;&#9;(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="SOAPEncodedArray">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ImportSchema" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ImportSchema" xpath="./xs:import[@namespace and @schemaLocation]/&#10;&#9;&#9;(., @namespace, @schemaLocation)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="AttributeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference" xpath=".//xs:attribute[@ref and contains(@ref, &quot;:&quot;)]/&#10;&#9;    (., @ref)"/>
   <pattern name="SOAPEncodedArray" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SOAPEncodedArray" xpath="./xs:complexType[@name]/xs:complexContent/xs:restriction[&#10;&#9;    @base/resolve-QName(.,..) = xs:QName('soap11enc:Array')]/&#10;&#9;    xs:attribute[(@ref/resolve-QName(.,..) = xs:QName('soap11enc:arrayType')) &#10;&#9;    and @wsdl11:arrayType]/&#10;&#9;    (../.., ../(., @base), ., @ref, @wsdl11:arrayType)"/>
</detected>
</example>
<example xml:id="SequenceMinOccurs1">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1" xpath=".//.[@minOccurs = '1']/&#10;&#9;&#9;(@minOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs1" xpath=".//xs:sequence[@minOccurs = '1' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceMinOccursFinite">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMinOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccursFinite" xpath=".//xs:sequence[xs:integer(@minOccurs) gt 1]/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceMaxOccurs1">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MaxOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MaxOccurs1" xpath=".//.[@maxOccurs = '1']/&#10;&#9;&#9;(@maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMaxOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMaxOccurs1" xpath=".//xs:sequence[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = '1']/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ShortElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:short')]"/>
</detected>
</example>
<example xml:id="ElementMinOccurs0MaxOccursFinite">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0MaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursFinite" xpath=".//xs:element[@minOccurs = '0' and @maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="ElementMaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccursFinite" xpath=".//xs:element[@maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;&#9;&#9;(@maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMinOccurs0MaxOccursUnbounded">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0MaxOccursUnbounded" xpath=".//xs:element[@minOccurs = '0' and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ShortElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:short')]"/>
</detected>
</example>
<example xml:id="SequenceMinOccurs0MaxOccursUnbounded">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMinOccurs0MaxOccursUnbounded" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs0MaxOccursUnbounded" xpath=".//xs:sequence[@minOccurs = '0' and @maxOccurs = 'unbounded']/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementMinOccurs1MaxOccursUnbounded">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1" xpath=".//.[@minOccurs = '1']/&#10;&#9;&#9;(@minOccurs)"/>
   <pattern name="ElementMinOccurs1MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded" xpath=".//xs:element[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ShortElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ShortElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:short')]"/>
</detected>
</example>
<example xml:id="SequenceMinOccurs1MaxOccursUnbounded">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1" xpath=".//.[@minOccurs = '1']/&#10;&#9;&#9;(@minOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMinOccurs1MaxOccursUnbounded" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs1MaxOccursUnbounded" xpath=".//xs:sequence[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = 'unbounded']/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceMaxOccursUnbounded">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMinOccurs1MaxOccursUnbounded" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs1MaxOccursUnbounded" xpath=".//xs:sequence[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = 'unbounded']/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceMaxOccursFinite">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMaxOccursFinite" xpath=".//xs:sequence[@maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;&#9;&#9; (@maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceMinOccurs0">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceMinOccurs0" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs0" xpath=".//xs:sequence[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceSequenceElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="SequenceSequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSequenceElement" xpath=".//xs:sequence/xs:sequence/xs:element/&#10;&#9;&#9;(., ..)"/>
   <pattern name="SequenceMinOccurs0" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceMinOccurs0" xpath=".//xs:sequence[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9; (@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="DecimalSimpleTypeTotalDigits">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DecimalSimpleTypeTotalDigits" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalSimpleTypeTotalDigits" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal') and xs:totalDigits/@value]/&#10;&#9;    (., @base, xs:totalDigits/(., @value))"/>
</detected>
</example>
<example xml:id="DecimalSimpleTypeFractionDigits">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="DecimalSimpleTypeFractionDigits" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalSimpleTypeFractionDigits" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal') and xs:fractionDigits/@value]/&#10;         (., @base, xs:fractionDigits/(., @value))"/>
</detected>
</example>
<example xml:id="AttributeTypeReference">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeTypeReference" xpath=".//xs:attribute[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="DecimalSimpleTypeTotalDigits" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalSimpleTypeTotalDigits" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal') and xs:totalDigits/@value]/&#10;&#9;    (., @base, xs:totalDigits/(., @value))"/>
</detected>
</example>
<example xml:id="ElementTypeReference">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="LocalElementComplexType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="LocalElementComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalElementComplexType" xpath=".//xs:element[not(parent::xs:schema)]/xs:complexType"/>
</detected>
</example>
<example xml:id="Id">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="Id" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Id" xpath=".//@id"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeGroup">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="AttributeFormUnqualified" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormUnqualified" xpath=".//xs:attribute[@form='unqualified']/&#10;&#9;&#9;(@form)"/>
   <pattern name="AttributeOptional" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeOptional" xpath=".//xs:attribute[@use = 'optional']/ &#10;&#9;&#9;(@use)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="IDAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:ID')]"/>
   <pattern name="AttributeGroup" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeGroup" xpath=".//xs:attributeGroup/(.,@name,@ref,xs:attribute)"/>
</detected>
</example>
<example xml:id="ElementFormQualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementFormQualified" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementFormQualified" xpath=".//xs:element[@form='qualified']/&#10;&#9;&#9;(@form)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="NotNillableElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="NotNillableElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NotNillableElement" xpath=".//xs:element[@nillable = 'false']/&#10;&#9;    (@nillable)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="NotMixed">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="NotMixed" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NotMixed" xpath=".//.[@mixed = 'false']/&#10;&#9;&#9;(@mixed)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeFormUnqualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="AttributeFormUnqualified" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormUnqualified" xpath=".//xs:attribute[@form='unqualified']/&#10;&#9;&#9;(@form)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ComplexTypeConcrete">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeConcrete" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeConcrete" xpath=".//xs:complexType[@abstract='false']/&#10;&#9;&#9;(@abstract)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalComplexType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalComplexTypeAbstract">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="GlobalComplexTypeAbstract" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexTypeAbstract" xpath="./xs:complexType[@abstract='true']/&#10;&#9;&#9;(@abstract)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="GlobalComplexTypeEmptyExtension" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexTypeEmptyExtension" xpath="./xs:complexType[@name]/xs:complexContent[xs:extension[@base]/not(*)]/&#10;&#9;&#9;(../../(., @name), .., ., xs:extension/(., @base))"/>
</detected>
</example>
<example xml:id="GlobalElementConcrete">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalElementConcrete" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementConcrete" xpath="./xs:element[@abstract='false']/&#10;&#9;&#9;(@abstract)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalElementBlock">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalElementBlock" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementBlock" xpath="./xs:element/&#10;&#9;&#9;(@block)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalElementFinal">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalElementFinal" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementFinal" xpath="./xs:element/&#10;&#9;&#9;(@final)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalComplexTypeBlock">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="GlobalComplexTypeBlock" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexTypeBlock" xpath="./xs:complexType/ &#10;&#9;&#9;(@block)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ComplexTypeAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ComplexTypeAttributeExtension">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ComplexTypeAttributeExtension" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttributeExtension" xpath=".//xs:complexType/xs:complexContent[xs:extension[@base]/xs:attribute]/&#10;&#9;&#9;(., xs:extension/(., @base, xs:attribute/(., @name)))"/>
</detected>
</example>
<example xml:id="ByteSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ByteSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ByteSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:byte')]/xs:pattern[@value]/&#10;         (.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="ChoiceMaxOccursFinite">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ChoiceMaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceMaxOccursFinite" xpath=".//xs:choice[@maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;         (@maxOccurs)"/>
</detected>
</example>
<example xml:id="ChoiceMaxOccursUnbounded">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ChoiceMaxOccursUnbounded" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceMaxOccursUnbounded" xpath=".//xs:choice[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(@maxOccurs) "/>
</detected>
</example>
<example xml:id="ChoiceMinOccurs0">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ChoiceMinOccurs0" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceMinOccurs0" xpath=".//xs:choice[@minOccurs='0']/&#10;         (@minOccurs) "/>
</detected>
</example>
<example xml:id="ChoiceMinOccursFinite">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ChoiceMaxOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceMaxOccursFinite" xpath=".//xs:choice[@maxOccurs and not(@maxOccurs = '0' or @maxOccurs = '1' or @maxOccurs = 'unbounded')]/&#10;         (@maxOccurs)"/>
   <pattern name="ChoiceMinOccursFinite" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceMinOccursFinite" xpath=".//xs:choice[@minOccurs and not(@minOccurs = '0' or @minOccurs = '1')]/&#10;         (@minOccurs)"/>
</detected>
</example>
<example xml:id="ChoiceElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ChoiceChoice">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceChoice" xpath=".//xs:choice/xs:choice/(.)"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ChoiceSequence">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeChoice" xpath=".//xs:complexType/xs:choice/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ChoiceSequence" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceSequence" xpath=".//xs:choice/xs:sequence/(.)"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceChoice">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequenceChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceChoice" xpath=".//xs:complexType/xs:sequence/xs:choice/&#10;         (., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceChoice" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceChoice" xpath=".//xs:sequence/xs:choice/(.)"/>
   <pattern name="ChoiceElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ChoiceElement" xpath=".//xs:choice/xs:element/(.)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementGroup">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="ElementGroup" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementGroup" xpath=".//xs:group/(.,@name,@ref,xs:sequence,xs:all,xs:choice)"/>
</detected>
</example>
<example xml:id="Unique">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1" xpath=".//.[@minOccurs = '1']/&#10;&#9;&#9;(@minOccurs)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="ElementMinOccurs1MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded" xpath=".//xs:element[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="LocalElementComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalElementComplexType" xpath=".//xs:element[not(parent::xs:schema)]/xs:complexType"/>
   <pattern name="Unique" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unique" xpath=".//xs:unique/(.,xs:selector,xs:selector/@xpath,xs:field,xs:field/@xpath)"/>
</detected>
</example>
<example xml:id="TokenSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="TokenSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TokenSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:token')]/xs:pattern[@value]/&#10;         (.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="AppinfoElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="AppinfoElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AppinfoElement" xpath=".//xs:annotation/xs:appinfo/&#10;&#9;&#9;(.., ., .//*, .//@*)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ComplexTypeOnlyAttributeGroup">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="AttributeFormUnqualified" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormUnqualified" xpath=".//xs:attribute[@form='unqualified']/&#10;&#9;&#9;(@form)"/>
   <pattern name="AttributeOptional" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeOptional" xpath=".//xs:attribute[@use = 'optional']/ &#10;&#9;&#9;(@use)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeOnlyAttributeGroup" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeOnlyAttributeGroup" xpath=".//xs:complexType/xs:attributeGroup[../not(xs:choice or xs:sequence or xs:all or xs:anyAttribute &#10;         or xs:group or xs:simpleContent or xs:complexContent)]/(., ..,@ref)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="IDAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IDAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:ID')]"/>
   <pattern name="AttributeGroup" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeGroup" xpath=".//xs:attributeGroup/(.,@name,@ref,xs:attribute)"/>
</detected>
</example>
<example xml:id="SubstitutionGroup">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="SubstitutionGroup" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SubstitutionGroup" xpath=".//xs:element[@substitutionGroup]/(.,@name,@substitutionGroup)"/>
</detected>
</example>
<example xml:id="MaxOccurs1">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MaxOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MaxOccurs1" xpath=".//.[@maxOccurs = '1']/&#10;&#9;&#9;(@maxOccurs)"/>
   <pattern name="ElementMaxOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMaxOccurs1" xpath=".//xs:element[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = '1']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="MinOccurs1">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MinOccurs1" xpath=".//.[@minOccurs = '1']/&#10;&#9;&#9;(@minOccurs)"/>
   <pattern name="ElementMinOccurs1" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1" xpath=".//xs:element[@minOccurs = '1' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AllElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAll" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAll" xpath=".//xs:complexType/xs:all/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="AllElement" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AllElement" xpath=".//xs:all/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementDefault">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementDefault" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementDefault" xpath=".//xs:element[@default]/&#10;&#9;&#9;(@default)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="List">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="List" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/List" xpath=".//xs:list[@itemType]/&#10;&#9;&#9;(., @itemType)"/>
</detected>
</example>
<example xml:id="SequenceElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceSingleRepeatedElement">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs1MaxOccursUnbounded" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs1MaxOccursUnbounded" xpath=".//xs:element[(not(@minOccurs) or @minOccurs = '1') and @maxOccurs = 'unbounded']/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="SequenceSingleRepeatedElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceSingleRepeatedElement" xpath=".//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/&#10;&#9;&#9;(., @maxOccurs)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AnyAttributeOtherStrict">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAnyAttribute" xpath=".//xs:complexType/xs:anyAttribute"/>
   <pattern name="AnyAttributeOtherStrict" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyAttributeOtherStrict" xpath=".//xs:complexType/xs:anyAttribute[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (@namespace = '##other')]/&#10;&#9;    (., @processContents, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AnyAttributeOtherLax">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAnyAttribute" xpath=".//xs:complexType/xs:anyAttribute"/>
   <pattern name="AnyAttributeOtherLax" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyAttributeOtherLax" xpath=".//xs:complexType/xs:anyAttribute[(@processContents = 'lax')&#10;&#9;    and (@namespace = '##other')]/&#10;&#9;    (., @processContents, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AnyAttributeOtherSkip">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAnyAttribute" xpath=".//xs:complexType/xs:anyAttribute"/>
   <pattern name="AnyAttributeOtherSkip" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyAttributeOtherSkip" xpath=".//xs:complexType/xs:anyAttribute[(@processContents = 'skip')&#10;&#9;    and (@namespace = '##other')]/&#10;&#9;    (., @processContents, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalElementAbstract">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="unknown">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="GlobalElementAbstract" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementAbstract" xpath="./xs:element[@abstract='true']/&#10;&#9;&#9;(@abstract)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="SubstitutionGroup" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SubstitutionGroup" xpath=".//xs:element[@substitutionGroup]/(.,@name,@substitutionGroup)"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/xs:element[2]" lineno="-1"/>
</detected>
</example>
<example xml:id="SimpleTypeEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="SimpleTypeEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SimpleTypeEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base and&#10;&#9;    namespace-uri-from-QName(resolve-QName(@base,.)) != 'http://www.w3.org/2001/XMLSchema' ]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="LanguageEnumerationType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="LanguageEnumerationType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LanguageEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:language') and xs:enumeration]/&#10;         (., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="ElementReferenceUnqualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ElementReferenceUnqualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReferenceUnqualified" xpath=".//xs:element[@ref and not(contains(@ref, ':'))]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ElementTypeReferenceUnqualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementTypeDefaultNamespace" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeDefaultNamespace" xpath=".//xs:element[@name and @type and not(contains(@type, ':'))]/&#10;&#9;&#9;(@name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementTypeReferenceUnqualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReferenceUnqualified" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and not(contains(@type, ':'))]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeReferenceUnqualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute" xpath="./xs:attribute[@name and @type and contains(@type, &quot;:&quot;)]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeReferenceUnqualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReferenceUnqualified" xpath=".//xs:attribute[@ref and not(contains(@ref, ':'))]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeTypeReferenceUnqualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeTypeReferenceUnqualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeTypeReferenceUnqualified" xpath=".//xs:attribute[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and not(contains(@type, ':'))]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="DecimalSimpleTypeTotalDigits" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/DecimalSimpleTypeTotalDigits" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:decimal') and xs:totalDigits/@value]/&#10;&#9;    (., @base, xs:totalDigits/(., @value))"/>
</detected>
</example>
<example xml:id="GlobalAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="basic">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttribute" xpath="./xs:attribute[@name and @type and contains(@type, &quot;:&quot;)]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference" xpath=".//xs:attribute[@ref and contains(@ref, &quot;:&quot;)]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalAttributeSimpleType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalAttributeSimpleType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttributeSimpleType" xpath="./xs:attribute/xs:simpleType/&#10;&#9;&#9;(../(., @name), .)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference" xpath=".//xs:attribute[@ref and contains(@ref, &quot;:&quot;)]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalAttributeUnqualifiedType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalAttributeUnqualifiedType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalAttributeUnqualifiedType" xpath="./xs:attribute[@name and @type and not(contains(@type, ':'))]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeReference" xpath=".//xs:attribute[@ref and contains(@ref, &quot;:&quot;)]/&#10;&#9;    (., @ref)"/>
   <pattern name="AttributeTypeReferenceUnqualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeTypeReferenceUnqualified" xpath=".//xs:attribute[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and not(contains(@type, ':'))]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GlobalComplexTypeEmptyExtension">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GlobalComplexTypeEmptyExtension" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexTypeEmptyExtension" xpath="./xs:complexType[@name]/xs:complexContent[xs:extension[@base]/not(*)]/&#10;&#9;&#9;(../../(., @name), .., ., xs:extension/(., @base))"/>
</detected>
</example>
<example xml:id="GlobalElementComplexTypeEmptyExtension">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GlobalElementComplexTypeEmptyExtension" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementComplexTypeEmptyExtension" xpath="./xs:element[@name]/xs:complexType/xs:complexContent[xs:extension[@base]/not(*)]/&#10;&#9;&#9;(../../(., @name), .., ., xs:extension/(., @base))"/>
</detected>
</example>
<example xml:id="GlobalElementComplexTypeSequenceExtension">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="ComplexTypeSequenceExtension" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequenceExtension" xpath=".//xs:complexType/xs:complexContent[xs:extension[@base]/xs:sequence]/&#10;&#9;&#9;(., xs:extension/&#10;&#9;&#9;(., @base, xs:sequence/(., xs:element/(., @name))))"/>
   <pattern name="GlobalElementComplexTypeSequenceExtension" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementComplexTypeSequenceExtension" xpath="./xs:element[@name]/xs:complexType/xs:complexContent[xs:extension[@base]/xs:sequence]/&#10;&#9;&#9;(../../(., @name), &#10;&#9;&#9;.., ., &#10;&#9;&#9;xs:extension/(., @base, &#10;&#9;&#9;xs:sequence/(., xs:element/(., @name), &#10;&#9;&#9;xs:attribute/(., @name))))"/>
</detected>
</example>
<example xml:id="GlobalElementSequenceAny">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="unknown">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequenceAny" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequenceAny" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:any and not(xs:element)]/&#10;&#9;&#9;(../../(., @name))"/>
   <pattern name="ExtendedSequenceSkipAny" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceSkipAny" xpath=".//xs:sequence/xs:any[@processContents = 'skip'&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/xs:element[1]/xs:complexType" lineno="-1"/>
</detected>
</example>
<example xml:id="GlobalElementSimpleType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="GlobalElementSimpleType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSimpleType" xpath="./xs:element[@name]/xs:simpleType/&#10;&#9;&#9;(../(., @name), .)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="GlobalElementUnqualifiedType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElementUnqualifiedType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementUnqualifiedType" xpath="./xs:element[@name &#10;&#9;&#9;and @type and not(contains(@type, ':'))]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementTypeDefaultNamespace" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeDefaultNamespace" xpath=".//xs:element[@name and @type and not(contains(@type, ':'))]/&#10;&#9;&#9;(@name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReferenceUnqualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReferenceUnqualified" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and not(contains(@type, ':'))]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="GYearSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GYearSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GYearSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:gYear')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="GMonthSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GMonthSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GMonthSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:gMonth')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="GDaySimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GDaySimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GDaySimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:gDay')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="GYearMonthSimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GYearMonthSimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GYearMonthSimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:gYearMonth')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="GMonthDaySimpleTypePattern">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="GMonthDaySimpleTypePattern" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GMonthDaySimpleTypePattern" xpath=".//xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:gMonthDay')]/xs:pattern[@value]/&#10;&#9;&#9;(.., ../@base, ., @value)"/>
</detected>
</example>
<example xml:id="SimpleTypeRenamed">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="SimpleTypeRenamed" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SimpleTypeRenamed" xpath=".//xs:simpleType/xs:restriction[@base and count(./*) = 0]/&#10;&#9;&#9;(., @base)"/>
</detected>
</example>
<example xml:id="LocalElementSimpleType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="LocalElementSimpleType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalElementSimpleType" xpath=".//xs:element[not(parent::xs:schema)]/xs:simpleType"/>
</detected>
</example>
<example xml:id="LocalAttributeSimpleType">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="StringEnumerationType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringEnumerationType" xpath=".//xs:simpleType/xs:restriction[@base/resolve-QName(.,..) = xs:QName('xs:string') and xs:enumeration]/&#10;&#9;&#9;(., @base, xs:enumeration/(., @value))"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="LocalAttributeSimpleType" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/LocalAttributeSimpleType" xpath=".//xs:attribute[not(parent::xs:schema)]/xs:simpleType"/>
</detected>
</example>
<example xml:id="ExtendedSequenceStrictAny">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceStrictAny" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceStrictAny" xpath=".//xs:sequence/xs:any[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceAnyStrict" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceAnyStrict" xpath=".//xs:sequence/xs:any[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and (not (@namespace) or @namespace = '##any')]/&#10;&#9;(., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceLaxAny">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceLaxAny" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceLaxAny" xpath=".//xs:sequence/xs:any[@processContents = 'lax'&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceSkipAny">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceSkipAny" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceSkipAny" xpath=".//xs:sequence/xs:any[@processContents = 'skip'&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceSkipOther">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceSkipOther" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceSkipOther" xpath=".//xs:sequence/xs:any[@processContents = 'skip'&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and @namespace = '##other']/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceLaxOther">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceLaxOther" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceLaxOther" xpath=".//xs:sequence/xs:any[@processContents = 'lax'&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and @namespace = '##other']/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSequenceStrictOther">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="NonIdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/NonIdentifierName" xpath=".//.[@name and not(matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;))]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementMinOccurs0" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementMinOccurs0" xpath=".//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/&#10;&#9;&#9;(@minOccurs, @maxOccurs)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceStrictOther" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceStrictOther" xpath=".//xs:sequence/xs:any[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and @namespace = '##other']/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="AttributeFormQualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="AttributeFormQualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AttributeFormQualified" xpath=".//xs:attribute[@form='qualified']/&#10;&#9;&#9;(@form)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAttribute" xpath=".//xs:complexType/xs:attribute[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="StringAttribute" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringAttribute" xpath=".//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ComplexTypeAnyAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ComplexTypeAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeAnyAttribute" xpath=".//xs:complexType/xs:anyAttribute"/>
   <pattern name="AnyAttributeSkip" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/AnyAttributeSkip" xpath=".//xs:complexType/xs:anyAttribute[(@processContents = 'skip')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SimpleContentAnyAttribute">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="unknown">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SimpleContentAnyAttribute" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SimpleContentAnyAttribute" xpath=".//xs:complexType/xs:simpleContent/xs:extension/xs:anyAttribute"/>
   <pattern name="ExtendedSimpleContent" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSimpleContent" xpath=".//xs:complexType/xs:simpleContent/xs:extension[@base]/&#10;&#9;    (.., ., ./@base, xs:attribute/&#10;&#9;&#9;(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/xs:complexType/xs:simpleContent/xs:extension/xs:anyAttribute/@processContents" lineno="-1"/>
</detected>
</example>
<example xml:id="MixedComplexContent">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="unknown">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="MixedComplexContent" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/MixedComplexContent" xpath=".//xs:complexContent[@mixed = 'true']/&#10;&#9;&#9;(@mixed)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/xs:complexType/xs:complexContent" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/xs:complexType/xs:complexContent/xs:restriction" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/xs:complexType/xs:complexContent/xs:restriction/@base" lineno="-1"/>
   <pattern name="Unknown" status="unknown" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/Unknown" xpath="/xs:schema/xs:complexType/xs:complexContent/xs:restriction/xs:sequence" lineno="-1"/>
</detected>
</example>
<example xml:id="ElementFormUnqualified">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ElementFormUnqualified" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementFormUnqualified" xpath=".//xs:element[@form='unqualified']/&#10;&#9;&#9;(@form)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="ExtendedSimpleContent">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSimpleContent" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSimpleContent" xpath=".//xs:complexType/xs:simpleContent/xs:extension[@base]/&#10;&#9;    (.., ., ./@base, xs:attribute/&#10;&#9;&#9;(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
</detected>
</example>
<example xml:id="QualifiedLocalAttributes">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="UnqualifiedLocalElements" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalElements" xpath=".[not(@elementFormDefault) or @elementFormDefault = 'unqualified']/&#10;&#9;&#9;(., @elementFormDefault)"/>
   <pattern name="QualifiedLocalAttributes" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalAttributes" xpath=".[@attributeFormDefault = 'qualified']/&#10;&#9;&#9;(@attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="UnqualifiedLocalElements">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="UnqualifiedLocalElements" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalElements" xpath=".[not(@elementFormDefault) or @elementFormDefault = 'unqualified']/&#10;&#9;&#9;(., @elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="SequenceAnyStrict">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalComplexType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalComplexType" xpath="./xs:complexType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="ExtendedSequenceStrictAny" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ExtendedSequenceStrictAny" xpath=".//xs:sequence/xs:any[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and (not(@namespace) or @namespace = '##any')]/&#10;&#9;    (., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceAnyStrict" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceAnyStrict" xpath=".//xs:sequence/xs:any[(not(@processContents) or @processContents = 'strict')&#10;&#9;    and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0')&#10;&#9;    and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded')&#10;&#9;    and (not (@namespace) or @namespace = '##any')]/&#10;&#9;(., @processContents, @minOccurs, @maxOccurs, @namespace)"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
<example xml:id="UnionSimpleAndMemberTypes">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="GlobalSimpleType" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalSimpleType" xpath="./xs:simpleType[@name]/&#10;&#9;&#9;(., @name)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementTypeReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementTypeReference" xpath=".//xs:element[@name and @type &#10;&#9;    and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' &#10;&#9;    and contains(@type, ':')]/&#10;&#9;    (., @name, @type)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="UnionSimpleAndMemberTypes" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnionSimpleAndMemberTypes" xpath=".//xs:simpleType/xs:union[@memberTypes and xs:simpleType]/&#10;&#9;&#9;(., @memberTypes, xs:simpleType)"/>
   <pattern name="SimpleTypeRenamed" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SimpleTypeRenamed" xpath=".//xs:simpleType/xs:restriction[@base and count(./*) = 0]/&#10;&#9;&#9;(., @base)"/>
</detected>
</example>
<example xml:id="ElementFixed">
<detected xmlns:pat="http://www.w3.org/2002/ws/databinding/patterns/6/09/" xmlns:soap11enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsdl11="http://schemas.xmlsoap.org/wsdl/" version="patternsdetector(2008-03-13 08:37:41)" status="advanced">
   <pattern name="TargetNamespace" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/TargetNamespace" xpath=".[@targetNamespace]/&#10;&#9;&#9;(., @targetNamespace)"/>
   <pattern name="QualifiedLocalElements" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/QualifiedLocalElements" xpath=".[@elementFormDefault = 'qualified']/&#10;&#9;&#9;(@elementFormDefault)"/>
   <pattern name="UnqualifiedLocalAttributes" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/UnqualifiedLocalAttributes" xpath=".[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/&#10;&#9;&#9;(., @attributeFormDefault)"/>
   <pattern name="IdentifierName" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/IdentifierName" xpath=".//.[matches(@name, &quot;^[A-Za-z_]([A-Za-z0-9_]0 31)$&quot;)]/&#10;&#9;&#9;(@name)"/>
   <pattern name="GlobalElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElement" xpath="./xs:element[@name &#10;&#9;&#9;and @type and contains(@type, ':')]/&#10;&#9;&#9;(., @name, @type)"/>
   <pattern name="ComplexTypeSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ComplexTypeSequence" xpath=".//xs:complexType/xs:sequence/&#10;&#9;&#9;(., xs:element/(., @name))"/>
   <pattern name="GlobalElementSequence" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/GlobalElementSequence" xpath="./xs:element[@name]/xs:complexType/xs:sequence[xs:element]/&#10;&#9;&#9;(../../(., @name), .., ., xs:element/(., @name))"/>
   <pattern name="SequenceElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/SequenceElement" xpath=".//xs:sequence/xs:element/(.)"/>
   <pattern name="ElementFixed" status="advanced" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementFixed" xpath=".//xs:element[@fixed] / &#10;         (@fixed)"/>
   <pattern name="ElementReference" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/ElementReference" xpath=".//xs:element[@ref and contains(@ref, ':')]/&#10;&#9;    (., @ref)"/>
   <pattern name="StringElement" status="basic" pattern="http://www.w3.org/2002/ws/databinding/patterns/6/09/StringElement" xpath=".//xs:element/@type[resolve-QName(.,..) = xs:QName('xs:string')]"/>
</detected>
</example>
</detected-patterns>
