将.xsd代码复制到wsdl中

时间:2015-11-03 14:49:18

标签: xsd wsdl

我有一个包含几个导入模式语句的wsdl,如下所示:

<types>
    **<xsd:schema>
    <xsd:import namespace="http://quickfeedback.ws.cdb.skoda.vwg"    
schemaLocation="CDBQuickFeedbackService_schema1.xsd"/>
</xsd:schema>
<xsd:schema>
  <xsd:import namespace="http://common.ws.cdb.skoda.vwg"  
schemaLocation="CDBQuickFeedbackService_schema2.xsd"/>
</xsd:schema>**

我正在使用一个工具(wsdl2rpg)来创建wsdl的接口,但不幸的是,它不支持/识别导入。因此,我需要将代码从.xsd复制到wsdl。

作为一个完整的新手,我不确定我应该复制什么代码。下面是schema1,有人可以告诉我应该复制什么以及在哪里?我已经尝试了几次,我认为是逻辑块等,但它们似乎不起作用(即该工具仍然没有获取复制的代码)。

<?xml version="1.0" encoding="UTF-8"?><!--Generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, (build IBM 2.2.3-11/25/2013 12:35 PM(foreman)-) 
See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> --><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://quickfeedback.ws.cdb.skoda.vwg" xmlns:ns1="http://common.ws.cdb.skoda.vwg" version="1.0" targetNamespace="http://quickfeedback.ws.cdb.skoda.vwg">

  <xs:import namespace="http://common.ws.cdb.skoda.vwg" schemaLocation="CDBQuickFeedbackService_schema2.xsd"></xs:import>

  <xs:element name="GetQuickFeedbackEventsRequest">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="BID" type="xs:string" minOccurs="0"></xs:element>
        <xs:element name="Brand" type="xs:string" minOccurs="0"></xs:element>
        <xs:element name="Type" type="xs:integer" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="GetQuickFeedbackEventsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ResultSet" type="ns1:ResultSetType" minOccurs="0"></xs:element>
        <xs:element name="EventSet" type="tns:QuickFeedbackEventSetType" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="GetQuickFeedbackResultsRequest">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="Date" type="xs:date" minOccurs="0"></xs:element>
        <xs:element name="BID" type="xs:string" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="GetQuickFeedbackResultsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="QuickFeedbackResultSet" type="tns:QuickFeedbackResultSetType" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="GetRejectedAgreementCustomersCountRequest">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="RejectionDate" type="xs:date" minOccurs="0"></xs:element>
        <xs:element name="BID" type="xs:string" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="GetRejectedAgreementCustomersCountResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ResulSet" type="ns1:ResultSetType" minOccurs="0"></xs:element>
        <xs:element name="Count" type="xs:int"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="GetRejectedAgreementCustomersRequest">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="RejectionDate" type="xs:date" minOccurs="0"></xs:element>
        <xs:element name="BID" type="xs:string" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="GetRejectedAgreementCustomersResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ResulSet" type="ns1:ResultSetType" minOccurs="0"></xs:element>
        <xs:element name="DataSet" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Customer" type="tns:GetRejectedAgreementCustomerType" minOccurs="0" maxOccurs="unbounded"></xs:element>
            </xs:sequence>
            <xs:attribute name="Count" type="xs:int" use="required"></xs:attribute>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="InsertQuickFeedbackEventsRequest">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="EventSet" type="tns:QuickFeedbackEventSetType"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="InsertQuickFeedbackEventsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ResultSet" type="ns1:ResultSetType" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="InsertQuickFeedbackResultsRequest">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="QuickFeedbackResultSet" type="tns:QuickFeedbackResultSetType" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="InsertQuickFeedbackResultsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ResultSet" type="ns1:ResultSetType" minOccurs="0"></xs:element>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:complexType name="GetRejectedAgreementCustomerType">
    <xs:sequence>
      <xs:element name="ID" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Email" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Phone" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Details" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Detail" maxOccurs="unbounded">
              <xs:complexType>
                <xs:complexContent>
                  <xs:extension base="tns:QuickFeedbackCustomerType">
                    <xs:sequence>
                      <xs:element name="Date" type="xs:dateTime"></xs:element>
                    </xs:sequence>
                    <xs:attribute name="Number" type="xs:int"></xs:attribute>
                  </xs:extension>
                </xs:complexContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="Count" type="xs:int"></xs:attribute>
        </xs:complexType>
      </xs:element>
      <xs:element name="Cars" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="Car" type="tns:CarType" maxOccurs="unbounded"></xs:element>
          </xs:sequence>
          <xs:attribute name="Count" type="xs:int"></xs:attribute>
        </xs:complexType>
      </xs:element>
      <xs:element name="StudyId" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="Period" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="SurveyNumber" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="DeliveryDate" type="xs:date" minOccurs="0"></xs:element>
      <xs:element name="EventType" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="ReturnReason" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="QuestionnaireDate" type="xs:date" minOccurs="0"></xs:element>
    </xs:sequence>
    <xs:attribute name="Number" type="xs:int"></xs:attribute>
  </xs:complexType>

  <xs:complexType name="QuickFeedbackCustomerType">
    <xs:sequence>
      <xs:element name="Salutation" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Firstname" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Lastname" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Email" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Phone" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Street" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="City" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="PostalCode" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Country" type="xs:string" minOccurs="0"></xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="CarType">
    <xs:sequence>
      <xs:element name="Brand" type="xs:string"></xs:element>
      <xs:element name="VIN" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Model" type="xs:string" minOccurs="0"></xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="QuickFeedbackEventType">
    <xs:sequence>
      <xs:element name="StudyId" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="Period" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="SurveyNumber" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="Date" type="xs:dateTime"></xs:element>
      <xs:element name="Type" type="xs:integer"></xs:element>
      <xs:element name="Customer">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="tns:QuickFeedbackCustomerType">
              <xs:sequence>
                <xs:element name="ID" type="xs:string" minOccurs="0"></xs:element>
              </xs:sequence>
            </xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="Car" type="tns:CarType"></xs:element>
      <xs:element name="Organization" type="tns:OrganizationType" minOccurs="0"></xs:element>
      <xs:element name="Importer" type="tns:ImporterType"></xs:element>
      <xs:element name="ManualImport" type="xs:integer"></xs:element>
    </xs:sequence>
    <xs:attribute name="Number" type="xs:int" use="required"></xs:attribute>
  </xs:complexType>

  <xs:complexType name="OrganizationType">
    <xs:sequence>
      <xs:element name="Country" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Code" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="EngineerCode" type="xs:string" minOccurs="0"></xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="ImporterType">
    <xs:sequence>
      <xs:element name="BID" type="xs:string"></xs:element>
      <xs:element name="Country" type="xs:string" minOccurs="0"></xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="QuickFeedbackResultSetType">
    <xs:sequence>
      <xs:element name="QuickFeedbackResult" type="tns:QuickFeedbackResultType" maxOccurs="unbounded"></xs:element>
    </xs:sequence>
    <xs:attribute name="Count" type="xs:int" use="required"></xs:attribute>
  </xs:complexType>

  <xs:complexType name="QuickFeedbackResultType">
    <xs:sequence>
      <xs:element name="StudyId" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="Period" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="SurveyNumber" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="DeliveryDate" type="xs:date" minOccurs="0"></xs:element>
      <xs:element name="EventType" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="ReturnReason" type="xs:integer" minOccurs="0"></xs:element>
      <xs:element name="QuestionnaireDate" type="xs:date" minOccurs="0"></xs:element>
      <xs:element name="Customer" type="tns:CustomerIdType"></xs:element>
      <xs:element name="BID" type="xs:string"></xs:element>
    </xs:sequence>
    <xs:attribute name="Number" type="xs:int" use="required"></xs:attribute>
  </xs:complexType>

  <xs:complexType name="CustomerIdType">
    <xs:sequence>
      <xs:element name="ID" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Email" type="xs:string" minOccurs="0"></xs:element>
      <xs:element name="Phone" type="xs:string" minOccurs="0"></xs:element>
    </xs:sequence>
  </xs:complexType>

  <xs:complexType name="QuickFeedbackEventSetType">
    <xs:sequence>
      <xs:element name="Event" type="tns:QuickFeedbackEventType" maxOccurs="unbounded"></xs:element>
    </xs:sequence>
    <xs:attribute name="Count" type="xs:int" use="required"></xs:attribute>
  </xs:complexType>
