Message

Copy
<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:domain="http://registry.denic.de/domain/5.0"
    xmlns:contact="http://registry.denic.de/contact/5.0"
    xmlns:dnsentry="http://registry.denic.de/dnsentry/5.0"
    xmlns:tr="http://registry.denic.de/transaction/5.0" 
    xmlns:msg="http://registry.denic.de/msg/5.0"
    xmlns:verification="http://registry.denic.de/verification/5.0"
    targetNamespace="http://registry.denic.de/msg/5.0" elementFormDefault="qualified">
    <import namespace="http://registry.denic.de/domain/5.0" schemaLocation="domain-5.0.xsd" />
    <import namespace="http://registry.denic.de/contact/5.0" schemaLocation="contact-5.0.xsd" />
    <import namespace="http://registry.denic.de/dnsentry/5.0" schemaLocation="dnsentry-5.0.xsd" />
    <import namespace="http://registry.denic.de/verification/5.0" schemaLocation="verification-5.0.xsd" />
    <import namespace="http://registry.denic.de/transaction/5.0"
        schemaLocation="transaction-5.0.xsd" />
    <simpleType name="emptyType">
        <restriction base="string">
            <enumeration value="" />
        </restriction>
    </simpleType>
    <simpleType name="idType">
        <restriction base="token">
            <minLength value="3" />
            <maxLength value="64" />
        </restriction>
    </simpleType>
    <simpleType name="msgTypeType">
        <restriction base="token">
            <enumeration value="expireWarning" />
            <enumeration value="expire" />
            <enumeration value="authInfoExpire" />
            <enumeration value="authInfo2Notify" />
            <enumeration value="chprovAuthInfo" />
            <enumeration value="domainDelete" />
            <enumeration value="authInfo2Delete" />
            <enumeration value="lockCreate" />
            <enumeration value="lockDelete" />
            <enumeration value="domainUpdate" />
            <enumeration value="domainTransit" />
            <enumeration value="contactUpdate" />
            <enumeration value="contactDelete" />
            <enumeration value="domainStatusUpdate" />
            <enumeration value="contactVerificationRequired" />
        </restriction>
    </simpleType>
    <complexType name="domainType">
        <sequence>
            <element name="handle" type="domain:handleType" />
            <element name="ace" type="domain:aceType" />
        </sequence>
    </complexType>
    <complexType name="contactType">
        <sequence>
            <element name="handle" type="contact:handleType" />
        </sequence>
    </complexType>
    <complexType name="domainWithExpireType">
        <sequence>
            <element name="handle" type="domain:handleType" />
            <element name="ace" type="domain:aceType" />
            <element name="expire" type="dateTime" />
        </sequence>
    </complexType>
    <complexType name="domainWithExpireListType">
        <sequence>
            <element name="domain" type="msg:domainWithExpireType" minOccurs="1"
                maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="chprovAuthInfoType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="new" type="NMTOKEN" />
            <element name="old" type="NMTOKEN" />
        </sequence>
    </complexType>
    <complexType name="domainDeleteType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="contactsDeleteType">
        <sequence>
            <element name="handles" type="msg:contactsType" />
        </sequence>
    </complexType>
    <complexType name="contactsType">
        <sequence>
            <element name="handle" type="contact:handleType" maxOccurs="100" />
        </sequence>
    </complexType>
    <simpleType name="reasonType">
        <restriction base="normalizedString">
            <enumeration value="UNUSED_CONTACT"></enumeration>
        </restriction>
    </simpleType>
    <complexType name="authInfo2DeleteType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="lockCreateType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="lockDeleteType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="domainUpdateType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="domainTransitType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="contactUpdateType">
        <sequence>
            <element name="contact" type="msg:contactType" />
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="authInfo2NotifyType">
        <sequence>
            <element name="domain" type="msg:domainType" />
        </sequence>
    </complexType>
    <complexType name="authInfoExpireType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="authinfoexpire" type="dateTime" />
        </sequence>
    </complexType>
    <complexType name="domainStatusUpdateType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="holders" type="msg:contactsType" />            
            <element name="status" type="domain:statusType" />
            <element name="verificationDeadlineBeforeDedelegation" type="dateTime" minOccurs="0" />
            <element name="verificationDeadlineBeforeDeletion" type="dateTime" minOccurs="0" />
            <element name="message" type="tr:messageType" minOccurs="0" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="earliestDomainBeforeDedelegationType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="verificationDeadline" type="dateTime" />
        </sequence>
    </complexType>
    <complexType name="earliestDomainBeforeDeletionType">
        <sequence>
            <element name="domain" type="msg:domainType" />
            <element name="verificationDeadline" type="dateTime" />
        </sequence>
    </complexType>
    <complexType name="contactVerificationRequiredType">
        <sequence>
            <element name="handle" type="contact:handleType" />    
            <element name="verificationClaims" type="msg:verifiedClaimsType" minOccurs="1" maxOccurs="1"/>
            <element name="numberOfReferencedDomainsTotal" type="unsignedLong" />    
            <element name="earliestDomainForDedelegation" type="msg:earliestDomainBeforeDedelegationType" minOccurs="0" maxOccurs="1" />    
            <element name="earliestDomainForDeletion" type="msg:earliestDomainBeforeDeletionType" minOccurs="1" maxOccurs="1" />    
            <element name="message" type="tr:messageType" minOccurs="1" maxOccurs="unbounded" />
        </sequence>
    </complexType>
    <complexType name="messageType">
        <choice>
            <element name="expireWarning" type="msg:domainWithExpireListType" />
            <element name="expire" type="msg:domainWithExpireListType" />
            <element name="authInfoExpire" type="msg:authInfoExpireType" />
            <element name="authInfo2Notify" type="msg:authInfo2NotifyType" />
            <element name="chprovAuthInfo" type="msg:chprovAuthInfoType" />
            <element name="domainDelete" type="msg:domainDeleteType" />
            <element name="authInfo2Delete" type="msg:authInfo2DeleteType" />
            <element name="lockCreate" type="msg:lockCreateType" />
            <element name="lockDelete" type="msg:lockDeleteType" />
            <element name="domainUpdate" type="msg:domainUpdateType" />
            <element name="domainTransit" type="msg:domainTransitType" />
            <element name="contactUpdate" type="msg:contactUpdateType" />
            <element name="contactDelete" type="msg:contactsDeleteType" />
            <element name="domainStatusUpdate" type="msg:domainStatusUpdateType" />
            <element name="contactVerificationRequired" type="msg:contactVerificationRequiredType" />
        </choice>
        <attribute name="msgid" type="msg:idType" use="required" />
        <attribute name="msgcnt" type="unsignedLong" use="optional" />
        <attribute name="msgtime" type="dateTime" use="required" />
    </complexType>
    <complexType name="readType">
        <simpleContent>
            <extension base="msg:emptyType">
                <attribute name="msgType" type="msg:msgTypeType" use="optional" />
            </extension>
        </simpleContent>
    </complexType>
    <complexType name="deleteType">
        <simpleContent>
            <extension base="msg:emptyType">
                <attribute name="msgid" type="msg:idType" use="required" />
                <attribute name="msgType" type="msg:msgTypeType" use="optional" />
            </extension>
        </simpleContent>
    </complexType>
    <complexType name="verifiedClaimsType">
        <sequence>
            <element name="claim" type="verification:contactClaimsType" minOccurs="1"
                maxOccurs="unbounded"></element>
        </sequence>
    </complexType>
    <element name="message" type="msg:messageType" />
    <element name="queue-read" type="msg:readType" />
    <element name="delete" type="msg:deleteType" />
    <element name="contactDelete" type="msg:contactsDeleteType" />
</schema>