This commit is contained in:
2020-11-27 22:58:30 +01:00
parent 3b532b0a10
commit 0be9927381
62 changed files with 6974 additions and 349 deletions

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<DiscoveryClientResultsFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Results>
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl" filename="checkVatService.wsdl" />
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="https://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl" filename="checkVatService.wsdl" />
</Results>
</DiscoveryClientResultsFile>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<DiscoveryClientResultsFile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Results>
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.ContractReference" url="https://ec.europa.eu/taxation_customs/dds2/eos/validation/services/validation?wsdl" filename="validation.wsdl" />
<DiscoveryClientResult referenceType="System.Web.Services.Discovery.SchemaReference" url="https://ec.europa.eu/taxation_customs/dds2/eos/validation/services/validation?xsd=1" filename="validation.xsd" />
</Results>
</DiscoveryClientResultsFile>

View File

@@ -0,0 +1,336 @@
'------------------------------------------------------------------------------
' <auto-generated>
' Dieser Code wurde von einem Tool generiert.
' Laufzeitversion:4.0.30319.42000
'
' Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
' der Code erneut generiert wird.
' </auto-generated>
'------------------------------------------------------------------------------
Option Strict Off
Option Explicit On
Imports System
Imports System.ComponentModel
Imports System.Diagnostics
Imports System.Web.Services
Imports System.Web.Services.Protocols
Imports System.Xml.Serialization
'
'Der Quellcode wurde automatisch mit Microsoft.VSDesigner generiert. Version 4.0.30319.42000.
'
Namespace eu.europa.ec1
'''<remarks/>
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.7.3056.0"), _
System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Web.Services.WebServiceBindingAttribute(Name:="validationSoapBinding", [Namespace]:="http://eori.ws.eos.dds.s/")> _
Partial Public Class validation
Inherits System.Web.Services.Protocols.SoapHttpClientProtocol
Private validateEORIOperationCompleted As System.Threading.SendOrPostCallback
Private useDefaultCredentialsSetExplicitly As Boolean
'''<remarks/>
Public Sub New()
MyBase.New
Me.Url = Global.SDL.My.MySettings.Default.SDL_eu_europa_ec1_validation
If (Me.IsLocalFileSystemWebService(Me.Url) = true) Then
Me.UseDefaultCredentials = true
Me.useDefaultCredentialsSetExplicitly = false
Else
Me.useDefaultCredentialsSetExplicitly = true
End If
End Sub
Public Shadows Property Url() As String
Get
Return MyBase.Url
End Get
Set
If (((Me.IsLocalFileSystemWebService(MyBase.Url) = true) _
AndAlso (Me.useDefaultCredentialsSetExplicitly = false)) _
AndAlso (Me.IsLocalFileSystemWebService(value) = false)) Then
MyBase.UseDefaultCredentials = false
End If
MyBase.Url = value
End Set
End Property
Public Shadows Property UseDefaultCredentials() As Boolean
Get
Return MyBase.UseDefaultCredentials
End Get
Set
MyBase.UseDefaultCredentials = value
Me.useDefaultCredentialsSetExplicitly = true
End Set
End Property
'''<remarks/>
Public Event validateEORICompleted As validateEORICompletedEventHandler
'''<remarks/>
<System.Web.Services.Protocols.SoapDocumentMethodAttribute("", RequestNamespace:="http://eori.ws.eos.dds.s/", ResponseNamespace:="http://eori.ws.eos.dds.s/", Use:=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle:=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)>
Public Function validateEORI(ByVal eori() As String) As eoriValidationResult
Dim results() As Object = Me.Invoke("validateEORI", New Object() {eori})
Return CType(results(0), eoriValidationResult)
End Function
'''<remarks/>
Public Overloads Sub validateEORIAsync(ByVal eori() As String)
Me.validateEORIAsync(eori, Nothing)
End Sub
'''<remarks/>
Public Overloads Sub validateEORIAsync(ByVal eori() As String, ByVal userState As Object)
If (Me.validateEORIOperationCompleted Is Nothing) Then
Me.validateEORIOperationCompleted = AddressOf Me.OnvalidateEORIOperationCompleted
End If
Me.InvokeAsync("validateEORI", New Object() {eori}, Me.validateEORIOperationCompleted, userState)
End Sub
Private Sub OnvalidateEORIOperationCompleted(ByVal arg As Object)
If (Not (Me.validateEORICompletedEvent) Is Nothing) Then
Dim invokeArgs As System.Web.Services.Protocols.InvokeCompletedEventArgs = CType(arg,System.Web.Services.Protocols.InvokeCompletedEventArgs)
RaiseEvent validateEORICompleted(Me, New validateEORICompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState))
End If
End Sub
'''<remarks/>
Public Shadows Sub CancelAsync(ByVal userState As Object)
MyBase.CancelAsync(userState)
End Sub
Private Function IsLocalFileSystemWebService(ByVal url As String) As Boolean
If ((url Is Nothing) _
OrElse (url Is String.Empty)) Then
Return false
End If
Dim wsUri As System.Uri = New System.Uri(url)
If ((wsUri.Port >= 1024) _
AndAlso (String.Compare(wsUri.Host, "localHost", System.StringComparison.OrdinalIgnoreCase) = 0)) Then
Return true
End If
Return false
End Function
End Class
'''<remarks/>
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.7.3056.0"), _
System.SerializableAttribute(), _
System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://eori.ws.eos.dds.s/")> _
Partial Public Class eoriValidationResult
Private requestDateField As String
Private errorDescriptionField As String
Private resultField() As eoriResponse
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property requestDate() As String
Get
Return Me.requestDateField
End Get
Set
Me.requestDateField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property errorDescription() As String
Get
Return Me.errorDescriptionField
End Get
Set
Me.errorDescriptionField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute("result", Form:=System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable:=true)> _
Public Property result() As eoriResponse()
Get
Return Me.resultField
End Get
Set
Me.resultField = value
End Set
End Property
End Class
'''<remarks/>
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Xml", "4.7.3056.0"), _
System.SerializableAttribute(), _
System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code"), _
System.Xml.Serialization.XmlTypeAttribute([Namespace]:="http://eori.ws.eos.dds.s/")> _
Partial Public Class eoriResponse
Private eoriField As String
Private statusField As Integer
Private statusDescrField As String
Private errorReasonField As String
Private nameField As String
Private addressField As String
Private streetField As String
Private postalCodeField As String
Private cityField As String
Private countryField As String
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property eori() As String
Get
Return Me.eoriField
End Get
Set
Me.eoriField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property status() As Integer
Get
Return Me.statusField
End Get
Set
Me.statusField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property statusDescr() As String
Get
Return Me.statusDescrField
End Get
Set
Me.statusDescrField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property errorReason() As String
Get
Return Me.errorReasonField
End Get
Set
Me.errorReasonField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property name() As String
Get
Return Me.nameField
End Get
Set
Me.nameField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property address() As String
Get
Return Me.addressField
End Get
Set
Me.addressField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property street() As String
Get
Return Me.streetField
End Get
Set
Me.streetField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property postalCode() As String
Get
Return Me.postalCodeField
End Get
Set
Me.postalCodeField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property city() As String
Get
Return Me.cityField
End Get
Set
Me.cityField = value
End Set
End Property
'''<remarks/>
<System.Xml.Serialization.XmlElementAttribute(Form:=System.Xml.Schema.XmlSchemaForm.Unqualified)> _
Public Property country() As String
Get
Return Me.countryField
End Get
Set
Me.countryField = value
End Set
End Property
End Class
'''<remarks/>
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.7.3056.0")> _
Public Delegate Sub validateEORICompletedEventHandler(ByVal sender As Object, ByVal e As validateEORICompletedEventArgs)
'''<remarks/>
<System.CodeDom.Compiler.GeneratedCodeAttribute("System.Web.Services", "4.7.3056.0"), _
System.Diagnostics.DebuggerStepThroughAttribute(), _
System.ComponentModel.DesignerCategoryAttribute("code")> _
Partial Public Class validateEORICompletedEventArgs
Inherits System.ComponentModel.AsyncCompletedEventArgs
Private results() As Object
Friend Sub New(ByVal results() As Object, ByVal exception As System.Exception, ByVal cancelled As Boolean, ByVal userState As Object)
MyBase.New(exception, cancelled, userState)
Me.results = results
End Sub
'''<remarks/>
Public ReadOnly Property Result() As eoriValidationResult
Get
Me.RaiseExceptionIfNecessary()
Return CType(Me.results(0), eoriValidationResult)
End Get
End Property
End Class
End Namespace

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
This file is automatically generated by Visual Studio .Net. It is
used to store generic object data source configuration information.
Renaming the file extension or editing the content of this file may
cause the file to be unrecognizable by the program.
-->
<GenericObjectDataSource DisplayName="eoriValidationResult" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource">
<TypeInfo>SDL.eu.europa.ec1.eoriValidationResult, Web References.eu.europa.ec1.Reference.vb.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo>
</GenericObjectDataSource>

View File

@@ -0,0 +1,71 @@
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://eori.ws.eos.dds.s/" name="validation" targetNamespace="http://eori.ws.eos.dds.s/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<xsd:schema xmlns:ns0="http://eori.ws.eos.dds.s/" targetNamespace="http://eori.ws.eos.dds.s/">
<xsd:include schemaLocation="https://ec.europa.eu/taxation_customs/dds2/eos/validation/services/validation?xsd=1" />
<xsd:complexType name="validateEORI">
<xsd:sequence>
<xsd:element minOccurs="0" maxOccurs="unbounded" form="qualified" name="eori" type="ns0:EORINumber" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="eoriResponse">
<xsd:sequence>
<xsd:element name="eori" type="xsd:string" />
<xsd:element name="status" type="xsd:int" />
<xsd:element name="statusDescr" type="xsd:string" />
<xsd:element minOccurs="0" name="errorReason" type="xsd:string" />
<xsd:element minOccurs="0" name="name" type="xsd:string" />
<xsd:element minOccurs="0" name="address" type="xsd:string" />
<xsd:element minOccurs="0" name="street" type="xsd:string" />
<xsd:element minOccurs="0" name="postalCode" type="xsd:string" />
<xsd:element minOccurs="0" name="city" type="xsd:string" />
<xsd:element minOccurs="0" name="country" type="xsd:string" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="validateEORIResponse">
<xsd:sequence>
<xsd:element minOccurs="0" name="return" type="ns0:eoriValidationResult" />
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="eoriValidationResult">
<xsd:sequence>
<xsd:element name="requestDate" type="xsd:string" />
<xsd:element minOccurs="0" name="errorDescription" type="xsd:string" />
<xsd:element minOccurs="0" maxOccurs="unbounded" name="result" nillable="true" type="ns0:eoriResponse" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="validateEORI" type="ns0:validateEORI" />
<xsd:element name="validateEORIResponse" type="ns0:validateEORIResponse" />
</xsd:schema>
</wsdl:types>
<wsdl:message name="validateEORI">
<wsdl:part name="parameters" element="tns:validateEORI" />
</wsdl:message>
<wsdl:message name="validateEORIResponse">
<wsdl:part name="parameters" element="tns:validateEORIResponse" />
</wsdl:message>
<wsdl:portType name="EORIValidation">
<wsdl:documentation>Validates the EORI numbers provided. Validation is performed following those principles: The number of EORI numbers to validate at once is limited, maximal size of a message is limited, number of requests in a timeframe is limited, content of the message has to be validated against several threats.</wsdl:documentation>
<wsdl:operation name="validateEORI">
<wsdl:input name="validateEORI" message="tns:validateEORI" />
<wsdl:output name="validateEORIResponse" message="tns:validateEORIResponse" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="validationSoapBinding" type="tns:EORIValidation">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="validateEORI">
<soap:operation soapAction="" style="document" />
<wsdl:input name="validateEORI">
<soap:body use="literal" />
</wsdl:input>
<wsdl:output name="validateEORIResponse">
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="validation">
<wsdl:port name="EORIValidationImplPort" binding="tns:validationSoapBinding">
<soap:address location="https://ec.europa.eu/taxation_customs/dds2/eos/validation/services/validation" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

View File

@@ -0,0 +1,336 @@
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" version="2.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:simpleType name="SingleLineString">
<xs:annotation>
<xs:documentation>Single line string: Avoid presence of \n (new line) and \r (return) characters in thestring. Note that pattern ".*" is equivalent.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[^\n\r]*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="MonthDay">
<xs:annotation>
<xs:documentation>MM-DD format (MM=01-12 and DD=01-31)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="\d{2}-\d{2}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SimpleDate">
<xs:annotation>
<xs:documentation>Date format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="(\d{2}-\d{2}-\d{4})*" />
<xs:pattern value="(\d{2}\/\d{2}\/\d{4})*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Date">
<xs:annotation>
<xs:documentation>Date format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:date">
<xs:pattern value="\d{4}-\d{2}-\d{2}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Time">
<xs:annotation>
<xs:documentation>Time format (hh:mm)</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="\d{2}:\d{2}" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="Timestamp">
<xs:annotation>
<xs:documentation>Timestamp format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:dateTime">
<xs:pattern value="\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Period">
<xs:sequence>
<xs:element name="start.date" type="SimpleDate" />
<xs:element minOccurs="0" name="end.date" type="SimpleDate" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="DecimalNumber">
<xs:annotation>
<xs:documentation>Decimal number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]+,[0-9]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LongNumber">
<xs:annotation>
<xs:documentation>Long number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="[0-9]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LongNumber10">
<xs:annotation>
<xs:documentation>Long number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="10" />
<xs:pattern value="[0-9]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LongNumber5">
<xs:annotation>
<xs:documentation>Long number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="5" />
<xs:pattern value="[0-9]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LongNumber3">
<xs:annotation>
<xs:documentation>Long number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="3" />
<xs:pattern value="[0-9]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CountryCode">
<xs:annotation>
<xs:documentation>Country code format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="([A-Z][A-Z])*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EORINumber">
<xs:annotation>
<xs:documentation>EORI Number format</xs:documentation>
</xs:annotation>
<xs:restriction base="SingleLineString">
<xs:minLength value="3" />
<xs:maxLength value="17" />
<xs:pattern value="[A-Z]{2}\p{IsBasicLatin}+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="EoriNumberType">
<xs:annotation>
<xs:documentation>EORI Number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="17" />
<xs:pattern value="([A-Z][A-Z])*[^\n\r]*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="M_SingleLineString300">
<xs:restriction base="SingleLineString">
<xs:minLength value="0" />
<xs:maxLength value="300" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString300">
<xs:restriction base="SingleLineString">
<xs:maxLength value="300" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="M_SingleLineString150">
<xs:restriction base="SingleLineString">
<xs:minLength value="1" />
<xs:maxLength value="150" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString150">
<xs:restriction base="SingleLineString">
<xs:maxLength value="150" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString70">
<xs:restriction base="SingleLineString">
<xs:maxLength value="70" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="M_SingleLineString70">
<xs:restriction base="SingleLineString">
<xs:minLength value="0" />
<xs:maxLength value="70" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="M_SingleLineString35">
<xs:restriction base="SingleLineString">
<xs:minLength value="0" />
<xs:maxLength value="35" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString35">
<xs:restriction base="SingleLineString">
<xs:maxLength value="35" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString30">
<xs:restriction base="SingleLineString">
<xs:maxLength value="45" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString9">
<xs:restriction base="SingleLineString">
<xs:maxLength value="9" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString8">
<xs:restriction base="SingleLineString">
<xs:minLength value="1" />
<xs:maxLength value="8" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CertificateTypeCode">
<xs:restriction base="SingleLineString">
<xs:minLength value="4" />
<xs:maxLength value="4" />
<xs:pattern value="\p{IsBasicLatin}+" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="Country">
<xs:sequence>
<xs:element name="country.code" type="CountryCode" />
<xs:element name="country.name" type="SingleLineString30" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="CertificateType">
<xs:sequence>
<xs:element name="certificate.type.code" type="CertificateTypeCode" />
<xs:element name="certificate.type.name" type="M_SingleLineString150" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="SingleLineString87">
<xs:restriction base="SingleLineString">
<xs:minLength value="1" />
<xs:maxLength value="87" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CertificateRef">
<xs:sequence>
<xs:element name="country" type="Country" />
<xs:element name="aeo.certificate.type" type="CertificateType" />
<xs:element name="national.number" type="SingleLineString87" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="AuthorityRef">
<xs:sequence>
<xs:element name="country.code" type="CountryCode" />
<xs:element name="identifier" type="M_SingleLineString35" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="LanguageCode">
<xs:annotation>
<xs:documentation>Language code format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="2" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString512">
<xs:restriction base="SingleLineString">
<xs:maxLength value="512" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="CdValidityType">
<xs:sequence>
<xs:element name="status" type="SingleLineString3" />
<xs:element name="start.date" type="Date" />
<xs:element minOccurs="0" name="end.date" type="Date" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="SingleLineString3">
<xs:restriction base="SingleLineString">
<xs:maxLength value="3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="SingleLineString10">
<xs:restriction base="SingleLineString">
<xs:maxLength value="10" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CdNumberType">
<xs:annotation>
<xs:documentation>CD Number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="35" />
<xs:pattern value="[\P{C}]*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="TinNumberType">
<xs:annotation>
<xs:documentation>Tin Number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="17" />
<xs:pattern value="([A-Z][A-Z])*[^\n\r]*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="RexNumberType">
<xs:annotation>
<xs:documentation>Rex Number format</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:maxLength value="35" />
<xs:pattern value="[A-Z][A-Z]REX[0-9A-Z]+" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="AddressType">
<xs:sequence>
<xs:element name="street.number" type="M_SingleLineString70" />
<xs:element name="city" type="M_SingleLineString35" />
<xs:element minOccurs="0" name="country.code" type="CountryCode" />
<xs:element minOccurs="0" name="country.name" type="SingleLineString30" />
<xs:element minOccurs="0" name="postal.code" type="SingleLineString9" />
<xs:element minOccurs="0" name="name" type="SingleLineString300" />
<xs:element minOccurs="0" name="email" type="CommunicationValueContentType" />
<xs:element minOccurs="0" name="fax" type="CommunicationValueContentType" />
<xs:element minOccurs="0" name="phone" type="CommunicationValueContentType" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="CommunicationValueContentType">
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="50" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ExporterActivity">
<xs:sequence>
<xs:element name="activity.name" type="MainActivityContentType" />
<xs:element name="activity.flag" type="xs:boolean" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="MainActivityContentType">
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="10" />
<xs:pattern value="[\p{IsBasicLatin}]*" />
</xs:restriction>
</xs:simpleType>
<xs:complexType name="GoodsData">
<xs:sequence>
<xs:element name="taric.code" type="NotificationTARICCodeContentType" />
<xs:element name="description" type="LongTextContentType" />
</xs:sequence>
</xs:complexType>
<xs:simpleType name="NotificationTARICCodeContentType">
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="10" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="LongTextContentType">
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="512" />
<xs:pattern value="[\P{C}]*" />
</xs:restriction>
</xs:simpleType>
</xs:schema>