</xs:schema>

1 个答案:

答案 0 :(得分:0)

<types>元素可以包含零个或多个<xsd:schema>个元素,每个元素的内容可以是外部xsd文件(或多个)的导入,也可以是模式本身。

请注意,在schema1中,您还要导入schema2.xsd

 <xs:import namespace="http://common.ws.cdb.skoda.vwg" schemaLocation="CDBQuickFeedbackService_schema2.xsd"></xs:import>

在您的情况下,您有两种选择:

在类型元素

中创建两个架构元素
<definitions>
    <types>
        <xsd:schema>
            <!-- content of schema2.xsd -->
        </xsd:schema>
        <xsd:schema>
            <!-- content of schema1.xsd -->
        </xsd:schema>
    </types>
</definitions>

在类型元素

中创建一个组合架构元素

这也是一个直接的解决方案,因为您只需将两个xsd文件的内容转储到一个元素中,但您必须注意声明的命名空间。

在schema1中,您有以下命名空间:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"  
xmlns:ns1="http://common.ws.cdb.skoda.vwg"  
targetNamespace="http://quickfeedback.ws.cdb.skoda.vwg"
xmlns:tns="http://quickfeedback.ws.cdb.skoda.vwg" >

声明了ns1,因此您可以使用该命名空间中的类型,该命名空间引用schema2.xsd的targetnamespace。因此,如果您打开schema2.xsd,您应该会看到如下内容:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"  
    xmlns:ns1="http://common.ws.cdb.skoda.vwg"  
    targetNamespace="http://common.ws.cdb.skoda.vwg"
    xmlns:tns="http://common.ws.cdb.skoda.vwg" >

