Art Record Extension for the Extensible Provisioning Protocol (EPP)
Abstract
This document describes an Extensible Provisioning Protocol (EPP) extension mapping for Art Records.
Legal Disclaimer
Copyright Notification
Copyright 2018 – 2025 CentralNic Registry Ltd. All rights reserved. CentralNic logos and other trademarks, service marks and designs are registered or unregistered trademarks of CentralNic Registry Ltd. Copyright laws and international treaties protect this document, and any CentralNic product to which it relates.
CentralNic Registry Information
This document is the property of CentralNic Registry Ltd. It may be used by recipient only for the purpose for which it was transmitted and must be returned or deleted upon request or when no longer needed by recipient. It may not be copied or communicated to third parties without the prior written consent of CentralNic Registry Ltd.
Table of Contents
- Introduction
- Extension Elements
- EPP Command Mapping
- Security Considerations
- IANA Considerations
- Normative References
1. Introduction
This document describes an extension to the Domain Name Mapping [RFC5731] which allows information about works of art to be added to domain objects which uniquely identify those works in the DNS.
1.1. Conventions Used in This Document
The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119 [RFC2119].
XML is case sensitive. Unless stated otherwise, XML specifications and examples provided in this document MUST be interpreted in the character case presented in order to develop a conforming implementation.
“artRecord” is used as an abbreviation for “urn:ietf:params:xml:ns:artRecord-0.2”. The XML namespace prefix “artRecord” is used, but implementations MUST NOT depend on it and instead employ a proper namespace-aware XML parser and serializer to interpret and output the XML documents.
2. Extension Elements
This document defines several new elements, which describe the work of art to which the domain object relates.
The child elements are as follows:
<artRecord:objectType>
<artRecord:materialsAndTechniques>
<artRecord:dimensions>
<artRecord:title>
<artRecord:dateOrPeriod>
<artRecord:maker>
<artRecord:inscriptionsAndMarkings>
<artRecord:subject>
<artRecord:features>
<artRecord:maker>
<artRecord:reference>
[Author’s note: as of writing, the above elements have no formal semantics. These will be added in a future revision.]
3. EPP Command Mapping
A detailed description of the EPP syntax and semantics can be found in [RFC5730].
3.1. EPP Query Commands
This extension does not add any elements to the EPP <poll> or <check> commands or responses.
3.1.1. EPP <info> Command
This extension defines additional elements for the EPP <info> command.
When a server receives an <info> command for a domain for which art record information has been stored, it MAY (depending on server policy) include a <artRecord:infData> element in the <extension> element of the response. If present, this element MUST include the following child elements:
<artRecord:objectType>
<artRecord:dimensions>
<artRecord:title>
<artRecord:dateOrPeriod>
<artRecord:maker>
<artRecord:subject>
<artRecord:reference>
Example <info> response:
S: <?xml version="1.0" encoding="utf-8" standalone="no"?> S: <epp xmlns="urn:ietf:params:xml:ns:epp-1.0"> S: <response> S: <result code="1000"> S: <msg>Command completed successfully</msg> S: </result> S: <resData> S: <domain:infData S: xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"> S: <domain:name>example.art</domain:name> S: <domain:roid>EXAMPLE1-REP</domain:roid> S: <domain:status s="ok" /< S: <domain:registrant>jd1234</domain:registrant> S: <domain:contact type="admin">sh8013</domain:contact> S: <domain:contact type="tech">sh8013</domain:contact> S: <domain:ns> S: <domain:hostObj>ns1.example.art</domain:hostObj> S: <domain:hostObj>ns1.example.net</domain:hostObj> S: </domain:ns> S: <domain:clID>ClientX</domain:clID> S: <domain:crID>ClientY</domain:crID> S: <domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate> S: <domain:upID>ClientX</domain:upID> S: <domain:upDate>1999-12-03T09:00:00.0Z</domain:upDate> S: <domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate> S: <domain:trDate>2000-04-08T09:00:00.0Z</domain:trDate> S: <domain:authInfo> S: <domain:pw>2fooBAR</domain:pw> S: </domain:authInfo> S: </domain:infData> S: </resData> S: <extension> S: <artRecord:infData S: xmlns:artRecord="urn:ietf:params:xml:ns:artRecord-0.2"> S: <artRecord:objectType>[TBA]</artRecord:objectType> S: <artRecord:materialsAndTechniques> S: [TBA]</artRecord:materialsAndTechniques> S: <artRecord:dimensions>[TBA]</artRecord:dimensions> S: <artRecord:title>[TBA]</artRecord:title> S: <artRecord:dateOrPeriod>[TBA]</artRecord:dateOrPeriod> S: <artRecord:maker>[TBA]</artRecord:maker> S: <artRecord:subject>[TBA]</artRecord:subject> S: <artRecord:inscriptionsAndMarkings> S: [TBA]</artRecord:inscriptionsAndMarkings> S: <artRecord:features>[TBA]</artRecord:features> S: <artRecord:reference>[TBA]</artRecord:reference> S: </artRecord:infData> S: </extension> S: <trID> S: <clTRID>ABC-12345</clTRID> S: <svTRID>54322-XYZ</svTRID> S: </trID> S: </response> S: </epp>
3.2. EPP Transform Commands
This extension does not add elements to the EPP <delete>, <renew> or <transfer> commands and responses.
3.2.1. EPP <create> Command
This extension adds elements to the EPP <create> command. No additional elements are defined for the EPP <create> response.
When submitting a <create> command to the server, the client MAY include in the <extension> element a <artRecord:create> element.
This element MUST include the following child elements:
<artRecord:objectType>
<artRecord:materialsAndTechniques>
<artRecord:dimensions>
<artRecord:title>
<artRecord:dateOrPeriod>
<artRecord:maker>
<artRecord:features>
<artRecord:maker>
<artRecord:reference>
Example <create> command:
C: <?xml version="1.0" encoding="utf-8" standalone="no"?> C: <epp xmlns="urn:ietf:params:xml:ns:epp-1.0"> C: <command> C: <create> C: <domain:create C: xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"> C: <domain:name>example.art </domain:name> C: <domain:period unit="y">2 </domain:period> C: <domain:ns> C: <domain:hostObj>ns1.example.net </domain:hostObj> C: <domain:hostObj>ns2.example.net </domain:hostObj> C: </domain:ns> C: <domain:registrant>jd1234 </domain:registrant> C: <domain:contact type="admin">sh8013 </domain:contact> C: <domain:contact type="tech">sh8013 </domain:contact> C: <domain:authInfo> C: <domain:pw>2fooBAR </domain:pw> C: </domain:authInfo> C: </domain:create> C: </create> C: <extension> C: <artRecord:create C: xmlns:artRecord="urn:ietf:params:xml:ns:artRecord-0.2"> C: <artRecord:objectType>[TBA] </artRecord:objectType> C: <artRecord:materialsAndTechniques> C: [TBA] </artRecord:materialsAndTechniques> C: <artRecord:dimensions>[TBA] </artRecord:dimensions> C: <artRecord:title>[TBA] </artRecord:title> C: <artRecord:dateOrPeriod>[TBA] </artRecord:dateOrPeriod> C: <artRecord:maker>[TBA] </artRecord:maker> C: <artRecord:subject>[TBA] </artRecord:subject> C: <artRecord:inscriptionsAndMarkings> C: [TBA] </artRecord:inscriptionsAndMarkings> C: <artRecord:features>[TBA] </artRecord:features> C: <artRecord:reference>[TBA] </artRecord:reference> C: </artRecord:create> C: </extension> C: <clTRID>ABC-12345 </clTRID> C: </command> C: </epp>
3.2.2. EPP <update> Command
This extension adds elements to the EPP <update> command. No additional elements are defined for the EPP <update> response.
When submitting an <update> command to the server, the client MAY include in the <extension> element a <artRecord:update> element.
This element MUST include the following child elements:
<artRecord:objectType>
<artRecord:materialsAndTechniques>
<artRecord:dimensions>
<artRecord:title>
<artRecord:dateOrPeriod>
<artRecord:maker>
<artRecord:inscriptionsAndMarkings>
<artRecord:subject>
<artRecord:features>
<artRecord:maker>
<artRecord:reference>
Example <update> command:
C: <?xml version="1.0" encoding="utf-8" standalone="no"?> C: <epp xmlns="urn:ietf:params:xml:ns:epp-1.0"> C: <command> C: <update> C: <domain:update C: xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"> C: <domain:name>example.art </domain:name> C: </domain:update> C: </update> C: <extension> C: <artRecord:update C: xmlns:artRecord="urn:ietf:params:xml:ns:artRecord-0.2"> C: <artRecord:objectType>[TBA] </artRecord:objectType> C: <artRecord:materialsAndTechniques> C: [TBA] </artRecord:materialsAndTechniques> C: <artRecord:dimensions>[TBA] </artRecord:dimensions> C: <artRecord:title>[TBA] </artRecord:title> C: <artRecord:dateOrPeriod>[TBA] </artRecord:dateOrPeriod> C: <artRecord:maker>[TBA] </artRecord:maker> C: <artRecord:subject>[TBA] </artRecord:subject> C: <artRecord:inscriptionsAndMarkings> C: [TBA] </artRecord:inscriptionsAndMarkings> C: <artRecord:features>[TBA] </artRecord:features> C: <artRecord:reference>[TBA] </artRecord:reference> C: </artRecord:update> C: </extension> C: <clTRID>ABC-12345 </clTRID> C: </command> C: </epp>
3.3. Formal Syntax
An EPP object mapping is specified in XML Schema notation. The formal syntax presented here is a complete schema representation of the object mapping suitable for automated validation of EPP XML instances.
Copyright (c) 2015 IETF Trust and the persons identified as authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- Neither the name of Internet Society, IETF or IETF Trust, nor the names of specific contributors, may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
BEGIN
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright 2016 CentralNic Group plc. All rights reserved. -->
<schema
xmlns = "http://www.w3.org/2001/XMLSchema"
xmlns:artRecord = "urn:ietf:params:xml:ns:artRecord-0.2"
xmlns:eppcom = "urn:ietf:params:xml:ns:eppcom-1.0"
xmlns:domain = "urn:ietf:params:xml:ns:domain-1.0"
targetNamespace = "urn:ietf:params:xml:ns:artRecord-0.2"
elementFormDefault = "qualified"
>
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0" />
<annotation> <documentation>
Extensible Provisioning Protocol
v1.0 domain name extension schema for Art Records.
</documentation> </annotation>
<!--
Child elements found in EPP commands and responses
-->
<element name="infData" type="artRecord:artRecordType" />
<element name="create" type="artRecord:artRecordType" />
<element name="update" type="artRecord:artRecordType" />
<complexType name="artRecordType"> <sequence>
<element
type="artRecord:artRecordToken"
name="objectType" />
<element
type="artRecord:artRecordToken"
name="materialsAndTechniques" />
<element
type="artRecord:artRecordToken"
name="dimensions" />
<element
type="artRecord:artRecordToken"
name="title" />
<element
type="artRecord:artRecordToken"
name="dateOrPeriod" />
<element
type="artRecord:artRecordToken"
name="maker" />
<element
type="artRecord:artRecordToken"
name="subject" />
<element
type="artRecord:artRecordToken"
name="inscriptionsAndMarkings" />
<element
type="artRecord:artRecordToken"
name="features" />
<element
type="artRecord:artRecordToken"
name="reference" />
</sequence> </complexType>
<simpleType name="artRecordToken">
<restriction base="token">
<minLength value="0" />
<maxLength value="255" />
</restriction>
</simpleType>
</schema>
END
4. Security Considerations
The mapping extensions described in this document do not provide any security services beyond those described by EPP [RFC5730], the EPP domain name mapping [RFC5731], and protocol layers used by EPP. The security considerations described in these other specifications apply to this specification as well.
5. IANA Considerations
5.1. XML Namespace
This document uses URNs to describe XML namespaces and XML schemas conforming to a registry mechanism described in [RFC3688]. The folllowing URI assignment is requested of the IANA:
URI: urn:ietf:params:xml:ns:artRecord-0.2
Registrant Contact: See the “Author’s Address” section of this document.
XML: See the “Formal Syntax” section of this document.
6. Normative References
[RFC2119] Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels“, BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997.
[RFC3688] Mealling, M., “The IETF XML Registry“, BCP 81, RFC 3688, DOI 10.17487/RFC3688, January 2004.
[RFC5730] Hollenbeck, S., “Extensible Provisioning Protocol (EPP)”, STD 69, RFC 5730, DOI 10.17487/RFC5730, August 2009.
[RFC5731] Hollenbeck, S., “Extensible Provisioning Protocol (EPP) Domain Name Mapping“, STD 69, RFC 5731, DOI 10.17487/RFC5731, August 2009.
[RFC7451] Hollenbeck, S., “Extension Registry for the Extensible Provisioning Protocol“, RFC 7451, DOI 10.17487/RFC7451, February 2015 .
TOC
Author’s Address
Gavin Brown
4th Floor
Saddlers House
44 Gutter Lane
London
EC2V 6BR
GB
Email: support@centralnic.com
URI: https://www.centralnicregistry.com