从xsd创建具有c#的多个依赖项的类

时间:2018-03-10 08:02:42

标签: c# xml xsd

我有一个xsd,它有4个xsd依赖项。如何创建一个类,以便我可以在c#中使用它。 我试过xsd.exe /classes ef15.xsd types.xsd tms.xsd tcl.xsd doc.xsd 但它给了我模式验证警告。 我不知道我是否可以在xsd中更改内容以便它可以工作,因为我不熟悉xsd模式。 我在visual studio中使用了“生成代码到XSD”工具,但它没有给我正确的xml。

这是xsd文件

    <?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ie="http://www.icisnet.gr/emcs/v1.03/ef15/ie" xmlns:emcs="http://www.icisnet.gr/emcs/v1.03/types" xmlns:tms="http://www.icisnet.gr/emcs/v1.03/tms" xmlns:tcl="http://www.icisnet.gr/emcs/v1.03/tcl" xmlns:doc="http://www.icisnet.gr/emcs/v1.03/doc" targetNamespace="http://www.icisnet.gr/emcs/v1.03/ef15/ie" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.03">
  <!--=========================================-->
  <!--===== EF15:N_DFK_SUB -->
  <!--===== Υποβολή ΔΕΦΚ -->
  <!--=========================================-->
  <!--===== Imports =====-->
  <xs:import namespace="http://www.icisnet.gr/emcs/v1.03/types" schemaLocation="types.xsd" />
  <xs:import namespace="http://www.icisnet.gr/emcs/v1.03/tms" schemaLocation="tms.xsd" />
  <xs:import namespace="http://www.icisnet.gr/emcs/v1.03/tcl" schemaLocation="tcl.xsd" />
  <xs:import namespace="http://www.icisnet.gr/emcs/v1.03/doc" schemaLocation="doc.xsd" />
  <!--===== Root Element =====-->
  <xs:element name="EF15A" type="ie:EF15AType" />
  <!--===== EMCS Data Groups Declarations =====-->
  <xs:complexType name="EF15AType">
    <xs:sequence>
      <xs:element name="Header" type="tms:HeaderType" />
      <xs:element name="Body" type="ie:BodyType" />
    </xs:sequence>
  </xs:complexType>
  <!--===== IE Specific Data Groups Declarations =====-->
  <xs:complexType name="BodyType">
    <xs:sequence>
      <xs:element name="DeclarationOfExciseTaxesRegistration" type="ie:DeclarationOfExciseTaxesRegistrationType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DeclarationOfExciseTaxesRegistrationType">
    <xs:sequence>
      <xs:element name="SubmittingOperator" type="ie:SubmittingOperatorType" minOccurs="0" />
      <xs:element name="ExciseTaxesDeclaration" type="ie:ExciseTaxesDeclarationType" />
      <xs:element name="ExciseTaxesDeclarationConsignor" type="ie:ExciseTaxesDeclarationConsignorType" minOccurs="0" />
      <xs:element name="ExciseTaxesObligee" type="ie:ExciseTaxesObligeeType" />
      <xs:element name="ExciseTaxesDeclarationConsignee" type="ie:ExciseTaxesDeclarationConsigneeType" />
      <xs:element name="ExciseTaxesRow" type="ie:ExciseTaxesRowType" maxOccurs="unbounded" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SubmittingOperatorType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="SUBMITTING OPERATOR" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SubmittingOperatorIdentification" type="emcs:SubmittingOperatorIdentificationType" />
      <xs:element name="SubmittingTraderIdentification" type="emcs:SubmittingTraderIdentificationType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ExciseTaxesDeclarationType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="EXCISE TAXES DECLARATION" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LocalReferenceNumber" type="emcs:LocalReferenceNumberType" />
      <xs:element name="Fallbackflag" type="tcl:Flag" />
      <xs:element name="FallbackDocumentReference" type="emcs:FallbackDocumentReferenceType" minOccurs="0" />
      <xs:element name="FallbackOffice" type="emcs:ExciseOfficeCodeType" minOccurs="0" />
      <xs:element name="RegistrationDate" type="emcs:DateType" minOccurs="0" />
      <xs:element name="RegistrationOffice" type="emcs:ExciseOfficeCodeType" />
      <xs:element name="DocumentState" type="tcl:DocumentStateCodes" />
      <xs:element name="DocumentNumber" type="emcs:DocumentNumberType" />
      <xs:element name="TotalDocuments" type="emcs:TotalDocumentsType" />
      <xs:element name="NumberOfRows" type="emcs:NumberOfRowsType" />
      <xs:element name="TotalPackages" type="emcs:TotalPackagesType" minOccurs="0" />
      <xs:element name="FinancialResponsibleTaxId" type="emcs:FinancialResponsibleTaxIdType" minOccurs="0" />
      <xs:element name="DispatchCountry" type="emcs:CountryCodeType" />
      <xs:element name="DestinationCountry" type="emcs:CountryCodeType" minOccurs="0" />
      <xs:element name="ExistenceOfContainerFlag" type="tcl:Flag" minOccurs="0" />
      <xs:element name="DeliveryConditions" type="emcs:DeliveryConditionsType" minOccurs="0" />
      <xs:element name="Currency" type="emcs:CurrencyType" minOccurs="0" />
      <xs:element name="InvoiceAmount" type="emcs:InvoiceAmountType" minOccurs="0" />
      <xs:element name="ExchangeFactor" type="emcs:ExchangeFactorType" minOccurs="0" />
      <xs:element name="ChemicalAnalysisPerformedFlag" type="tcl:Flag" minOccurs="0" />
      <xs:element name="ThroughSimplifiedProcedureFlag" type="tcl:Flag" minOccurs="0" />
      <xs:element name="OfficeOfDispatch" type="emcs:ExciseOfficeCodeType" minOccurs="0" />
      <xs:element name="PaymentMethodCode" type="tcl:PaymentMethodCodes" />
      <xs:element name="CertificateIssuanceFlag" type="tcl:Flag" minOccurs="0" />
      <xs:element name="DeclarationTypeCode" type="tcl:DeclarationTypeCodes" />
      <xs:element name="CalculationOfTaxesDate" type="emcs:DateType" minOccurs="0" />
      <xs:element name="GeneralChemistryDetails" type="ie:GeneralChemistryDetailsType" minOccurs="0" />
      <xs:element name="DeliveryDetails" type="ie:DeliveryDetailsType" minOccurs="0" />
      <xs:element name="ClearingAgent" type="ie:ClearingAgentType" />
      <xs:element name="GuaranteeReference" type="ie:GuaranteeReferenceType" minOccurs="0" maxOccurs="2" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="GeneralChemistryDetailsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="GENERAL CHEMISTRY DETAILS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SampleReference" type="emcs:SampleReferenceType" />
      <xs:element name="AnalysisReference" type="emcs:AnalysisReferenceType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="DeliveryDetailsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="DELIVERY DETAILS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="TransportVehicleIdentificationNumber" type="emcs:TransportVehicleIdentificationNumberType" />
      <xs:element name="TransportVehicleCountry" type="emcs:CountryCodeType" />
      <xs:element name="NationalTransportMode" type="emcs:NationalTransportModeType" />
      <xs:element name="DipennakNumber" type="emcs:DipennakNumberType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ClearingAgentType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="CLEARING AGENT" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ClearingAgentType" type="tcl:ClearingAgentTypeCodes" />
      <xs:element name="ClearingAgentEORI" type="emcs:ClearingAgentEORIType" minOccurs="0" />
      <xs:element name="ClearingAgentAfm" type="emcs:ClearingAgentAfmType" minOccurs="0" />
      <xs:element name="SpecialReferenceCode" type="emcs:SpecialReferenceCodeType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="GuaranteeReferenceType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="GUARANTEE REFERENCE" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="GuaranteeReferenceNumber" type="emcs:GuaranteeReferenceNumberType" />
      <xs:element name="GuaranteeAmount" type="emcs:GuaranteeAmountType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ExciseTaxesDeclarationConsignorType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="EXCISE TAXES DECLARATION CONSIGNOR" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ExciseTaxesDeclarationConsignorType" type="tcl:ExciseTaxesDeclarationConsignorTypeCodes" />
      <xs:element name="TaxOrVehicleWarehouseReference" type="emcs:TaxOrVehicleWarehouseReferenceType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ExciseTaxesObligeeType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="EXCISE TAXES OBLIGEE" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ObligeeType" type="tcl:ExciseTaxesObligeeTypeCodes" />
      <xs:element name="ObligeeIdentificationType" type="tcl:PersonIdentificationTypeCodes" minOccurs="0" />
      <xs:element name="ObligeeIdentification" type="emcs:ObligeeIdentificationType" />
      <xs:element name="ContactDetails" type="ie:ContactDetailsType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ContactDetailsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="CONTACT DETAILS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="LastNames" type="emcs:LastNamesType" />
      <xs:element name="Forenames" type="emcs:ForenamesType" />
      <xs:element name="NameOfFather" type="emcs:NameOfFatherType" />
      <xs:element name="Address" type="emcs:AddressType" />
      <xs:element name="Country" type="emcs:CountryCodeType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ExciseTaxesDeclarationConsigneeType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="EXCISE TAXES DECLARATION CONSIGNEE" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ConsigneeType" type="tcl:ExciseTaxesConsignee" />
      <xs:element name="ConsigneeIdentificationType" type="tcl:PersonIdentificationTypeCodes" />
      <xs:element name="ConsigneeIdentification" type="emcs:ConsigneeIdentificationType" />
      <xs:element name="ContactDetails" type="ie:ContactDetailsType" minOccurs="0" />
      <xs:element name="SpecialConsignee" type="ie:SpecialConsigneeType" minOccurs="0" />
      <xs:element name="VesselRegistrationDetails" type="ie:VesselRegistrationDetailsType" minOccurs="0" />
      <xs:element name="ComplementaryConsignees" type="ie:ComplementaryConsigneesType" minOccurs="0" maxOccurs="99" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SpecialConsigneeType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="SPECIAL CONSIGNEE" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SpecialConsigneeLicenseType" type="tcl:SpecialConsigneeLicenseTypeCodes" />
      <xs:element name="SpecialConsigneeLicenseNumber" type="emcs:DeclarationReferenceNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="VesselRegistrationDetailsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="VESSEL REGISTRATION DETAILS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="VesselRegistrationType" type="tcl:VesselRegistrationTypeCodes" />
      <xs:element name="VesselRegistrationNumber" type="emcs:VesselRegistrationNumberType" />
      <xs:element name="VesselName" type="emcs:VesselNameType" />
      <xs:element name="VesselPortOfRegistration" type="emcs:VesselPortOfRegistrationType" />
      <xs:element name="VesselIMO" type="emcs:VesselIMOType" minOccurs="0" />
      <xs:element name="VesselCountryOfOrigin" type="emcs:CountryCodeType" minOccurs="0" />
      <xs:element name="VesselCategory" type="emcs:VesselCategoryType" minOccurs="0" />
      <xs:element name="VesselCapacity" type="emcs:VesselCapacityType" minOccurs="0" />
      <xs:element name="VesselHorsePower" type="emcs:VesselHorsePowerType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ComplementaryConsigneesType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="COMPLEMENTARY CONSIGNEES" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ComplementaryConsigneeIdentificationType" type="tcl:PersonIdentificationTypeCodes" />
      <xs:element name="ComplementaryConsigneeIdentification" type="emcs:ComplementaryConsigneeIdentificationType" />
      <xs:element name="ExemptionBeneficiaryFlag" type="tcl:Flag" minOccurs="0" />
      <xs:element name="OwnershipPercentage" type="emcs:OwnershipPercentageType" minOccurs="0" />
      <xs:element name="ContactDetails" type="ie:ContactDetailsType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ExciseTaxesRowType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="EXCISE TAXES ROW" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ExciseTaxesDeclarationRowNumber" type="emcs:ExciseTaxesDeclarationRowNumberType" />
      <xs:element name="SymbolNumbers" type="emcs:SymbolNumbersType" minOccurs="0" />
      <xs:element name="ProductDescription" type="emcs:ProductDescriptionType" minOccurs="0" />
      <xs:element name="TaricCode" type="emcs:TaricCodeType" />
      <xs:element name="TaricAdditionCode" type="emcs:TaricAdditionCodeType" minOccurs="0" />
      <xs:element name="TaxQuantity" type="emcs:TaxQuantityType" minOccurs="0" />
      <xs:element name="MeasuringUnitsType" type="emcs:MeasuringUnitsTypeType" minOccurs="0" />
      <xs:element name="AdditionalTaxQuantity" type="emcs:AdditionalTaxQuantityType" minOccurs="0" />
      <xs:element name="AdditionalMeasuringUnits" type="emcs:AdditionalMeasuringUnitsType" minOccurs="0" />
      <xs:element name="Plato" type="emcs:PlatoType" minOccurs="0" />
      <xs:element name="EtepaaAmountPaid" type="emcs:EtepaaAmountPaidType" minOccurs="0" />
      <xs:element name="ExciseTaxCompensation" type="emcs:ExciseTaxCompensationType" minOccurs="0" />
      <xs:element name="VatAmountCompensation" type="emcs:VatAmountCompensationType" minOccurs="0" />
      <xs:element name="VatInflowAmountCompensation" type="emcs:VatInflowAmountCompensationType" minOccurs="0" />
      <xs:element name="OgaAmountCompensation" type="emcs:OgaAmountCompensationType" minOccurs="0" />
      <xs:element name="TaxValue" type="emcs:TaxValueType" minOccurs="0" />
      <xs:element name="CountryOfOrigin" type="emcs:CountryCodeType" minOccurs="0" />
      <xs:element name="GrossWeight" type="emcs:GrossWeightType" minOccurs="0" />
      <xs:element name="NetWeight" type="emcs:NetWeightType" minOccurs="0" />
      <xs:element name="ConditionIdentification" type="tcl:ConditionIdentificationCodes" />
      <xs:element name="PreviousConditionIdentification" type="tcl:PreviousConditionIdentificationCodes" />
      <xs:element name="ExemptionCode" type="emcs:ExemptionCodeType" minOccurs="0" />
      <xs:element name="NetValue" type="emcs:NetValueType" minOccurs="0" />
      <xs:element name="StatisticalValue" type="emcs:StatisticalValueType" minOccurs="0" />
      <xs:element name="SuspensionTypeCode" type="emcs:SuspensionTypeCodeType" minOccurs="0" />
      <xs:element name="CarCertificate" type="emcs:CarCertificateType" minOccurs="0" />
      <xs:element name="SupplementaryComputationInformation" type="ie:SupplementaryComputationInformationType" minOccurs="0" maxOccurs="99" />
      <xs:element name="PreviousDocuments" type="ie:PreviousDocumentsType" minOccurs="0" />
      <xs:element name="ReferenceDocuments" type="ie:ReferenceDocumentsType" minOccurs="0" maxOccurs="3" />
      <xs:element name="NationalProducts" type="ie:NationalProductsType" minOccurs="0" maxOccurs="unbounded" />
      <xs:element name="VehicleDetails" type="ie:VehicleDetailsType" minOccurs="0" maxOccurs="unbounded" />
      <xs:element name="TaxComputation" type="ie:TaxComputationType" maxOccurs="unbounded" />
      <xs:element name="SpecialMentions" type="ie:SpecialMentionsType" minOccurs="0" maxOccurs="99" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SupplementaryComputationInformationType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="SUPPLEMENTARY COMPUTATION INFORMATION" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="SupplementaryComputationInfo" type="emcs:SupplementaryComputationInfoType" />
      <xs:element name="SupplementaryComputationValue" type="emcs:SupplementaryComputationValueType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PreviousDocumentsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="PREVIOUS DOCUMENTS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="PreviousDocumentType" type="tcl:PreviousDocumentTypeCodes" />
      <xs:element name="PreviousAsdeDocument" type="ie:PreviousAsdeDocumentType" minOccurs="0" />
      <xs:element name="PreviousEaadDocument" type="ie:PreviousEaadDocumentType" minOccurs="0" />
      <xs:element name="PreviousStampRequestDocument" type="ie:PreviousStampRequestDocumentType" minOccurs="0" />
      <xs:element name="PreviousVehicleArrivalDocument" type="ie:PreviousVehicleArrivalDocumentType" minOccurs="0" />
      <xs:element name="PreviousVehicleMovementDocument" type="ie:PreviousVehicleMovementDocumentType" minOccurs="0" />
      <xs:element name="PreviousExciseTaxesDeclarationDocument" type="ie:PreviousExciseTaxesDeclarationDocumentType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PreviousAsdeDocumentType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="PREVIOUS ASDE DOCUMENT" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="AsdeReferenceNumber" type="emcs:AsdeReferenceNumberType" />
      <xs:element name="AsdeRowNumber" type="emcs:AsdeRowNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PreviousEaadDocumentType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="PREVIOUS E-AAD DOCUMENT" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="AadReferenceCode" type="emcs:AadReferenceCodeType" />
      <xs:element name="SequenceNumber" type="emcs:SequenceNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PreviousStampRequestDocumentType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="PREVIOUS STAMP REQUEST DOCUMENT" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="DeclarationReferenceNumber" type="emcs:DeclarationReferenceNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PreviousVehicleArrivalDocumentType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="PREVIOUS VEHICLE ARRIVAL DOCUMENT" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="DeclarationReferenceNumber" type="emcs:DeclarationReferenceNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PreviousVehicleMovementDocumentType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="PREVIOUS VEHICLE MOVEMENT DOCUMENT" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="DeclarationReferenceNumber" type="emcs:DeclarationReferenceNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PreviousExciseTaxesDeclarationDocumentType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="PREVIOUS EXCISE TAXES DECLARATION DOCUMENT" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="DeclarationReferenceNumber" type="emcs:DeclarationReferenceNumberType" />
      <xs:element name="ExciseTaxesDeclarationRowNumber" type="emcs:ExciseTaxesDeclarationRowNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ReferenceDocumentsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="REFERENCE DOCUMENTS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="ReferenceDocumentId" type="emcs:ReferenceDocumentIdType" />
      <xs:element name="ReferenceDocumentNumber" type="emcs:ReferenceDocumentNumberType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="NationalProductsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="NATIONAL PRODUCTS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="NationalProductId" type="emcs:NationalProductIdType" />
      <xs:element name="Quantity" type="emcs:QuantityType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="VehicleDetailsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="VEHICLE DETAILS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="FrameNumber" type="emcs:FrameNumberType" />
      <xs:element name="CarKind" type="emcs:CarKindType" />
      <xs:element name="ImporterCodeOrBrandName" type="emcs:ImporterCodeOrBrandNameType" />
      <xs:element name="FirstAllowanceDate" type="emcs:DateType" minOccurs="0" />
      <xs:element name="VehicleFactoryType" type="emcs:VehicleFactoryTypeType" />
      <xs:element name="VehicleUsedFlag" type="tcl:Flag" />
      <xs:element name="EngineCapacity" type="emcs:EngineCapacityType" />
      <xs:element name="EngineType" type="emcs:EngineTypeType" />
      <xs:element name="FuelType" type="emcs:FuelTypeType" />
      <xs:element name="MakeYear" type="emcs:MakeYearType" />
      <xs:element name="VehicleModelName" type="emcs:VehicleModelNameType" />
      <xs:element name="ImportedDate" type="emcs:DateType" />
      <xs:element name="CountryLast" type="emcs:CountryCodeType" minOccurs="0" />
      <xs:element name="ApprovalCodeVehicle" type="emcs:ApprovalCodeVehicleType" minOccurs="0" />
      <xs:element name="ApprovalCodeFactory" type="emcs:ApprovalCodeFactoryType" minOccurs="0" />
      <xs:element name="ApprovalCodeType" type="emcs:ApprovalCodeTypeType" minOccurs="0" />
      <xs:element name="VehicleRebateFlag" type="tcl:Flag" minOccurs="0" />
      <xs:element name="RebatedVehicleRegistrationPlate" type="emcs:RebatedVehicleRegistrationPlateType" minOccurs="0" />
      <xs:element name="VehicleInventory" type="ie:VehicleInventoryType" minOccurs="0" maxOccurs="99" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="VehicleInventoryType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="VEHICLE INVENTORY" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="VehicleInventoryType" type="emcs:VehicleInventoryTypeType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="TaxComputationType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="TAX COMPUTATION" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="NationalAccountingCode" type="emcs:NationalAccountingCodeType" />
      <xs:element name="SuspensionFlag" type="emcs:SuspensionFlagType" />
      <xs:element name="AmountOfTaxes" type="emcs:AmountOfTaxesType" />
      <xs:element name="PaymentMethodCode" type="emcs:PaymentMethodCodeType" />
      <xs:element name="TaxBase" type="emcs:TaxBaseType" />
      <xs:element name="TaxRate" type="emcs:TaxRateType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SpecialMentionsType">
    <xs:annotation>
      <xs:documentation>
        <doc:description value="SPECIAL MENTIONS" />
      </xs:documentation>
    </xs:annotation>
    <xs:sequence>
      <xs:element name="AdditionalInformationCoded" type="emcs:AdditionalInformationCodedType" />
      <xs:element name="Text" type="emcs:TextType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
</xs:schema>

编辑:我对XSD的主要问题是它获得了一些晦涩的价值,在某些情况下我需要它们,但通常我不想得到任何值。 例如,即使我没有调用它,ExciseTaxesDeclarationConsignorType总是得到值“0”。 它从tcl.XSD获得它的类型

<xs:simpleType name="ExciseTaxesDeclarationConsignorTypeCodes">
    <xs:annotation>
      <xs:documentation>Excise Taxes Declaration Consignor Type Codes</xs:documentation>
    </xs:annotation>
    <xs:restriction base="xs:nonNegativeInteger">
      <xs:enumeration value="0">
        <xs:annotation>
          <xs:documentation>Tax Warehouse</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
      <xs:enumeration value="1">
        <xs:annotation>
          <xs:documentation>Car Warehouse</xs:documentation>
        </xs:annotation>
      </xs:enumeration>
    </xs:restriction>
  </xs:simpleType>

我可以改变这种行为吗?

0 个答案:

没有答案