但是现在,由于您将两个模式合并为一个模式,因此您只需要一个目标名称空间,并且您已经不需要ns1。所以你的wsdl应该是这样的:

<definitions>
  <types>
    <xs:schema targetNamespace="http://quickfeedback.ws.cdb.skoda.vwg" xmlns:tns="http://quickfeedback.ws.cdb.skoda.vwg" xmlns:xs="http://www.w3.org/2001/XMLSchema">
      <!-- Here copy the content of schema2.xsd without the <xs:schema>element -->
      <xs:element name="GetQuickFeedbackEventsRequest">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="BID" type="xs:string"/>
            <xs:element minOccurs="0" name="Brand" type="xs:string"/>
            <xs:element minOccurs="0" name="Type" type="xs:integer"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetQuickFeedbackEventsResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="ResultSet" type="tns:ResultSetType"/>
            <xs:element minOccurs="0" name="EventSet" type="tns:QuickFeedbackEventSetType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetQuickFeedbackResultsRequest">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="Date" type="xs:date"/>
            <xs:element minOccurs="0" name="BID" type="xs:string"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetQuickFeedbackResultsResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="QuickFeedbackResultSet" type="tns:QuickFeedbackResultSetType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetRejectedAgreementCustomersCountRequest">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="RejectionDate" type="xs:date"/>
            <xs:element minOccurs="0" name="BID" type="xs:string"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetRejectedAgreementCustomersCountResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="ResulSet" type="tns:ResultSetType"/>
            <xs:element name="Count" type="xs:int"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetRejectedAgreementCustomersRequest">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="RejectionDate" type="xs:date"/>
            <xs:element minOccurs="0" name="BID" type="xs:string"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GetRejectedAgreementCustomersResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="ResulSet" type="tns:ResultSetType"/>
            <xs:element minOccurs="0" name="DataSet">
              <xs:complexType>
                <xs:sequence>
                  <xs:element maxOccurs="unbounded" minOccurs="0" name="Customer" type="tns:GetRejectedAgreementCustomerType"/>
                </xs:sequence>
                <xs:attribute name="Count" type="xs:int" use="required"/>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="InsertQuickFeedbackEventsRequest">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="EventSet" type="tns:QuickFeedbackEventSetType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="InsertQuickFeedbackEventsResponse">
        <xs:complexType>
          <xs:sequence>
            <xs:element minOccurs="0" name="ResultSet" type="tns:ResultSetType"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>


 <xs:element name="InsertQuickFeedbackResultsRequest">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="QuickFeedbackResultSet" type="tns:QuickFeedbackResultSetType"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="InsertQuickFeedbackResultsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="ResultSet" type="tns:ResultSetType"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:complexType name="GetRejectedAgreementCustomerType">
    <xs:sequence>
      <xs:element minOccurs="0" name="ID" type="xs:string"/>
      <xs:element minOccurs="0" name="Email" type="xs:string"/>
      <xs:element minOccurs="0" name="Phone" type="xs:string"/>
      <xs:element minOccurs="0" name="Details">
        <xs:complexType>
          <xs:sequence>
            <xs:element maxOccurs="unbounded" name="Detail">
              <xs:complexType>
                <xs:complexContent>
                  <xs:extension base="tns:QuickFeedbackCustomerType">
                    <xs:sequence>
                      <xs:element name="Date" type="xs:dateTime"/>
                    </xs:sequence>
                    <xs:attribute name="Number" type="xs:int"/>
                  </xs:extension>
                </xs:complexContent>
              </xs:complexType>
            </xs:element>
          </xs:sequence>
          <xs:attribute name="Count" type="xs:int"/>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" name="Cars">
        <xs:complexType>
          <xs:sequence>
            <xs:element maxOccurs="unbounded" name="Car" type="tns:CarType"/>
          </xs:sequence>
          <xs:attribute name="Count" type="xs:int"/>
        </xs:complexType>
      </xs:element>
      <xs:element minOccurs="0" name="StudyId" type="xs:integer"/>
      <xs:element minOccurs="0" name="Period" type="xs:integer"/>
      <xs:element minOccurs="0" name="SurveyNumber" type="xs:integer"/>
      <xs:element minOccurs="0" name="DeliveryDate" type="xs:date"/>
      <xs:element minOccurs="0" name="EventType" type="xs:integer"/>
      <xs:element minOccurs="0" name="ReturnReason" type="xs:integer"/>
      <xs:element minOccurs="0" name="QuestionnaireDate" type="xs:date"/>
    </xs:sequence>
    <xs:attribute name="Number" type="xs:int"/>
  </xs:complexType>
  <xs:complexType name="QuickFeedbackCustomerType">
    <xs:sequence>
      <xs:element minOccurs="0" name="Salutation" type="xs:string"/>
      <xs:element minOccurs="0" name="Firstname" type="xs:string"/>
      <xs:element minOccurs="0" name="Lastname" type="xs:string"/>
      <xs:element minOccurs="0" name="Email" type="xs:string"/>
      <xs:element minOccurs="0" name="Phone" type="xs:string"/>
      <xs:element minOccurs="0" name="Street" type="xs:string"/>
      <xs:element minOccurs="0" name="City" type="xs:string"/>
      <xs:element minOccurs="0" name="PostalCode" type="xs:string"/>
      <xs:element minOccurs="0" name="Country" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="CarType">
    <xs:sequence>
      <xs:element name="Brand" type="xs:string"/>
      <xs:element minOccurs="0" name="VIN" type="xs:string"/>
      <xs:element minOccurs="0" name="Model" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="QuickFeedbackEventType">
    <xs:sequence>
      <xs:element minOccurs="0" name="StudyId" type="xs:integer"/>
      <xs:element minOccurs="0" name="Period" type="xs:integer"/>
      <xs:element minOccurs="0" name="SurveyNumber" type="xs:integer"/>
      <xs:element name="Date" type="xs:dateTime"/>
      <xs:element name="Type" type="xs:integer"/>
      <xs:element name="Customer">
        <xs:complexType>
          <xs:complexContent>
            <xs:extension base="tns:QuickFeedbackCustomerType">
              <xs:sequence>
                <xs:element minOccurs="0" name="ID" type="xs:string"/>
              </xs:sequence>
            </xs:extension>
          </xs:complexContent>
        </xs:complexType>
      </xs:element>
      <xs:element name="Car" type="tns:CarType"/>
      <xs:element minOccurs="0" name="Organization" type="tns:OrganizationType"/>
      <xs:element name="Importer" type="tns:ImporterType"/>
      <xs:element name="ManualImport" type="xs:integer"/>
    </xs:sequence>
    <xs:attribute name="Number" type="xs:int" use="required"/>
  </xs:complexType>
  <xs:complexType name="OrganizationType">
    <xs:sequence>
      <xs:element minOccurs="0" name="Country" type="xs:string"/>
      <xs:element minOccurs="0" name="Code" type="xs:string"/>
      <xs:element minOccurs="0" name="EngineerCode" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ImporterType">
    <xs:sequence>
      <xs:element name="BID" type="xs:string"/>
      <xs:element minOccurs="0" name="Country" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="QuickFeedbackResultSetType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" name="QuickFeedbackResult" type="tns:QuickFeedbackResultType"/>
    </xs:sequence>
    <xs:attribute name="Count" type="xs:int" use="required"/>
  </xs:complexType>
  <xs:complexType name="QuickFeedbackResultType">
    <xs:sequence>
      <xs:element minOccurs="0" name="StudyId" type="xs:integer"/>
      <xs:element minOccurs="0" name="Period" type="xs:integer"/>
      <xs:element minOccurs="0" name="SurveyNumber" type="xs:integer"/>
      <xs:element minOccurs="0" name="DeliveryDate" type="xs:date"/>
      <xs:element minOccurs="0" name="EventType" type="xs:integer"/>
      <xs:element minOccurs="0" name="ReturnReason" type="xs:integer"/>
      <xs:element minOccurs="0" name="QuestionnaireDate" type="xs:date"/>
      <xs:element name="Customer" type="tns:CustomerIdType"/>
      <xs:element name="BID" type="xs:string"/>
    </xs:sequence>
    <xs:attribute name="Number" type="xs:int" use="required"/>
  </xs:complexType>
  <xs:complexType name="CustomerIdType">
    <xs:sequence>
      <xs:element minOccurs="0" name="ID" type="xs:string"/>
      <xs:element minOccurs="0" name="Email" type="xs:string"/>
      <xs:element minOccurs="0" name="Phone" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="QuickFeedbackEventSetType">
    <xs:sequence>
      <xs:element maxOccurs="unbounded" name="Event" type="tns:QuickFeedbackEventType"/>
    </xs:sequence>
    <xs:attribute name="Count" type="xs:int" use="required"/>
  </xs:complexType>
</xs:schema>

除非schema2.xsd导入第三个模式或者它有一些特殊的东西,我认为这应该有用。

如果你对schema2中复制的内容有任何问题,请注意现在在这个组合模式中你只有一个名称空间前缀,即xs,你已经没有{{1}也不是xsd

如果你把所有这些标题都正确,那么剩下的就应该没有问题,因为它只是ns1<xs:element>的复制粘贴列表。

希望它有所帮助。

顺便问一下,<xs;complexType>之前和之后你的wsdl中有哪两个星号是什么?