W3C

WS-WSDL-11-xsd

The document http://schemas.xmlsoap.org/wsdl/2003-02-11.xsd has been classified as being possibly an Advanced XML Schema Patterns for Databinding 1.0 conformant document as it only exhibits the following patterns:

Status Nodes Name XPath
basic TargetNamespace .[@targetNamespace]/ (., @targetNamespace)
basic QualifiedLocalElements .[@elementFormDefault = 'qualified']/ (@elementFormDefault)
basic UnqualifiedLocalAttributes .[not(@attributeFormDefault) or @attributeFormDefault = 'unqualified']/ (., @attributeFormDefault)
basic DocumentationElement .//xs:annotation/xs:documentation/ (.., ., .//*, .//@*)
basic IdentifierName .//.[matches(@name, "^[A-Za-z_]([A-Za-z0-9_]0 31)$")]/ (@name)
basic NonIdentifierName .//.[@name and not(matches(@name, "^[A-Za-z_]([A-Za-z0-9_]0 31)$"))]/ (@name)
basic GlobalElement ./xs:element[@name and @type and contains(@type, ':')]/ (., @name, @type)
basic GlobalAttribute ./xs:attribute[@name and @type and contains(@type, ":")]/ (., @name, @type)
advanced MixedContentType .//xs:complexType[@mixed = 'true']/ (@mixed)
basic ElementMinOccurs0 .//xs:element[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/ (@minOccurs, @maxOccurs)
basic ElementMinOccurs0MaxOccursUnbounded .//xs:element[@minOccurs = '0' and @maxOccurs = 'unbounded']/ (@minOccurs, @maxOccurs)
basic AttributeOptional .//xs:attribute[@use = 'optional']/ (@use)
advanced AttributeRequired .//xs:attribute[@use = 'required']/ (@use)
basic GlobalComplexType ./xs:complexType[@name]/ (., @name)
advanced GlobalComplexTypeAbstract ./xs:complexType[@abstract='true']/ (@abstract)
advanced ComplexTypeOnlyAttributes .//xs:complexType/xs:attribute[../not(xs:choice or xs:sequence or xs:all or xs:anyAttribute or xs:group or xs:attributeGroup or xs:simpleContent or xs:complexContent)]/ (., ..,@use)
basic ComplexTypeSequence .//xs:complexType/xs:sequence/ (., xs:element/(., @name))
basic SequenceSequenceElement .//xs:sequence/xs:sequence/xs:element/ (., ..)
advanced SequenceMinOccurs0 .//xs:sequence[@minOccurs = '0' and (not(@maxOccurs) or @maxOccurs = '1')]/ (@minOccurs, @maxOccurs)
advanced ExtendedSequenceLaxAny .//xs:sequence/xs:any[@processContents = 'lax' and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0') and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded') and (not(@namespace) or @namespace = '##any')]/ (., @processContents, @minOccurs, @maxOccurs, @namespace)
advanced ExtendedSequenceLaxOther .//xs:sequence/xs:any[@processContents = 'lax' and (not (@minOccurs) or @minOccurs = '1' or @minOccurs = '0') and (not (@maxOccurs) or @maxOccurs = '1' or @maxOccurs='unbounded') and @namespace = '##other']/ (., @processContents, @minOccurs, @maxOccurs, @namespace)
advanced SequenceChoice .//xs:sequence/xs:choice/(.)
advanced ChoiceElement .//xs:choice/xs:element/(.)
basic SequenceElement .//xs:sequence/xs:element/(.)
basic SequenceSingleRepeatedElement .//xs:sequence[count(xs:element) = 1]/xs:element[@maxOccurs = 'unbounded']/ (., @maxOccurs)
basic ElementTypeReference .//xs:element[@name and @type and namespace-uri-from-QName(resolve-QName(@type,.)) != 'http://www.w3.org/2001/XMLSchema' and contains(@type, ':')]/ (., @name, @type)
basic AttributeReference .//xs:attribute[@ref and contains(@ref, ":")]/ (., @ref)
basic StringAttribute .//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:string')]
basic BooleanAttribute .//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:boolean')]
basic AnyURIAttribute .//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:anyURI')]
basic QNameAttribute .//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:QName')]
advanced NMTOKENSAttribute .//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:NMTOKENS')]
basic NCNameAttribute .//xs:attribute/@type[resolve-QName(.,..) = xs:QName('xs:NCName')]
basic ComplexTypeAttributeExtension .//xs:complexType/xs:complexContent[xs:extension[@base]/xs:attribute]/ (., xs:extension/(., @base, xs:attribute/(., @name)))
basic ComplexTypeSequenceExtension .//xs:complexType/xs:complexContent[xs:extension[@base]/xs:sequence]/ (., xs:extension/ (., @base, xs:sequence/(., xs:element/(., @name))))
advanced GlobalComplexTypeEmptyExtension ./xs:complexType[@name]/xs:complexContent[xs:extension[@base]/not(*)]/ (../../(., @name), .., ., xs:extension/(., @base))
advanced Unique .//xs:element/xs:unique/(.., .,xs:selector,xs:selector/@xpath,xs:field,xs:field/@xpath)
advanced ComplexContentExtensionAnyAttribute .//xs:complexType/xs:complexContent/xs:extension/xs:anyAttribute/(., @namespace, @processContents)
advanced ElementKey .//xs:element/xs:key[xs:selector and xs:field]/(., xs:selector, xs:selector/(@xpath), xs:field, xs:field/(@xpath))
advanced ComplexTypeExtension .//xs:complexType/xs:complexContent/xs:extension[@base]/(., @base, ../(.))

