LvDomain extension

Currently, domain names service is extended only by a single additional status value, clientAutoRenewProhibited to record the registrar’s refusal of the next automatic renewal. (see renewal process of domain names).

The extension is identified by following namespace URI: http://www.nic.lv/epp/schema/lvdomain-ext-1.0

Domain <update> command

It cannot be added for a newly registered domain that has not yet been renewed, a domain currently in its hold period, or a domain for which clientAutoRenewProhibited has already been removed during its hold period (the registrar has chosen to renew the domain). serverUpdateProhibited prevents both adding and removing it.

Removing the status clears the renewal refusal. If a hold period has already been assigned, removal during that period cancels the hold period, cancels scheduled commenting/deletion, and restores DNS records deactivated by the automatic hold process. If the status is removed during the hold period, it cannot be added again to place the domain back on hold.

If a request attempts to remove clientAutoRenewProhibited from a domain that does not currently have this status, the server rejects the request with result code 2304 (“Object status prohibits operation”). See the renewal process for more information.

Request for SETTING a clientAutoRenewProhibited status on a domain name:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">

 <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
                     xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
        <domain:name>example-lvnic.lv</domain:name>
      </domain:update>
    </update>
    <extension>
      <lvdomain:update xmlns:lvdomain='http://www.nic.lv/epp/schema/lvdomain-ext-1.0'>
        <lvdomain:add>
          <lvdomain:status s='clientAutoRenewProhibited' lang='en'>Client didn't pay for domain name: discard it</lvdomain:status>
        </lvdomain:add>
      </lvdomain:update>
    </extension>
    <clTRID>g8JaG4SaDYHo9w0KOP1m</clTRID>
  </command>
</epp>

Note

In order to remove a clientAutoRenewProhibited state, use <lvdomain:rem> instead of <lvdomain:add>

Request for REMOVING a clientAutoRenewProhibited status on a domain name:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">

 <command>
    <update>
      <domain:update xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
                     xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
        <domain:name>example-lvnic.lv</domain:name>
      </domain:update>
    </update>
    <extension>
      <lvdomain:update xmlns:lvdomain='http://www.nic.lv/epp/schema/lvdomain-ext-1.0'>
        <lvdomain:rem>
          <lvdomain:status s='clientAutoRenewProhibited' lang='en'>Client wants to keep the domain</lvdomain:status>
        </lvdomain:rem>
      </lvdomain:update>
    </extension>
    <clTRID>g8JaG4SaDYHo9w0KOP1m</clTRID>
  </command>
</epp>

Domain <info> command

Server response MAY have an additional <lvdomain:infData> element inside an <extension> element if LvDomain was chosen at the login time and queried domain name has the clientAutoRenewProhibited status set.

Example response:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd">

  <response>
    <resData>
      <domain:infData xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd">
        <domain:name>example-lvnic.lv</domain:name>
        <!-- STANDARD DOMAIN DETAILS OMITTED... -->
      </domain:infData>
    </resData>
    <extension>
      <lvdomain:infData xmlns:lvdomain="http://www.nic.lv/epp/schema/lvdomain-ext-1.0"
                        xsi:schemaLocation="http://www.nic.lv/epp/schema/lvdomain-ext-1.0 lvdomain-ext-1.0.xsd">
        <lvdomain:status s="clientAutoRenewProhibited" lang="en">Sick and tired of that domain name..</lvdomain:status>
      </lvdomain:infData>
    </extension>
    <result code="1000">
      <msg>Command completed successfully</msg>
    </result>
  </response>
</epp>

Formal specification (XML schema)

The newest version of the schema is available at https://www.nic.lv/epp/schemas/lvdomain-ext-1.0.xsd

<?xml version="1.0" encoding="UTF-8"?>
<!--
lvdomain-ext-1.0.xsd - XML schema for .LV EPP extensions for domain names mapping

$Id: lvdomain-ext-1.0.xsd $
$Date: 2011-01-31 $
$LastChangedBy: Artūrs Gailītis $
-->
<schema targetNamespace="http://www.nic.lv/epp/schema/lvdomain-ext-1.0"
          xmlns:lvdomain="http://www.nic.lv/epp/schema/lvdomain-ext-1.0"
          xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
          xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
          xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
          xmlns="http://www.w3.org/2001/XMLSchema"
          elementFormDefault="qualified">

    <!-- Import IETF schemas. -->
    <import namespace="urn:ietf:params:xml:ns:eppcom-1.0"  schemaLocation="eppcom-1.0.xsd" />
    <import namespace="urn:ietf:params:xml:ns:epp-1.0"     schemaLocation="epp-1.0.xsd" />
    <import namespace="urn:ietf:params:xml:ns:domain-1.0"  schemaLocation="domain-1.0.xsd" />

    <annotation>
      <documentation>
        Extensible Provisioning Protocol v1.0
        Extensions for .LV
      </documentation>
    </annotation>

    <!-- **************************************************************** -->
    <!-- Currently, only clientAutoRenewProhibited state for
         <info> and <update>
    -->
    <!-- **************************************************************** -->

    <!-- **************************************************************** -->
    <!--                 extension to domain:update                       -->
    <!-- Uses add/rem/chg elements                                        -->
    <!--                                                                  -->
    <element name="update" type="lvdomain:updateType" />

    <complexType name="updateType">
      <sequence>
        <element name="add" type="lvdomain:addRemType" minOccurs="0" maxOccurs="1" />
        <element name="rem" type="lvdomain:addRemType" minOccurs="0" maxOccurs="1" />
      </sequence>
    </complexType>

    <complexType name="addRemType">
      <sequence>
        <element name="status" type="lvdomain:statusType" minOccurs="0" maxOccurs="1" />
      </sequence>
    </complexType>

    <!-- **************************************************************** -->
    <!--                 extension to domain:info                         -->
    <!--                                                                  -->
    <element name="infData" type="lvdomain:infDataType"/>

    <complexType name="infDataType">
      <all>
        <element name="status" type="lvdomain:statusType" minOccurs="0" maxOccurs="1" />
      </all>
    </complexType>

    <!-- **************************************************************** -->
    <!--               Define the extension element types                 -->
    <!--                                                                  -->

    <!--
     Status is a combination of attributes and an optional
     human-readable message that may be expressed in languages other
     than English.
    -->
    <complexType name="statusType">
      <simpleContent>
        <extension base="normalizedString">
          <attribute name="s"
                        type="lvdomain:statusValueType"
                        use="required"/>
          <attribute name="lang" type="language" default="en"/>
        </extension>
      </simpleContent>
   </complexType>

   <simpleType name="statusValueType">
     <restriction base="token">
       <enumeration value="clientAutoRenewProhibited"/>
     </restriction>
   </simpleType>
</schema>