Hello
I am trying to build a service that combines types are in two different
name spaces: urn:oasis:names:tc:SPML:2:0 and
urn:oasis:names:tc:SPML:2:0:password. However, some of the complex types
refer to the same types. As I have things setup up right now with the
annotations, the wsdl that is being created is putting these in
different name spaces and causing the error below. My question is:
- What is good way to clean this up?
- Is there anything that I can do at the annotation level to avoid this
conflict?
I have attached the wsdl for reference.
thanks in advance for your help
Suneet
org.xml.sax.SAXParseException: cos-nonambig:
WC[##other:"urn:oasis:names:tc:SPML:2:0"] and
"urn:oasis:names:tc:SPML:2:0:password":psoID (or elements from their
substitution group) violate "Unique Particle Attribution". During
validation against this schema, ambiguity would be created for those two
particles.
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
at
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
at
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
at
com.sun.org.apache.xerces.internal.impl.xs.XSConstraints.reportSchemaError(XSConstraints.java:280)
at
com.sun.org.apache.xerces.internal.impl.xs.XSConstraints.fullSchemaChecking(XSConstraints.java:427)
at
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:526)
at
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:485)
at
com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory.newSchema(XMLSchemaFactory.java:210)
at
org.apache.cxf.wsdl.EndpointReferenceUtils.createSchema(EndpointReferenceUtils.java:633)
at
org.apache.cxf.wsdl.EndpointReferenceUtils.getSchema(EndpointReferenceUtils.java:655)
at
org.apache.cxf.interceptor.AbstractInDatabindingInterceptor.setSchemaInMessage(AbstractInDatabindingInterceptor.java:105)
.....
Aug 6, 2009 5:50:33 PM org.apache.cxf.wsdl.EndpointReferenceUtils
createSchema
WARNING: SAXException for newSchema() on
org.xml.sax.SAXParseException: src-resolve: Cannot resolve the name
'ns0:AddRequestType' to a(n) 'type definition' component.
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
at
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
at
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
at
com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaErr(XSDHandler.java:2541)
at
com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.reportSchemaError(XSDHandler.java:2528)
at
com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.getGlobalDecl(XSDHandler.java:1472)
at
com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDElementTraverser.traverseNamedElement(XSDElementTraverser.java:369)
at
com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDElementTraverser.traverseLocal(XSDElementTraverser.java:179)
at
com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.traverseLocalElements(XSDHandler.java:2049)
at
com.sun.org.apache.xerces.internal.impl.xs.traversers.XSDHandler.parseSchema(XSDHandler.java:582)
at
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadSchema(XMLSchemaLoader.java:552)
at
com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaLoader.loadGrammar(XMLSchemaLoader.java:519)
<?xml version='1.0' encoding='UTF-8'?><wsdl:definitions name="ExampleConnectorService" targetNamespace="http://www.openiam.org/service/connector" xmlns:ns1="http://cxf.apache.org/bindings/xformat" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.openiam.org/service/connector" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:types>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:oasis:names:tc:SPML:2:0" xmlns:tns="urn:oasis:names:tc:SPML:2:0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="addRequest" nillable="true" type="tns:AddRequestType" />
<xs:element name="addResponse" nillable="true" type="tns:AddResponseType" />
<xs:element name="deleteRequest" nillable="true" type="tns:DeleteRequestType" />
<xs:element name="deleteResponse" nillable="true" type="tns:ResponseType" />
<xs:element name="listTargetsRequest" nillable="true" type="tns:ListTargetsRequestType" />
<xs:element name="listTargetsResponse" nillable="true" type="tns:ListTargetsResponseType" />
<xs:element name="lookupRequest" nillable="true" type="tns:LookupRequestType" />
<xs:element name="lookupResponse" nillable="true" type="tns:LookupResponseType" />
<xs:element name="modifyRequest" nillable="true" type="tns:ModifyRequestType" />
<xs:element name="modifyResponse" nillable="true" type="tns:ModifyResponseType" />
<xs:element name="select" nillable="true" type="tns:SelectionType" />
<xs:complexType name="ExtensibleType">
<xs:sequence>
<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:complexType>
<xs:complexType name="AddRequestType">
<xs:complexContent>
<xs:extension base="tns:RequestType">
<xs:sequence>
<xs:element minOccurs="0" name="psoID" type="tns:PSOIdentifierType" />
<xs:element minOccurs="0" name="containerID" type="tns:PSOIdentifierType" />
<xs:element name="data" type="tns:ExtensibleType" />
<xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityData" nillable="true" type="tns:CapabilityDataType" />
</xs:sequence>
<xs:attribute name="targetID" type="xs:string" />
<xs:attribute name="returnData" type="tns:ReturnDataType" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="RequestType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence />
<xs:attribute name="requestID" type="xs:ID" />
<xs:attribute name="executionMode" type="tns:ExecutionModeType" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PSOIdentifierType">
<xs:complexContent>
<xs:extension base="tns:IdentifierType">
<xs:sequence>
<xs:element minOccurs="0" name="containerID" type="tns:PSOIdentifierType" />
</xs:sequence>
<xs:attribute name="targetID" type="xs:string" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="IdentifierType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence />
<xs:attribute name="ID" type="xs:string" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityDataType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence />
<xs:attribute name="mustUnderstand" type="xs:boolean" />
<xs:attribute name="capabilityURI" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="LookupRequestType">
<xs:complexContent>
<xs:extension base="tns:RequestType">
<xs:sequence>
<xs:element name="psoID" type="tns:PSOIdentifierType" />
</xs:sequence>
<xs:attribute name="returnData" type="tns:ReturnDataType" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ListTargetsRequestType">
<xs:complexContent>
<xs:extension base="tns:RequestType">
<xs:sequence />
<xs:attribute name="profile" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="DeleteRequestType">
<xs:complexContent>
<xs:extension base="tns:RequestType">
<xs:sequence>
<xs:element name="psoID" type="tns:PSOIdentifierType" />
</xs:sequence>
<xs:attribute name="recursive" type="xs:boolean" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ModifyRequestType">
<xs:complexContent>
<xs:extension base="tns:RequestType">
<xs:sequence>
<xs:element name="psoID" type="tns:PSOIdentifierType" />
<xs:element maxOccurs="unbounded" name="modification" type="tns:ModificationType" />
</xs:sequence>
<xs:attribute name="returnData" type="tns:ReturnDataType" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ModificationType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence>
<xs:element minOccurs="0" name="component" type="tns:SelectionType" />
<xs:element minOccurs="0" name="data" type="tns:ExtensibleType" />
<xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityData" nillable="true" type="tns:CapabilityDataType" />
</xs:sequence>
<xs:attribute name="modificationMode" type="tns:ModificationModeType" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SelectionType">
<xs:complexContent>
<xs:extension base="tns:QueryClauseType">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="namespacePrefixMap" nillable="true" type="tns:NamespacePrefixMappingType" />
</xs:sequence>
<xs:attribute name="path" type="xs:string" use="required" />
<xs:attribute name="namespaceURI" type="xs:string" use="required" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="QueryClauseType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="NamespacePrefixMappingType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence />
<xs:attribute name="prefix" type="xs:string" use="required" />
<xs:attribute name="namespace" type="xs:string" use="required" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilityType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="appliesTo" nillable="true" type="tns:SchemaEntityRefType" />
</xs:sequence>
<xs:attribute name="namespaceURI" type="xs:anyURI" />
<xs:attribute name="location" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SchemaEntityRefType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence />
<xs:attribute name="targetID" type="xs:string" />
<xs:attribute name="entityName" type="xs:string" />
<xs:attribute name="isContainer" type="xs:boolean" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ModifyResponseType">
<xs:complexContent>
<xs:extension base="tns:ResponseType">
<xs:sequence>
<xs:element minOccurs="0" name="pso" type="tns:PSOType" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ResponseType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="errorMessage" nillable="true" type="xs:string" />
</xs:sequence>
<xs:attribute name="status" type="tns:StatusCodeType" use="required" />
<xs:attribute name="requestID" type="xs:ID" />
<xs:attribute name="error" type="tns:ErrorCode" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="PSOType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence>
<xs:element name="psoID" type="tns:PSOIdentifierType" />
<xs:element minOccurs="0" name="data" type="tns:ExtensibleType" />
<xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityData" nillable="true" type="tns:CapabilityDataType" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="AddResponseType">
<xs:complexContent>
<xs:extension base="tns:ResponseType">
<xs:sequence>
<xs:element minOccurs="0" name="pso" type="tns:PSOType" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ListTargetsResponseType">
<xs:complexContent>
<xs:extension base="tns:ResponseType">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="target" nillable="true" type="tns:TargetType" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="TargetType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence>
<xs:element maxOccurs="unbounded" name="schema" type="tns:SchemaType" />
<xs:element minOccurs="0" name="capabilities" type="tns:CapabilitiesListType" />
</xs:sequence>
<xs:attribute name="targetID" type="xs:string" />
<xs:attribute name="profile" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SchemaType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="supportedSchemaEntity" nillable="true" type="tns:SchemaEntityRefType" />
</xs:sequence>
<xs:attribute name="ref" type="xs:anyURI" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="CapabilitiesListType">
<xs:complexContent>
<xs:extension base="tns:ExtensibleType">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="capability" nillable="true" type="tns:CapabilityType" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="LookupResponseType">
<xs:complexContent>
<xs:extension base="tns:ResponseType">
<xs:sequence>
<xs:element minOccurs="0" name="pso" type="tns:PSOType" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="ReturnDataType">
<xs:restriction base="xs:string">
<xs:enumeration value="identifier" />
<xs:enumeration value="data" />
<xs:enumeration value="everything" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ExecutionModeType">
<xs:restriction base="xs:string">
<xs:enumeration value="synchronous" />
<xs:enumeration value="asynchronous" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ModificationModeType">
<xs:restriction base="xs:string">
<xs:enumeration value="add" />
<xs:enumeration value="replace" />
<xs:enumeration value="delete" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="StatusCodeType">
<xs:restriction base="xs:string">
<xs:enumeration value="success" />
<xs:enumeration value="failure" />
<xs:enumeration value="pending" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ErrorCode">
<xs:restriction base="xs:string">
<xs:enumeration value="malformedRequest" />
<xs:enumeration value="unsupportedOperation" />
<xs:enumeration value="unsupportedIdentifierType" />
<xs:enumeration value="noSuchIdentifier" />
<xs:enumeration value="customError" />
<xs:enumeration value="unsupportedExecutionMode" />
<xs:enumeration value="invalidContainment" />
<xs:enumeration value="noSuchRequest" />
<xs:enumeration value="unsupportedSelectionType" />
<xs:enumeration value="resultSetToLarge" />
<xs:enumeration value="unsupportedProfile" />
<xs:enumeration value="invalidIdentifier" />
<xs:enumeration value="alreadyExists" />
<xs:enumeration value="containerNotEmpty" />
</xs:restriction>
</xs:simpleType>
</xs:schema>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="urn:oasis:names:tc:SPML:2:0:password" xmlns:ns1="urn:oasis:names:tc:SPML:2:0" xmlns:tns="urn:oasis:names:tc:SPML:2:0:password" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="urn:oasis:names:tc:SPML:2:0" />
<xs:element name="expirePasswordRequest" nillable="true" type="tns:ExpirePasswordRequestType" />
<xs:element name="expirePasswordResponse" nillable="true" type="ns1:ResponseType" />
<xs:element name="resetPasswordRequest" nillable="true" type="tns:ResetPasswordRequestType" />
<xs:element name="resetPasswordResponse" nillable="true" type="tns:ResetPasswordResponseType" />
<xs:element name="setPasswordRequest" nillable="true" type="tns:SetPasswordRequestType" />
<xs:element name="setPasswordResponse" nillable="true" type="ns1:ResponseType" />
<xs:element name="validatePasswordRequest" nillable="true" type="tns:ValidatePasswordRequestType" />
<xs:element name="validatePasswordResponse" nillable="true" type="tns:ValidatePasswordResponseType" />
<xs:complexType name="ExpirePasswordRequestType">
<xs:complexContent>
<xs:extension base="ns1:RequestType">
<xs:sequence>
<xs:element name="psoID" type="ns1:PSOIdentifierType" />
</xs:sequence>
<xs:attribute name="remainingLogins" type="xs:int" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValidatePasswordRequestType">
<xs:complexContent>
<xs:extension base="ns1:RequestType">
<xs:sequence>
<xs:element name="psoID" type="ns1:PSOIdentifierType" />
<xs:element name="password" type="xs:string" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ValidatePasswordResponseType">
<xs:complexContent>
<xs:extension base="ns1:ResponseType">
<xs:sequence />
<xs:attribute name="valid" type="xs:boolean" />
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="SetPasswordRequestType">
<xs:complexContent>
<xs:extension base="ns1:RequestType">
<xs:sequence>
<xs:element name="psoID" type="ns1:PSOIdentifierType" />
<xs:element name="password" type="xs:string" />
<xs:element minOccurs="0" name="currentPassword" type="xs:string" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ResetPasswordRequestType">
<xs:complexContent>
<xs:extension base="ns1:RequestType">
<xs:sequence>
<xs:element name="psoID" type="ns1:PSOIdentifierType" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="ResetPasswordResponseType">
<xs:complexContent>
<xs:extension base="ns1:ResponseType">
<xs:sequence>
<xs:element minOccurs="0" name="password" type="xs:string" />
</xs:sequence>
<xs:anyAttribute namespace="##other" processContents="skip" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:schema>
<xsd:schema attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://www.openiam.org/service/connector" xmlns:ns0="urn:oasis:names:tc:SPML:2:0" xmlns:ns1="urn:oasis:names:tc:SPML:2:0:password" xmlns:tns="http://www.openiam.org/service/connector" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:import namespace="urn:oasis:names:tc:SPML:2:0" />
<xsd:import namespace="urn:oasis:names:tc:SPML:2:0:password" />
<xsd:element name="add" type="tns:add" />
<xsd:complexType name="add">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns0:AddRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="addResponse" type="tns:addResponse" />
<xsd:complexType name="addResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns0:AddResponseType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="expirePassword" type="tns:expirePassword" />
<xsd:complexType name="expirePassword">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns1:ExpirePasswordRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="expirePasswordResponse" type="tns:expirePasswordResponse" />
<xsd:complexType name="expirePasswordResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns0:ResponseType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="lookup" type="tns:lookup" />
<xsd:complexType name="lookup">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns0:LookupRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="lookupResponse" type="tns:lookupResponse" />
<xsd:complexType name="lookupResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns0:LookupResponseType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="delete" type="tns:delete" />
<xsd:complexType name="delete">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns0:DeleteRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="deleteResponse" type="tns:deleteResponse" />
<xsd:complexType name="deleteResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns0:ResponseType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="validatePassword" type="tns:validatePassword" />
<xsd:complexType name="validatePassword">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns1:ValidatePasswordRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="validatePasswordResponse" type="tns:validatePasswordResponse" />
<xsd:complexType name="validatePasswordResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns1:ValidatePasswordResponseType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="modify" type="tns:modify" />
<xsd:complexType name="modify">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns0:ModifyRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="modifyResponse" type="tns:modifyResponse" />
<xsd:complexType name="modifyResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns0:ModifyResponseType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="setPassword" type="tns:setPassword" />
<xsd:complexType name="setPassword">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns1:SetPasswordRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="setPasswordResponse" type="tns:setPasswordResponse" />
<xsd:complexType name="setPasswordResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns0:ResponseType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="resetPassword" type="tns:resetPassword" />
<xsd:complexType name="resetPassword">
<xsd:sequence>
<xsd:element minOccurs="0" name="arg0" type="ns1:ResetPasswordRequestType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="resetPasswordResponse" type="tns:resetPasswordResponse" />
<xsd:complexType name="resetPasswordResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns1:ResetPasswordResponseType" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
</wsdl:types>
<wsdl:message name="resetPasswordResponse">
<wsdl:part element="tns:resetPasswordResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="delete">
<wsdl:part element="tns:delete" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="modifyResponse">
<wsdl:part element="tns:modifyResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="setPassword">
<wsdl:part element="tns:setPassword" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="deleteResponse">
<wsdl:part element="tns:deleteResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="setPasswordResponse">
<wsdl:part element="tns:setPasswordResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="validatePasswordResponse">
<wsdl:part element="tns:validatePasswordResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="lookupResponse">
<wsdl:part element="tns:lookupResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="modify">
<wsdl:part element="tns:modify" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="add">
<wsdl:part element="tns:add" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="expirePasswordResponse">
<wsdl:part element="tns:expirePasswordResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="lookup">
<wsdl:part element="tns:lookup" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="addResponse">
<wsdl:part element="tns:addResponse" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="expirePassword">
<wsdl:part element="tns:expirePassword" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="validatePassword">
<wsdl:part element="tns:validatePassword" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:message name="resetPassword">
<wsdl:part element="tns:resetPassword" name="parameters">
</wsdl:part>
</wsdl:message>
<wsdl:portType name="ConnectorService">
<wsdl:operation name="add">
<wsdl:input message="tns:add" name="add">
</wsdl:input>
<wsdl:output message="tns:addResponse" name="addResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="expirePassword">
<wsdl:input message="tns:expirePassword" name="expirePassword">
</wsdl:input>
<wsdl:output message="tns:expirePasswordResponse" name="expirePasswordResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="lookup">
<wsdl:input message="tns:lookup" name="lookup">
</wsdl:input>
<wsdl:output message="tns:lookupResponse" name="lookupResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="delete">
<wsdl:input message="tns:delete" name="delete">
</wsdl:input>
<wsdl:output message="tns:deleteResponse" name="deleteResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="validatePassword">
<wsdl:input message="tns:validatePassword" name="validatePassword">
</wsdl:input>
<wsdl:output message="tns:validatePasswordResponse" name="validatePasswordResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="modify">
<wsdl:input message="tns:modify" name="modify">
</wsdl:input>
<wsdl:output message="tns:modifyResponse" name="modifyResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setPassword">
<wsdl:input message="tns:setPassword" name="setPassword">
</wsdl:input>
<wsdl:output message="tns:setPasswordResponse" name="setPasswordResponse">
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="resetPassword">
<wsdl:input message="tns:resetPassword" name="resetPassword">
</wsdl:input>
<wsdl:output message="tns:resetPasswordResponse" name="resetPasswordResponse">
</wsdl:output>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="ExampleConnectorServiceSoapBinding" type="tns:ConnectorService">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="add">
<soap:operation soapAction="" style="document" />
<wsdl:input name="add">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="addResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="expirePassword">
<soap:operation soapAction="" style="document" />
<wsdl:input name="expirePassword">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="expirePasswordResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="lookup">
<soap:operation soapAction="" style="document" />
<wsdl:input name="lookup">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="lookupResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="delete">
<soap:operation soapAction="" style="document" />
<wsdl:input name="delete">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="deleteResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="validatePassword">
<soap:operation soapAction="" style="document" />
<wsdl:input name="validatePassword">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="validatePasswordResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="modify">
<soap:operation soapAction="" style="document" />
<wsdl:input name="modify">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="modifyResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="setPassword">
<soap:operation soapAction="" style="document" />
<wsdl:input name="setPassword">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="setPasswordResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="resetPassword">
<soap:operation soapAction="" style="document" />
<wsdl:input name="resetPassword">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="resetPasswordResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="ExampleConnectorService">
<wsdl:port binding="tns:ExampleConnectorServiceSoapBinding" name="ExampleConnectorServicePort">
<soap:address location="http://localhost:8080/idm-connector-core/ExampleConnectorService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>