1<?xml version="1.0" encoding="UTF-8"?>
   2<schema xmlns="http://www.w3.org/2001/XMLSchema"
   3        xmlns:is-ext-domain="urn:is.isnic:xml:ns:is-ext-domain-1.0"
   4        xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
   5        targetNamespace="urn:is.isnic:xml:ns:is-ext-domain-1.0"
   6        elementFormDefault="qualified">
   7
   8    <annotation><documentation>.is domain extension</documentation></annotation>
   9
  10
  11    <import namespace="urn:ietf:params:xml:ns:eppcom-1.0" schemaLocation="eppcom-1.0.xsd"/>
  12
  13    <element name="infData" type="is-ext-domain:infDataType"/>
  14    <element name="create" type="is-ext-domain:createType"/>
  15    <element name="renew" type="is-ext-domain:renewType"/>
  16    <element name="update" type="is-ext-domain:updateType"/>
  17
  18    <complexType name="infDataType">
  19        <annotation><documentation>Extra info returned for domains</documentation></annotation>
  20        <sequence>
  21            <element name="contact" type="is-ext-domain:contactType"
  22                     minOccurs="0" maxOccurs="unbounded"/>
  23        </sequence>
  24    </complexType>
  25
  26    <complexType name="contactType">
  27        <annotation><documentation>Only the zone contact is returned here</documentation></annotation>
  28        <simpleContent>
  29            <extension base="eppcom:clIDType">
  30                <attribute name="type" type="is-ext-domain:contactAttrType"/>
  31            </extension>
  32        </simpleContent>
  33    </complexType>
  34
  35    <simpleType name="contactAttrType">
  36        <restriction base="token">
  37            <enumeration value="zone"><annotation><documentation>Zone contact is defined as the admin contact for the first host defined on a domain.</documentation></annotation></enumeration>
  38        </restriction>
  39    </simpleType>
  40
  41    <complexType name="createType">
  42        <sequence>
  43            <element name="cardID" type="int"><annotation><documentation>ID of the creditcard or prepaid account to be billed for the domain, use the web gui to manage your creditcards.</documentation></annotation></element>
  44            <element name="cardCVC" type="int"><annotation><documentation>the CVC number on the back of the card</documentation></annotation></element>
  45        </sequence>
  46    </complexType>
  47
  48    <complexType name="renewType">
  49        <sequence>
  50            <element name="cardID" type="int"><annotation><documentation>ID of the creditcard or prepaid account to be billed for the domain, use the web gui to manage your creditcards.</documentation></annotation></element>
  51            <element name="cardCVC" type="int"><annotation><documentation>the CVC number on the back of the card</documentation></annotation></element>
  52        </sequence>
  53    </complexType>
  54
  55    <complexType name="updateType">
  56        <sequence>
  57            <element name="rem" type="is-ext-domain:remType" minOccurs="0"><annotation><documentation>used to remove all</documentation></annotation></element>
  58            <element name="chg" type="is-ext-domain:chgType" minOccurs="0"><annotation><documentation>use to get better control over which ns becomes the primary nameserver, admin contact for host becomes zone contact for the domain.</documentation></annotation></element>
  59        </sequence>
  60    </complexType>
  61
  62    <complexType name="remType">
  63        <choice>
  64            <element name="ns_all" type="boolean"/>
  65       </choice>
  66    </complexType>
  67
  68    <complexType name="chgType">
  69        <sequence>
  70            <element name="master_ns" type="is-ext-domain:nsType"  minOccurs="0" maxOccurs="1"/>
  71        </sequence>
  72    </complexType>
  73
  74    <complexType name="nsType">
  75        <choice>
  76            <element name="hostObj" type="eppcom:labelType" maxOccurs="unbounded"/>
  77        </choice>
  78    </complexType>
  79
  80</schema>