<xs:schema TargetNamespace UnqualifiedLocalAttributes GlobalComplexTypeEmptyExtension targetNamespace="http://schemas.xmlsoap.org/wsdl/" TargetNamespace elementFormDefault="qualified" QualifiedLocalElements >
<xs:complexType GlobalComplexType mixed="true" MixedContentType name="tDocumentation" IdentifierName GlobalComplexType >
<xs:sequence ComplexTypeSequence >
<xs:any ExtendedSequenceLaxAny minOccurs="0" ExtendedSequenceLaxAny maxOccurs="unbounded" ExtendedSequenceLaxAny processContents="lax" ExtendedSequenceLaxAny />
</xs:sequence>
</xs:complexType>
<xs:complexType GlobalComplexType name="tDocumented" IdentifierName GlobalComplexType >
<xs:annotation DocumentationElement >
<xs:documentation DocumentationElement >
This type is extended by component types to allow them to be documented
</xs:documentation>
</xs:annotation>
<xs:sequence ComplexTypeSequence ></xs:sequence>
</xs:complexType>
<xs:complexType GlobalComplexType name="tExtensibleAttributesDocumented" IdentifierName GlobalComplexType abstract="true" GlobalComplexTypeAbstract >
<xs:complexContent ComplexTypeExtension >
<xs:extension ComplexTypeExtension base="wsdl:tDocumented" ComplexTypeExtension >
<xs:annotation DocumentationElement >
<xs:documentation DocumentationElement >
This type is extended by component types to allow attributes from other namespaces to be added.
</xs:documentation>
</xs:annotation>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tExtensibleDocumented" IdentifierName GlobalComplexType abstract="true" GlobalComplexTypeAbstract >
<xs:complexContent ComplexTypeSequenceExtension ComplexTypeExtension >
<xs:extension ComplexTypeSequenceExtension ComplexTypeExtension base="wsdl:tDocumented" ComplexTypeSequenceExtension ComplexTypeExtension >
<xs:annotation DocumentationElement >
<xs:documentation DocumentationElement >
This type is extended by component types to allow elements from other namespaces to be added.
</xs:documentation>
</xs:annotation>
<xs:sequence ComplexTypeSequenceExtension >
<xs:any ExtendedSequenceLaxOther namespace="##other" ExtendedSequenceLaxOther minOccurs="0" ExtendedSequenceLaxOther maxOccurs="unbounded" ExtendedSequenceLaxOther processContents="lax" ExtendedSequenceLaxOther />
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element GlobalElement ElementTypeReference name="definitions" IdentifierName GlobalElement ElementTypeReference type="wsdl:tDefinitions" GlobalElement ElementTypeReference >
<xs:key ElementKey name="message" IdentifierName >
<xs:selector ElementKey xpath="wsdl:message" ElementKey />
<xs:field ElementKey xpath="@name" ElementKey />
</xs:key>
<xs:key ElementKey name="portType" IdentifierName >
<xs:selector ElementKey xpath="wsdl:portType" ElementKey />
<xs:field ElementKey xpath="@name" ElementKey />
</xs:key>
<xs:key ElementKey name="binding" IdentifierName >
<xs:selector ElementKey xpath="wsdl:binding" ElementKey />
<xs:field ElementKey xpath="@name" ElementKey />
</xs:key>
<xs:key ElementKey name="service" IdentifierName >
<xs:selector ElementKey xpath="wsdl:service" ElementKey />
<xs:field ElementKey xpath="@name" ElementKey />
</xs:key>
<xs:key ElementKey name="import" IdentifierName >
<xs:selector ElementKey xpath="wsdl:import" ElementKey />
<xs:field ElementKey xpath="@namespace" ElementKey />
</xs:key>
</xs:element>
<xs:group name="anyTopLevelOptionalElement" IdentifierName >
<xs:annotation DocumentationElement >
<xs:documentation DocumentationElement >
Any top level optional element allowed to appear more then once - any child of definitions element except wsdl:types. Any extensibility element is allowed in any place.
</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element ChoiceElement ElementTypeReference Unique name="message" IdentifierName ElementTypeReference type="wsdl:tMessage" ElementTypeReference >
<xs:unique Unique name="part" IdentifierName >
<xs:selector Unique xpath="wsdl:part" Unique />
<xs:field Unique xpath="@name" Unique />
</xs:unique>
</xs:element>
<xs:element ChoiceElement ElementTypeReference Unique name="service" IdentifierName ElementTypeReference type="wsdl:tService" ElementTypeReference >
<xs:unique Unique name="port" IdentifierName >
<xs:selector Unique xpath="wsdl:port" Unique />
<xs:field Unique xpath="@name" Unique />
</xs:unique>
</xs:element>
</xs:choice>
</xs:group>
<xs:complexType GlobalComplexType name="tDefinitions" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeSequenceExtension ComplexTypeExtension >
<xs:extension ComplexTypeAttributeExtension ComplexTypeSequenceExtension ComplexTypeExtension base="wsdl:tExtensibleDocumented" ComplexTypeAttributeExtension ComplexTypeSequenceExtension ComplexTypeExtension >
<xs:sequence ComplexTypeSequenceExtension >
<xs:group ref="wsdl:anyTopLevelOptionalElement" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ComplexTypeAttributeExtension name="targetNamespace" IdentifierName ComplexTypeAttributeExtension type="xs:anyURI" AnyURIAttribute use="optional" AttributeOptional />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tImport" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeExtension >
<xs:extension ComplexTypeAttributeExtension ComplexTypeExtension base="wsdl:tExtensibleAttributesDocumented" ComplexTypeAttributeExtension ComplexTypeExtension >
<xs:attribute ComplexTypeAttributeExtension name="namespace" IdentifierName ComplexTypeAttributeExtension type="xs:anyURI" AnyURIAttribute use="required" AttributeRequired />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tPart" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeExtension >
<xs:extension ComplexTypeAttributeExtension ComplexTypeExtension base="wsdl:tExtensibleAttributesDocumented" ComplexTypeAttributeExtension ComplexTypeExtension > </xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tOperation" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeSequenceExtension ComplexTypeExtension >
<xs:extension ComplexTypeAttributeExtension ComplexTypeSequenceExtension ComplexTypeExtension base="wsdl:tExtensibleDocumented" ComplexTypeAttributeExtension ComplexTypeSequenceExtension ComplexTypeExtension >
<xs:sequence ComplexTypeSequenceExtension >
<xs:choice SequenceChoice >
<xs:group ref="wsdl:request-response-or-one-way-operation"/>
<xs:group ref="wsdl:solicit-response-or-notification-operation"/>
</xs:choice>
</xs:sequence>
<xs:attribute ComplexTypeAttributeExtension name="parameterOrder" IdentifierName ComplexTypeAttributeExtension type="xs:NMTOKENS" NMTOKENSAttribute use="optional" AttributeOptional />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:group name="request-response-or-one-way-operation" NonIdentifierName ></xs:group>
<xs:group name="solicit-response-or-notification-operation" NonIdentifierName ></xs:group>
<xs:complexType GlobalComplexType name="tParam" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeExtension >
<xs:extension ComplexTypeAttributeExtension ComplexTypeExtension base="wsdl:tExtensibleAttributesDocumented" ComplexTypeAttributeExtension ComplexTypeExtension > </xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tFault" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeExtension >
<xs:extension ComplexTypeAttributeExtension ComplexTypeExtension base="wsdl:tExtensibleAttributesDocumented" ComplexTypeAttributeExtension ComplexTypeExtension > </xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tBindingOperationMessage" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeExtension ></xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tBindingOperationFault" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeExtension ></xs:complexContent>
</xs:complexType>
<xs:complexType GlobalComplexType name="tBindingOperation" IdentifierName GlobalComplexType ></xs:complexType>
<xs:complexType GlobalComplexType name="tPort" IdentifierName GlobalComplexType >
<xs:complexContent ComplexTypeAttributeExtension ComplexTypeExtension ></xs:complexContent>
</xs:complexType>
<xs:attribute GlobalAttribute name="arrayType" IdentifierName GlobalAttribute type="xs:string" GlobalAttribute StringAttribute />
<xs:attribute GlobalAttribute name="required" IdentifierName GlobalAttribute type="xs:boolean" GlobalAttribute BooleanAttribute />
<xs:complexType GlobalComplexType ComplexTypeOnlyAttributes name="tExtensibilityElement" IdentifierName GlobalComplexType abstract="true" GlobalComplexTypeAbstract ></xs:complexType>
</xs:schema>

This document was produced by the W3C XML Schema Patterns for Databinding Working Group. Comments on this document may be sent to the public public-xsd-databinding-comments@w3.org mailing list (public archive).