Internet DRAFT - draft-xie-epp-trademark-mapping
draft-xie-epp-trademark-mapping
Internet Engineering Task Force J. XIE
Internet-Draft CONAC
Intended status: Informational June 16, 2013
Expires: December 18, 2013
Extensible Provisioning Protocol (EPP) Trademark Mapping
draft-xie-epp-trademark-mapping-00
Abstract
This document describes an Extensible Provisioning Protocol (EPP)
mapping for the provisioning and management of trademark stored in a
trademark clearinghouse. Specified in XML, the mapping defines EPP
command syntax and semantics as applied to trademark.
Status of This Memo
This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
This Internet-Draft will expire on December 18, 2013.
Copyright Notice
Copyright (c) 2013 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
XIE Expires December 18, 2013 [Page 1]
Internet-Draft EPP Trademark Mapping June 2013
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Object Attributes . . . . . . . . . . . . . . . . . . . . . . 3
3.1. Trademark . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2. Domain Label . . . . . . . . . . . . . . . . . . . . . . 4
3.3. Contact and Client Identifiers . . . . . . . . . . . . . 4
3.4. Status Values . . . . . . . . . . . . . . . . . . . . . . 4
3.5. Dates and Times . . . . . . . . . . . . . . . . . . . . . 6
3.6. Validity Periods . . . . . . . . . . . . . . . . . . . . 6
3.7. Authorization Information . . . . . . . . . . . . . . . . 6
3.8. Poll Messaging . . . . . . . . . . . . . . . . . . . . . 6
4. EPP Command Mapping . . . . . . . . . . . . . . . . . . . . . 7
4.1. EPP Query Commands . . . . . . . . . . . . . . . . . . . 7
4.1.1. EPP <check> Command . . . . . . . . . . . . . . . . . 7
4.1.2. EPP <info> Command . . . . . . . . . . . . . . . . . 10
4.1.3. EPP <transfer> Query Command . . . . . . . . . . . . 14
4.2. EPP Transform Commands . . . . . . . . . . . . . . . . . 16
4.2.1. EPP <create> Command . . . . . . . . . . . . . . . . 17
4.2.2. EPP <delete> Command . . . . . . . . . . . . . . . . 20
4.2.3. EPP <renew> Command . . . . . . . . . . . . . . . . . 21
4.2.4. EPP <transfer> Command . . . . . . . . . . . . . . . 23
4.2.5. EPP <update> Command . . . . . . . . . . . . . . . . 25
5. Formal Syntax . . . . . . . . . . . . . . . . . . . . . . . . 29
6. Internationalization Considerations . . . . . . . . . . . . . 39
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 39
8. Security considerations . . . . . . . . . . . . . . . . . . . 40
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 40
10. Change History . . . . . . . . . . . . . . . . . . . . . . . 40
10.1. draft-xie-epp-trademark-mapping: Version 00 . . . . . . 40
11. Normative References . . . . . . . . . . . . . . . . . . . . 40
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 41
1. Introduction
XIE Expires December 18, 2013 [Page 2]
Internet-Draft EPP Trademark Mapping June 2013
This document describes a trademark mapping for version 1.0 of the
Extensible Provisioning Protocol (EPP). This document is specified
using the Extensible Markup Language (XML) 1.0 as described in
[W3C.REC-xml-20040204] and XML Schema notation as described in
[W3C.REC-xmlschema-1-20041028] and [W3C.REC-xmlschema-2-20041028].
The EPP core protocol specification [RFC5730] provides a complete
description of EPP command and response structures. A thorough
understanding of the base protocol specification is necessary to
understand the trademark mapping described in this document.
It is typical for the trademark clearinghouse providers to deal
business with the trademark owner, agent or thirdparty.
XML is case sensitive. Unless stated otherwise, XML specifications
and examples provided in this document MUST be interpreted in the
character case presented to develop a conforming implementation.
2. Terminology
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 [RFC2119].
"trademark-1.0" in this document is used as an abbreviation for
urn:ietf:params:xml:ns:trademark-1.0.
In examples, "C:" represents lines sent by a protocol client and "S:"
represents lines returned by a protocol server. Indentation and
white space in examples are provided only to illustrate element
relationships and are not a REQUIRED feature of this specification.
"signedMark-1.0" is used as an abbreviation for
"urn:ietf:params:xml:ns:signedMark-1.0" that is defined in [draft-
lozano-smd]. The XML namespace prefix "smd" 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.
"mark-1.0" is used as an abbreviation for
"urn:ietf:params:xml:ns:mark-1.0" that is defined in [draft-lozano-
smd]. The XML namespace prefix "mark" 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.
3. Object Attributes
XIE Expires December 18, 2013 [Page 3]
Internet-Draft EPP Trademark Mapping June 2013
An EPP trademark object has attributes and associated values that can
be viewed and modified by the sponsoring client or the server. This
section describes each attribute type in detail. The formal syntax
for the attribute values described here can be found in the "Formal
Syntax" section of this document and in the appropriate normative
references.
3.1. Trademark
Trademark which is a complex object can take 3 forms: Registered
Trademark,Court Validated Marks,Marks protected by statute or treaty.
3.2. Domain Label
The domain name without its TLD extension.In this text,the domain
label means that the label matches a name of a trademark.The
identical matching algorithm is beyond the scope of this document.
3.3. Contact and Client Identifiers
All EPP contacts are identified by a server-unique identifier.
Contact identifiers are character strings with a specified minimum
length, a specified maximum length, and a specified format. Contact
identifiers use the "clIDType" client identifier syntax described in
[RFC5730].
3.4. Status Values
A Trademark object MUST always have at least one associated status
value. Status values can be set only by the client that sponsors a
trademark object and by the server on which the object resides. A
client can change the status of a trademark object using the EPP
<update> command. Each status value MAY be accompanied by a string
of human-readable text that describes the rationale for the status
applied to the object.
A client MUST NOT alter status values set by the server. A server
MAY alter or override status values set by a client, subject to local
server policies. The status of an object MAY change as a result of
either a client-initiated transform command or an action performed by
a server operator.
Status values that can be added or removed by a client are prefixed
with "client". Corresponding status values that can be added or
removed by a server are prefixed with "server". Status values that
do not begin with either "client" or "server" are server-managed.
Status Value Descriptions:
XIE Expires December 18, 2013 [Page 4]
Internet-Draft EPP Trademark Mapping June 2013
o clientDeleteProhibited, serverDeleteProhibited. Requests to
delete the object MUST be rejected.
o clientRenewProhibited, serverRenewProhibited. Requests to renew
the object MUST be rejected.
o clientTransferProhibited, serverTransferProhibited. Requests to
transfer the object MUST be rejected.
o clientUpdateProhibited, serverUpdateProhibited. Requests to
update the object (other than to remove this status) MUST be
rejected.
o ok. This is the normal status value for an object that has no
pending operations or prohibitions. This value is set and removed
by the server as other status values are added or removed.
o pendingCreate, pendingDelete, pendingRenew, pendingTransfer,
pendingUpdate. A transform command has been processed for the
object, but the action has not been completed by the server.
Server operators can delay action completion for a variety of
reasons, such as to allow for human review or third-party action.
A transform command that is processed, but whose requested action
is pending, is noted with response code 1001.
When the requested action has been completed, the pendingCreate,
pendingDelete, pendingRenew, pendingTransfer, or pendingUpdate status
value MUST be removed. All clients involved in the transaction MUST
be notified using a service message that the action has been
completed and that the status of the object has changed.
"ok" status MUST NOT be combined with any other status.
"pendingDelete" status MUST NOT be combined with either
"clientDeleteProhibited" or "serverDeleteProhibited" status.
"pendingRenew" status MUST NOT be combined with either
"clientRenewProhibited" or "serverRenewProhibited" status.
"pendingTransfer" status MUST NOT be combined with either
"clientTransferProhibited" or "serverTransferProhibited" status.
"pendingUpdate" status MUST NOT be combined with either
"clientUpdateProhibited" or "serverUpdateProhibited" status.
The pendingCreate, pendingDelete, pendingRenew, pendingTransfer, and
pendingUpdate status values MUST NOT be combined with each other.
XIE Expires December 18, 2013 [Page 5]
Internet-Draft EPP Trademark Mapping June 2013
Other status combinations not expressly prohibited MAY be used.
3.5. Dates and Times
Date and time attribute values MUST be represented in Universal
Coordinated Time (UTC) using the Gregorian calendar. The extended
date-time form using upper case "T" and "Z" characters defined in
[W3C.REC-xmlschema-2-20041028] MUST be used to represent date-time
values, as XML Schema does not support truncated date-time forms or
lower case "T" and "Z" characters.
3.6. Validity Periods
A trademark object MAY have a specified validity period. If server
policy supports trademark-object validity periods, the validity
period is defined when a trademark object is created, and it MAY be
extended by the EPP <renew> or <transfer> commands. As a matter of
server policy, this specification does not define actions to be taken
upon expiration of a trademark object's validity period.
Validity periods are measured in years or months with the appropriate
units specified using the "unit" attribute. Valid values for the
"unit" attribute are "y" for years and "m" for months. The minimum
allowable period value is one (1). The maximum allowable value is
ninety-nine decimal (99). A server MAY support a lower maximum
value.
3.7. Authorization Information
Authorization information is associated with trademark objects to
facilitate transfer operations. Authorization information is
assigned when a trademark object is created, and it might be updated
in the future. This specification describes password-based
authorization information, though other mechanisms are possible.
3.8. Poll Messaging
A trademark Registration MAY be in "pendingCreate" status, the server
SHOULD insert poll messages, per [RFC5730]. For the applicable
intermediate statuses, the server MUST insert a <trademark:panData>
poll message.
The following is an example poll message for a trademark Application
that has transitioned to the "pendingCreate" state.
S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
XIE Expires December 18, 2013 [Page 6]
Internet-Draft EPP Trademark Mapping June 2013
S: <response>
S: <result code="1301">
S: <msg>Command completed successfully; ack to dequeue</msg>
S: </result>
S: <msgQ count="5" id="12345">
S: <qDate>2013-04-04T22:01:00.0Z</qDate>
S: <msg>Trademark created approved.</msg>
S: </msgQ>
S: <resData>
S: <trademark:panData
S: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
S: <trademark:id>123456-001</trademark:id>
S: <trademark:markName>example</trademark:markName>
S: <trademark:exDate>2016-01-21T12:00:00.000Z
S: </trademark:exDate>
S: </trademark:panData>
S: </resData>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54322-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
4. EPP Command Mapping
A detailed description of the EPP syntax and semantics can be found
in the EPP core protocol specification [RFC5730]. The command
mappings described here are specifically for use in provisioning and
managing trademark via EPP.
4.1. EPP Query Commands
EPP provides three commands to retrieve trademark information:
<check> to determine if a trademark object can be provisioned within
a repository, <info> to retrieve detailed information associated with
a trademark object, and <transfer> to retrieve trademark object
transfer status information.
4.1.1. EPP <check> Command
The EPP <check> command is used to determine if an object can be
provisioned within a repository. It provides a hint that allows a
client to anticipate the success or failure of provisioning an object
using the <create> command, as object-provisioning requirements are
ultimately a matter of server policy.
XIE Expires December 18, 2013 [Page 7]
Internet-Draft EPP Trademark Mapping June 2013
In addition to the standard EPP command elements, the <check>command
MUST contain a <trademark:check> element that identifies the
trademark namespace. The <trademark:check> element contains the
following child elements:
o One or more <trademark:id> element that contains an identifier of
the trademark. It usually is the application ID registered in the
trademark office.
Example <check> 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: <check>
C: <trademark:check
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-001</trademark:id>
C: <trademark:id>123456-002</trademark:id>
C: <trademark:id>123456-003</trademark:id>
C: </trademark:check>
C: </check>
C: <clTRID>ABC-12345</clTRID>
C: </command>
C:</epp>
When a <check> command has been processed successfully, the EPP
<resData> element MUST contain a child <trademark:chkData> element
that identifies the trademark namespace. The <trademark:chkData>
element contains one or more <trademark:cd> elements that contain the
following child elements:
o A <trademark:id> element that contains an identifier of the
queried trademark object. This element MUST contain an "avail"
attribute whose value indicates object availability (can it be
provisioned or not) at the moment the <check> command was
completed. A value of "1" or "true" means that the object can be
provisioned. A value of "0" or "false" means that the object can
not be provisioned.
XIE Expires December 18, 2013 [Page 8]
Internet-Draft EPP Trademark Mapping June 2013
o An OPTIONAL <trademark:reason> element that MAY be provided when
an object cannot be provisioned. If present, this element
contains server-specific text to help explain why the object
cannot be provisioned. This text MUST be represented in the
response language previously negotiated with the client; an
OPTIONAL "lang" attribute MAY be present to identify the language
if the negotiated value is something other than the default value
of "en" (English).
Example <check> 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: <trademark:chkData
S: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
S: <trademark:cd>
S: <trademark:id avail="1">123456-001</trademark:id>
S: </trademark:cd>
S: <trademark:cd>
S: <trademark:id avail="0">123456-002</trademark:id>
S: <trademark:reason>In use</trademark:reason>
S: </trademark:cd>
S: <trademark:cd>
S: <trademark:id avail="1">123456-003</trademark:id>
S: </trademark:cd>
S: </trademark:chkData>
S: </resData>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54322-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
An EPP error response MUST be returned if a <check> command cannot be
processed for any reason.
XIE Expires December 18, 2013 [Page 9]
Internet-Draft EPP Trademark Mapping June 2013
4.1.2. EPP <info> Command
The EPP <info> command is used to retrieve information associated
with a trademark object. The response to this command MAY vary
depending on the identity of the querying client, use of
authorization information, and server policy towards unauthorized
clients. If the querying client is the sponsoring client, all
available information MUST be returned. If the querying client is
not the sponsoring client but the client provides valid authorization
information, all available information MUST be returned. If the
querying client is not the sponsoring client and the client does not
provide valid authorization information, server policy determines
which OPTIONAL elements are returned.
In addition to the standard EPP command elements, the <info> command
MUST contain a <trademark:info> element that identifies the trademark
namespace. The <trademark:info> element contains the following child
elements:
o A <trademark:id> element that contains an identifier of the
trademark object.
o An OPTIONAL <trademark:authInfo> element that contains
authorization information associated with the trademark object or
authorization information associated with the trademark object's
holder or associated contacts. An OPTIONAL "roid" attribute MUST
be used to identify the holder or contact object if and only if
the given authInfo is associated with a holder or contact object,
and not the trademark object itself. If this element is not
provided or if the authorization information is invalid, server
policy determines if the command is rejected or if response
information will be returned to the client.
Example <info> Response:
C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
C: <command>
C: <info>
C: <trademark:info
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-01</trademark:name>
C: </trademark:info>
C: </info>
C: <clTRID>ABC-12345</clTRID>
C: </command>
C:</epp>
XIE Expires December 18, 2013 [Page 10]
Internet-Draft EPP Trademark Mapping June 2013
When an <info> command has been processed successfully, the EPP
<resData> element MUST contain a child <trademark:infData> element
that identifies the trademark namespace. Elements that are not
OPTIONAL MUST be returned; OPTIONAL elements are returned based on
client authorization and server policy. The <trademark:infData>
element contains the following child elements:
o A <trademark:id> element that contains the trademark application
ID registered in the trademark office.
o A <trademark:roid> element that contains the Repository Object
IDentifier assigned to the trademark object when the object was
created.
o A <trademark:markName> element that contains the trademark text
string.
o Zero or more OPTIONAL <trademark:status> elements that contain the
current status descriptors associated with the trademark.
o One or more OPTIONAL <trademark:holder> elements that contains the
information of the holder of the trademark. An "entitlement"
attribute is used to identify the entitlement of the holder,
possible values are: owner, assignee and licensee, which defines
in [RFC5733].
o If supported by the server, one or more OPTIONAL
<trademark:contact> elements that contain identifiers for the
human or organizational social information objects associated with
the trademark object. A "type" attribute is used to identify the
type of contact, possible values are: owner, agent or
thirdparty.This contact object is defined in which defines in
[RFC5733].
o A <trademark:jurisdiction> element that contains the two-character
code of the jurisdiction where the trademark was registered. This
is a two-character code from which defines in [WIPO.ST3].
o Zero or more OPTIONAL <trademark:class> elements that contain the
Nice Classification class numbers of the trademark.
o A <trademark:goodsAndServices> element that contains the full
description of the goods and services mentioned in the mark
registration document.
o An OPTIONAL <trademark:apDate> element that contains the date the
trademark was applied for.
XIE Expires December 18, 2013 [Page 11]
Internet-Draft EPP Trademark Mapping June 2013
o A <trademark:regNum> element that contains the trademark
registration number registered in the trademark office.
o A <trademark:regDate> element that contains the date the trademark
was registered.
o An OPTIONAL <trademark:expDate> element that contains the
expiration date of the trademark.
o Zero or more <trademark:label> contains the following child
elements:
o
* A <trademark:aLabel> elements that contain the domain label
corresponding to the trademark name.
* A <trademark:smdInclusion> element MUST contain an "enable"
attribute whose value indicates the intended service of this
trademark object. A value of "1" or "true" means that the
object want to get the sun rise service. A value of "0" or
"false" means that the object does not want to get the sun rise
service.
* A <trademark:claimsNotify> element MUST contain an "enable"
attribute whose value indicates the intended service of this
trademark object. A value of "1" or "true" means that the
object want to get the claim service. A value of "0" or
"false" means that the object does not want to.
o A <trademark:clID> element that contains the identifier of the
sponsoring client.
o An OPTIONAL <trademark:crID> element that contains the identifier
of the client that created the trademark object.
o An OPTIONAL <trademark:crDate> element that contains the date and
time of trademark object creation in the trademark clearinghouse.
o An OPTIONAL <trademark:exDate> element that contains the date and
time identifying the end of the trademark object's registration
period.
o An OPTIONAL <trademark:upID> element that contains the identifier
of the client that last updated the trademark object. This
element MUST NOT be present if the trademark has never been
modified.
XIE Expires December 18, 2013 [Page 12]
Internet-Draft EPP Trademark Mapping June 2013
o An OPTIONAL <trademark:upDate> element that contains the date and
time of the most recent trademark-object modification. This
element MUST NOT be present if the trademark object has never been
modified.
o An OPTIONAL <trademark:trDate> element that contains the date and
time of the most recent successful trademark-object transfer.
This element MUST NOT be provided if the trademark object has
never been transferred.
o An OPTIONAL <trademark:authInfo> element that contains
authorization information associated with the trademark object.
This element MUST only be returned if the querying client is the
current sponsoring client or if the client supplied valid
authorization information with the command.
Example <info> Response for an authorized client:
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: <trademark:infData
S: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
S: <trademark:id>00000712423-1</trademark:id>
S: <trademark:roid>000000001-abc</trademark:roid>
S: <trademark:markName>example abc</trademark:markName>
S: <trademark:status s="pendingCreate"/>
S: <trademark:holder>jd1234</trademark:holder>
S: <trademark:contact type="admin">sh8013</trademark:contact>
S: <trademark:contact type="tech">sh8013</trademark:contact>
S: <trademark:jurisdiction>US</trademark:jurisdiction>
S: <trademark:class>35</trademark:class>
S: <trademark:class>36</trademark:class>
S: <trademark:goodsAndServices>Dirigendas et eiusmodi
S: featuring infringo in airfare et cartam servicia.
S: </trademark:goodsAndServices>
S: <trademark:regNum>234235</trademark:regNum>
S: <trademark:regDate>2009-08-16T09:00:00.0Z
S: </trademark:regDate>
S: <trademark:expDate>2015-08-16T09:00:00.0Z
S: </trademark:expDate>
S: <trademark:label>
S: <trademark:aLabel>exampleabc</trademark:aLabel>
S: <trademark:smdInclusion enable="1"/>
XIE Expires December 18, 2013 [Page 13]
Internet-Draft EPP Trademark Mapping June 2013
S: <trademark:claimsNotify enable="1"/>
S: </trademark:label>
S: <trademark:label>
S: <trademark:aLabel>example-abc</trademark:aLabel>
S: <trademark:smdInclusion enable="0"/>
S: <trademark:claimsNotify enable="1"/>
S: </trademark:label>
S: <trademark:clID>ClientX</trademark:clID>
S: <trademark:crID>ClientY</trademark:crID>
S: <trademark:crDate>1999-04-03T22:00:00.0Z</trademark:crDate>
S: <trademark:exDate>2015-08-16T09:00:00.0Z</trademark:exDate>
S: <trademark:upID>ClientX</trademark:upID>
S: <trademark:upDate>2010-08-16T09:00:00.0Z</trademark:upDate>
S: <trademark:trDate>2010-10-16T09:00:00.0Z</trademark:trDate>
S: <trademark:authInfo>
S: <trademark:pw>2fooBAR</trademark:pw>
S: </trademark:authInfo>
S: </trademark:info>
S: </resData>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54322-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
An EPP error response MUST be returned if an <info> command cannot be
processed for any reason.
4.1.3. EPP <transfer> Query Command
The EPP <transfer> command provides a query operation that allows a
client to determine the real-time status of pending and completed
transfer requests. In addition to the standard EPP command elements,
the <transfer> command MUST contain an "op" attribute with value
"query", and a <trademark:transfer> element that identifies the
trademark namespace. The <trademark:transfer> element contains the
following child elements:
o A <trademark:id> element that contains an identifier of the
trademark object.
o An OPTIONAL <trademark:authInfo> element that contains
authorization information associated with the trademark object or
authorization information associated with the trademark object's
holder or associated contacts. An OPTIONAL "roid" attribute MUST
be used to identify the holder or contact object if and only if
XIE Expires December 18, 2013 [Page 14]
Internet-Draft EPP Trademark Mapping June 2013
the given authInfo is associated with a holder or contact object,
and not the trademark object itself. If this element is not
provided or if the authorization information is invalid, server
policy determines if the command is rejected or if response
information will be returned to the client.
Example <transfer> query 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: <transfer op="query">
C: <trademark:transfer
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-001</trademark:id>
C: <trademark:authInfo>
C: <trademark:pw>2fooBAR</trademark:pw>
C: </trademark:authInfo>
C: </trademark:transfer>
C: </transfer>
C: <clTRID>ABC-12345</clTRID>
C: </command>
C:</epp>
When a <transfer> query command has been processed successfully, the
EPP <resData> element MUST contain a child <trademark:trnData>
element that identifies the trademark namespace. The
<trademark:trnData> element contains the following child elements:
o A <trademark:id> element that contains the fully qualified id of
the trademark object.
o A <trademark:trStatus> element that contains the state of the most
recent transfer request.
o A <trademark:reID> element that contains the identifier of the
client that requested the object transfer.
o A <trademark:reDate> element that contains the date and time that
the transfer was requested.
o A <trademark:acID> element that contains the identifier of the
client that SHOULD act upon a PENDING transfer request. For all
other status types, the value identifies the client that took the
indicated action.
XIE Expires December 18, 2013 [Page 15]
Internet-Draft EPP Trademark Mapping June 2013
o A <trademark:acDate> element that contains the date and time of a
required or completed response. For a PENDING request, the value
identifies the date and time by which a response is required
before an automated response action will be taken by the server.
For all other status types, the value identifies the date and time
when the request was completed.
o An OPTIONAL <trademark:exDate> element that contains the end of
the trademark object's validity period if the <transfer> command
caused or causes a change in the validity period.
Example <transfer> Response for an authorized client:
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: <trademark:trnData
S: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
S: <trademark:id>123456-001</trademark:id>
S: <trademark:trStatus>pending</trademark:trStatus>
S: <trademark:reID>ClientX</trademark:reID>
S: <trademark:reDate>2010-06-06T22:00:00.0Z</trademark:reDate>
S: <trademark:acID>ClientY</trademark:acID>
S: <trademark:acDate>2011-06-11T22:00:00.0Z</trademark:acDate>
S: <trademark:exDate>2012-09-08T22:00:00.0Z</trademark:exDate>
S: </trademark:trnData>
S: </resData>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54322-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
An EPP error response MUST be returned if a <transfer> command cannot
be processed for any reason.
4.2. EPP Transform Commands
EPP provides five commands to transform trademark objects: <create>
to create an instance of a trademark object, <delete> to delete an
instance of a trademark object, <renew> to extend the validity period
of a trademark object, <transfer> to manage trademark object
XIE Expires December 18, 2013 [Page 16]
Internet-Draft EPP Trademark Mapping June 2013
sponsorship changes, and <update> to change information associated
with a trademark object.
4.2.1. EPP <create> Command
The EPP <create> command provides a transform operation that allows a
client to create a trademark object. In addition to the standard EPP
command elements, the <create> command MUST contain a
<trademark:create> element that identifies the trademark namespace.
The <trademark:create> element contains the following child elements:
o A <trademark:id> element that contains the trademark application
ID registered in the trademark office.
o A <trademark:markName> element that contains the trademark text
string.
o An OPTIONAL <trademark:period> element that contains the initial
registration period of the trademark object. A server MAY define
a default initial registration period if not specified by the
client.
o One or more OPTIONAL <trademark:holder> elements that contains the
information of the holder of the trademark. An "entitlement"
attribute is used to identify the entitlement of the holder,
possible values are: owner, assignee and licensee. This object is
defined in [RFC5733].
o If supported by the server, one or more OPTIONAL
<trademark:contact> elements that contain identifiers for the
human or organizational social information objects associated with
the trademark object. A "type" attribute is used to identify the
type of contact, possible values are: owner, agent or
thirdparty.This object is defined in [RFC5733].
o A <trademark:jurisdiction> element that contains the two-character
code of the jurisdiction where the trademark was registered. This
is a two-character code from [WIPO.ST3].
o Zero or more OPTIONAL <trademark:class> elements that contain the
Nice Classification class numbers of the trademark.
o A <trademark:goodsAndServices> element that contains the full
description of the goods and services mentioned in the mark
registration document.
o An OPTIONAL <trademark:apDate> element that contains the date the
trademark was applied for.
XIE Expires December 18, 2013 [Page 17]
Internet-Draft EPP Trademark Mapping June 2013
o A <trademark:regNum> element that contains the trademark
registration number registered in the trademark office.
o A <trademark:regDate> element that contains the date the trademark
was registered.
o An OPTIONAL <trademark:expDate> element that contains the
expiration date of the trademark.
o Zero or more <trademark:label> contains the following child
elements:
o
* A <trademark:aLabel> elements that contain the domain label
corresponding to the trademark name.
* A <trademark:smdInclusion> element MUST contain an "enable"
attribute whose value indicates the intended service of this
trademark object. A value of "1" or "true" means that the
object want to get the sun rise service. A value of "0" or
"false" means that the object does not want to get the sun rise
service.
* A <trademark:claimsNotify> element MUST contain an "enable"
attribute whose value indicates the intended service of this
trademark object. A value of "1" or "true" means that the
object want to get the claim service. A value of "0" or
"false" means that the object does not want to.
o An OPTIONAL <trademark:authInfo> element that contains
authorization information associated with the trademark object.
This element MUST only be returned if the querying client is the
current sponsoring client or if the client supplied valid
authorization information with the command.
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: <trademark:create
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-001</trademark:id>
C: <trademark:markName>example abc</trademark:markName>
C: <trademark:status s="pendingCreate"/>
C: <trademark:holder>jd1234</trademark:holder>
XIE Expires December 18, 2013 [Page 18]
Internet-Draft EPP Trademark Mapping June 2013
C: <trademark:contact type="admin">sh8013</trademark:contact>
C: <trademark:contact type="tech">sh8013</trademark:contact>
C: <trademark:jurisdiction>US</trademark:jurisdiction>
C: <trademark:class>35</trademark:class>
C: <trademark:class>36</trademark:class>
C: <trademark:goodsAndServices>Dirigendas et eiusmodi
C: featuring infringo in airfare et cartam servicia.
C: </trademark:goodsAndServices>
C: <trademark:regNum>234235</trademark:regNum>
C: <trademark:regDate>2009-08-16T09:00:00.0Z</trademark:regDate>
C: <trademark:expDate>2015-08-16T09:00:00.0Z</trademark:expDate>
C: <trademark:period unit="y">5</trademark:period>
C: <trademark:label>
C: <trademark:aLabel>exampleabc</trademark:aLabel>
C: <trademark:smdInclusion enable="1"/>
C: <trademark:claimsNotify enable="1"/>
C: </trademark:label>
C: <trademark:label>
C: <trademark:aLabel>example-abc</trademark:aLabel>
C: <trademark:smdInclusion enable="1"/>
C: <trademark:claimsNotify enable="1"/>
C: </trademark:label>
C: <trademark:authInfo>
C: <trademark:pw>2fooBAR</trademark:pw>
C: </trademark:authInfo>
C: <trademark:create
C: </create>
C: <clTRID>ABC-12345</clTRID>
C: </command>
C:</epp>
When a <create> command has been processed successfully, the EPP
<resData> element MUST contain a child <trademark:creData> element
that identifies the tradeamark namespace. The <trademark:creData>
element contains the following child elements:
o A <trademark:id> element that contains the fully qualified id of
the trademark object.
o A <trademark:crDate> element that contains the date and time of
trademark object creation.
o An OPTIONAL <trademark:exDate> element that contains the date and
time identifying the end of the trademark object's registration
period.
XIE Expires December 18, 2013 [Page 19]
Internet-Draft EPP Trademark Mapping June 2013
Example <create> 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: <trademark:creData
S: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
S: <trademark:id>00000712423-1</trademark:id>
S: <trademark:crDate>1999-04-03T22:00:00.0Z</trademark:crDate>
S: <trademark:exDate>2001-04-03T22:00:00.0Z</trademark:exDate>
S: </trademark:creData>
S: </resData>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54321-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
4.2.2. EPP <delete> Command
The EPP <delete> command provides a transform operation that allows a
client to delete a trademark object. In addition to the standard EPP
command elements, the <delete> command MUST contain a
<trademark:delete> element that identifies the trademark namespace.
The <trademark:delete> element contains the following child elements:
o A <trademark:id> element that contains the fully qualified id of
the trademark object to be deleted.
Example <delete> 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: <delete>
C: <trademark:delete
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-001</trademark:id>
C: </trademark:delete>
C: </delete>
C: <clTRID>ABC-12345</clTRID>
C: </command>
XIE Expires December 18, 2013 [Page 20]
Internet-Draft EPP Trademark Mapping June 2013
C:</epp>
When a <delete> command has been processed successfully, a server
MUST respond with an EPP response with no <resData> element.
Example <delete> 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: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54321-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
An EPP error response MUST be returned if a <delete> command cannot
be processed for any reason.
4.2.3. EPP <renew> Command
The EPP <renew> command provides a transform operation that allows a
client to extend the validity period of a trademark object. In
addition to the standard EPP command elements, the <renew> command
MUST contain a <trademark:renew> element that identifies the
trademark namespace. The <trademark:renew> element contains the
following child elements:
o A <trademark:id> element that contains the fully qualified id of
the trademark object whose validity period is to be extended.
o A <trademark:curExpDate> element that contains the date on which
the current validity period ends. This value ensures that
repeated <renew> commands do not result in multiple, unanticipated
successful renewals.
o An OPTIONAL <trademark:period> element that contains the number of
units to be added to the registration period of the trademark
object. The number of units available MAY be subject to limits
imposed by the server.
XIE Expires December 18, 2013 [Page 21]
Internet-Draft EPP Trademark Mapping June 2013
Example <renew> 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: <renew>
C: <trademark:renew
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-001</trademark:id>
C: <trademark:curExpDate>2000-04-03</trademark:curExpDate>
C: <trademark:period unit="y">5</trademark:period>
C: </trademark:renew>
C: </renew>
C: <clTRID>ABC-12345</clTRID>
C: </command>
C:</epp>
When a <renew> command has been processed successfully, the EPP
<resData> element MUST contain a child <trademark:renData> element
that identifies the trademark namespace. The <trademark:renData>
element contains the following child elements:
o A <trademark:id> element that contains the fully qualified id of
the trademark object.
o An OPTIONAL <trademark:exDate> element that contains the date and
time identifying the end of the trademark object's registration
period.
Example <renew> 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: <trademark:renData
S: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
S: <trademark:id>123456-001</trademark:id>
S: <trademark:exDate>2012-04-03T22:00:00.0Z</trademark:exDate>
S: </trademark:renData>
S: </resData>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54322-XYZ</svTRID>
XIE Expires December 18, 2013 [Page 22]
Internet-Draft EPP Trademark Mapping June 2013
S: </trID>
S: </response>
S:</epp>
An EPP error response MUST be returned if a <renew> command cannot be
processed for any reason.
4.2.4. EPP <transfer> Command
The EPP <transfer> command provides a transform operation that allows
a client to manage requests to transfer the sponsorship of a
trademark object. In addition to the standard EPP command elements,
the <transfer> command MUST contain a <trademark:transfer> element
that identifies the trademark namespace. The <trademark:transfer>
element contains the following child elements:
o A <trademark:id> element that contains the fully qualified id of
the trademark object for which a transfer request is to be
created, approved, rejected, or cancelled.
o An OPTIONAL <trademark:period> element that contains the number of
units to be added to the registration period of the trademark
object at completion of the transfer process. This element can
only be used when a transfer is requested, and it MUST be ignored
if used otherwise. The number of units available MAY be subject
to limits imposed by the server.
o A <trademark:authInfo> element that contains authorization
information associated with the trademark object or authorization
information associated with the trademark object's holder or
associated contacts. An OPTIONAL "roid" attribute MUST be used to
identify the holder or contact object if and only if the given
authInfo is associated with a holder or contact object, and not
the trademark object itself.
Every EPP <transfer> command MUST contain an "op" attribute that
identifies the transfer operation to be performed. Valid values,
definitions, and authorizations for all attribute values are defined
in [RFC5730].
Example <transfer> request 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: <transfer op="request">
C: <trademark:transfer
XIE Expires December 18, 2013 [Page 23]
Internet-Draft EPP Trademark Mapping June 2013
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-001</trademark:id>
C: <trademark:period unit="y">1</trademark:period>
C: <trademark:authInfo>
C: <trademark:pw roid="JD1234-REP">2fooBAR</trademark:pw>
C: </trademark:authInfo>
C: </trademark:transfer>
C: </transfer>
C: <clTRID>ABC-12345</clTRID>
C: </command>
C:</epp>
When a <transfer> command has been processed successfully, the EPP
<resData> element MUST contain a child <trademark:trnData> element
that identifies the trademark namespace. The <trademark:trnData>
element contains the same child elements defined for a transfer query
response.
Example <transfer> Response for an authorized client:
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: <trademark:trnData
S: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
S: <trademark:id>123456-001</trademark:id>
S: <trademark:trStatus>pending</trademark:trStatus>
S: <trademark:reID>ClientX</trademark:reID>
S: <trademark:reDate>2010-06-06T22:00:00.0Z</trademark:reDate>
S: <trademark:acID>ClientY</trademark:acID>
S: <trademark:acDate>2011-06-11T22:00:00.0Z</trademark:acDate>
S: <trademark:exDate>2012-09-08T22:00:00.0Z</trademark:exDate>
S: </trademark:trnData>
S: </resData>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54322-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
XIE Expires December 18, 2013 [Page 24]
Internet-Draft EPP Trademark Mapping June 2013
An EPP error response MUST be returned if a <transfer> command cannot
be processed for any reason.
4.2.5. EPP <update> Command
The EPP <update> command provides a transform operation that allows a
client to modify the attributes of a trademark object. In addition
to the standard EPP command elements, the <update> command MUST
contain a <trademark:update> element that identifies the trademark
namespace. The <trademark:update> element contains the following
child elements:
o A <trademark:id> element that contains the fully qualified id of
the trademark object to be updated.
o An OPTIONAL <trademark:add> element that contains attribute values
to be added to the object.
o An OPTIONAL <trademark:rem> element that contains attribute values
to be removed from the object.
o An OPTIONAL <trademark:chg> element that contains object attribute
values to be changed.
At least one <trademark:add>, <trademark:rem>, or <trademark:chg>
element MUST be provided if the command is not being extended. All
of these elements MAY be omitted if an <update> extension is present.
The <trademark:add> and <trademark:rem> elements contain the
following child elements:
o Zero or more <trademark:label> contains the following child
elements:
o
* A <trademark:aLabel> elements that contain the domain label
corresponding to the trademark name.
* A <trademark:smdInclusion> element MUST contain an "enable"
attribute whose value indicates the intended service of this
trademark object. A value of "1" or "true" means that the
object want to get the sun rise service. A value of "0" or
"false" means that the object does not want to get the sun rise
service.
* A <trademark:claimsNotify> element MUST contain an "enable"
attribute whose value indicates the intended service of this
trademark object. A value of "1" or "true" means that the
XIE Expires December 18, 2013 [Page 25]
Internet-Draft EPP Trademark Mapping June 2013
object want to get the claim service. A value of "0" or
"false" means that the object does not want to.
o Zero or more <trademark:contact> elements that contain the
identifiers for contact objects to be associated with or removed
from the trademark object. Contact object identifiers MUST be
known to the server before the contact object can be associated
with the trademark object.
o Zero or more <trademark:status> elements that contain status
values to be applied to or removed from the object. When
specifying a value to be removed, only the attribute value is
significant; element text is not required to match a value for
removal.
A <trademark:chg> element contains the following child elements:
o A <trademark:holder> element that contains the identifier for the
human or organizational social information (contact) object to be
associated with the trademark object as the object holder. This
object identifier MUST be known to the server before the contact
object can be associated with the trademark object. An empty
element can be used to remove holder information.
o A <trademark:authInfo> element that contains authorization
information associated with the trademark object. This mapping
includes a password-based authentication mechanism, but the schema
allows new mechanisms to be defined in new schemas. A
<trademark:null> element can be used within the
<trademark:authInfo> element to remove authorization information.
o A <trademark:markName> element that contains the trademark text
string to be changed.
o A <trademark:jurisdiction> element that contains the two-character
code of the jurisdiction where the trademark was registered to be
changed.
o A <trademark:class> elements that contain the Nice Classification
class numbers of the trademark to be changed.
o A <trademark:goodsAndServices> element that contains the full
description of the goods and services mentioned in the trademark
registration document to be changed.
o A <trademark:apDate> element that contains the date to be changed
which the trademark was applied for .
XIE Expires December 18, 2013 [Page 26]
Internet-Draft EPP Trademark Mapping June 2013
o A <trademark:regNum> element that contains the trademark
registration number to be changed which registered in the
trademark office.
o A <trademark:regDate> element that contains the date the trademark
was registered to be changed.
o An OPTIONAL <trademark:expDate> element that contains the
expiration date of the trademark to be changed.
XIE Expires December 18, 2013 [Page 27]
Internet-Draft EPP Trademark Mapping June 2013
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: <trademark:update
C: xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0">
C: <trademark:id>123456-001</trademark:id>
C: <trademark:add>
C: <trademark:label>
C: <trademark:aLabel>example-one</trademark:aLabel>
C: <trademark:smdInclusion enable="1"/>
C: <trademark:claimsNotify enable="1"/>
C: </trademark:label>
C: <trademark:contact type="tech">mak21</trademark:contact>
C: <trademark:status s="clientHold"/>
C: </trademark:add>
C: <trademark:rem>
C: <trademark:label>
C: <trademark:aLabel>exampleone</trademark:aLabel>
C: <trademark:smdInclusion enable="1"/>
C: <trademark:claimsNotify enable="1"/>
C: </trademark:label>
C: <trademark:contact type="tech">sh8013</trademark:contact>
C: <trademark:status s="clientUpdateProhibited"/>
C: </trademark:rem>
C: <trademark:chg>
C: <trademark:holder>sh8013</trademark:holder>
C: <trademark:authInfo>
C: <trademark:pw>2BARfoo</trademark:pw>
C: </trademark:authInfo>
C: </trademark:chg>
C: </trademark:update>
C: </update>
C: <clTRID>ABC-12345</clTRID>
C: </command>
C:</epp>
When an <update> command has been processed successfully, a server
MUST respond with an EPP response with no <resData> element.
Example <update> response:
S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0">
S: <response>
XIE Expires December 18, 2013 [Page 28]
Internet-Draft EPP Trademark Mapping June 2013
S: <result code="1000">
S: <msg>Command completed successfully</msg>
S: </result>
S: <trID>
S: <clTRID>ABC-12345</clTRID>
S: <svTRID>54321-XYZ</svTRID>
S: </trID>
S: </response>
S:</epp>
An EPP error response MUST be returned if a <update> command cannot
be processed for any reason.
5. Formal Syntax
Copyright (c) 2013 IETF Trust and the persons identified as authors
of the code. All rights reserved.
An EPP Trademark 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. The BEGIN and END tags are not part of the schema; they
are used to note the beginning and ending of the schema for URI
registration purposes.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
o Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
o 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.
o 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,
XIE Expires December 18, 2013 [Page 29]
Internet-Draft EPP Trademark Mapping June 2013
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"?>
<schema targetNamespace="urn:ietf:params:xml:ns:trademark-1.0"
xmlns:trademark="urn:ietf:params:xml:ns:trademark-1.0"
xmlns:epp="urn:ietf:params:xml:ns:epp-1.0"
xmlns:eppcom="urn:ietf:params:xml:ns:eppcom-1.0"
xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified">
<!--
Import common element types.
-->
<import namespace="urn:ietf:params:xml:ns:eppcom-1.0"/>
<import namespace="urn:ietf:params:xml:ns:epp-1.0"/>
<annotation>
<documentation>
Extensible Provisioning Protocol v1.0
Trademark Mapping Schema v1.0
</documentation>
</annotation>
<!--
Child elements found in EPP commands.
-->
<element name="check" type="trademark:mNameType"/>
<element name="create" type="trademark:createType"/>
<element name="delete" type="trademark:sNameType"/>
<element name="info" type="trademark:infoType"/>
<element name="renew" type="trademark:renewType"/>
<element name="transfer" type="trademark:transferType"/>
<element name="update" type="trademark:updateType"/>
<!--
Child elements of the <create> command.
-->
<complexType name="createType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="markName" type="token"/>
<element name="period" type="trademark:periodType"
XIE Expires December 18, 2013 [Page 30]
Internet-Draft EPP Trademark Mapping June 2013
minOccurs="0"/>
<element name="holder" type="eppcom:clIDType"
minOccurs="0"/>
<element name="contact" type="trademark:contactType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="jurisdiction" type="trademark:ccType"/>
<element name="class" type="integer" minOccurs="0"
maxOccurs="unbounded"/>
<element name="goodsAndServices" type="token" />
<element name="apId" type="token" minOccurs="0"/>
<element name="apDate" type="dateTime" minOccurs="0"/>
<element name="regNum" type="token"/>
<element name="regDate" type="dateTime"/>
<element name="expDate" type="dateTime" minOccurs="0"/>
<element name="label" minOccurs="0" maxOccurs="unbounded"
type="trademark:labelType"/>
<element name="authInfo" type="trademark:authInfoType"/>
</sequence>
</complexType>
<!--
Id type definition
-->
<simpleType name="idType">
<restriction base="token">
<pattern value="\d+-\d+"/>
</restriction>
</simpleType>
<complexType name="periodType">
<simpleContent>
<extension base="trademark:pLimitType">
<attribute name="unit" type="trademark:pUnitType"
use="required"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="pLimitType">
<restriction base="unsignedShort">
<minInclusive value="1"/>
<maxInclusive value="99"/>
</restriction>
</simpleType>
<simpleType name="pUnitType">
<restriction base="token">
<enumeration value="y"/>
XIE Expires December 18, 2013 [Page 31]
Internet-Draft EPP Trademark Mapping June 2013
<enumeration value="m"/>
</restriction>
</simpleType>
<complexType name="contactType">
<simpleContent>
<extension base="eppcom:clIDType">
<attribute name="type" type="trademark:contactAttrType"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="contactAttrType">
<restriction base="token">
<enumeration value="admin"/>
<enumeration value="billing"/>
<enumeration value="tech"/>
</restriction>
</simpleType>
<!--
Country code definition
-->
<simpleType name="ccType">
<restriction base="token">
<length value="2"/>
</restriction>
</simpleType>
<complexType name="labelType">
<sequence>
<element name="aLabel" type="trademark:domainLabelType"/>
<element name="smdInclusion" minOccurs="0"
type="trademark:notifyType"/>
<element name="claimsNotify" minOccurs="0"
type="trademark:notifyType"/>
</sequence>
</complexType>
<!--
DNS label type definition
-->
<simpleType name="domainLabelType">
<restriction base="token">
<minLength value="1"/>
<maxLength value="63"/>
<pattern value="[a-zA-Z0-9]([a-zA-Z0-9\-]*[a-zA-Z0-9])?"/>
</restriction>
XIE Expires December 18, 2013 [Page 32]
Internet-Draft EPP Trademark Mapping June 2013
</simpleType>
<complexType name="notifyType">
<simpleContent>
<extension base="normalizedString">
<attribute name="enable" type="boolean" use="required"/>
</extension>
</simpleContent
</complexType>
<complexType name="authInfoType">
<choice>
<element name="pw" type="eppcom:pwAuthInfoType"/>
<element name="ext" type="eppcom:extAuthInfoType"/>
</choice>
</complexType>
<!--
Child elements of the <info> command.
-->
<complexType name="infoType">
<sequence>
<element name="id" type="trademark:infoNameType"/>
<element name="authInfo" type="trademark:authInfoType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="infoNameType">
<simpleContent>
<extension base = "trademark:idType">
<attribute name="type" type="trademark:infoIDType"
default="all"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="infoIDType">
<restriction base="token">
<enumeration value="all"/>
<enumeration value="smd"/>
<enumeration value="mark"/>
</restriction>
</simpleType>
<!--
Child elements of the <renew> command.
-->
XIE Expires December 18, 2013 [Page 33]
Internet-Draft EPP Trademark Mapping June 2013
<complexType name="renewType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="curExpDate" type="date"/>
<element name="period" type="trademark:periodType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Child elements of the <transfer> command.
-->
<complexType name="transferType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="period" type="trademark:periodType"
minOccurs="0"/>
<element name="authInfo" type="trademark:authInfoType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Child elements of the <update> command.
-->
<complexType name="updateType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="add" type="trademark:addRemType"
minOccurs="0"/>
<element name="rem" type="trademark:addRemType"
minOccurs="0"/>
<element name="chg" type="trademark:chgType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Data elements that can be added or removed.
-->
<complexType name="addRemType">
<sequence>
<element name="label" minOccurs="0" maxOccurs="unbounded"
type="trademark:labelType"/>
<element name="contact" type="trademark:contactType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="status" type="trademark:statusType"
minOccurs="0" maxOccurs="11"/>
XIE Expires December 18, 2013 [Page 34]
Internet-Draft EPP Trademark Mapping June 2013
</sequence>
</complexType>
<!--
Data elements that can be changed.
-->
<complexType name="chgType">
<sequence>
<element name="holder" type="trademark:clIDChgType"
minOccurs="0"/>
<element name="authInfo" type="trademark:authInfoChgType"
minOccurs="0"/>
<element name="markName" type="token" minOccurs="0"/>
<element name="jurisdiction" type="trademark:ccType"
minOccurs="0"/>
<element name="class" type="integer" minOccurs="0"
maxOccurs="unbounded"/>
<element name="goodsAndServices" type="token" />
<element name="apId" type="token" minOccurs="0"/>
<element name="apDate" type="dateTime" minOccurs="0"/>
<element name="regNum" type="token" minOccurs="0"/>
<element name="regDate" type="dateTime" minOccurs="0"/>
<element name="expDate" type="dateTime" minOccurs="0"/>
</sequence>
</complexType>
<!--
Allow the holder value to be nullified by changing the
minLength restriction to "0".
-->
<simpleType name="clIDChgType">
<restriction base="token">
<minLength value="0"/>
<maxLength value="16"/>
</restriction>
</simpleType>
<!--
Allow the authInfo value to be nullified by including an
empty element within the choice.
-->
<complexType name="authInfoChgType">
<choice>
<element name="pw" type="eppcom:pwAuthInfoType"/>
<element name="ext" type="eppcom:extAuthInfoType"/>
<element name="null"/>
</choice>
</complexType>
XIE Expires December 18, 2013 [Page 35]
Internet-Draft EPP Trademark Mapping June 2013
<!--
Child response elements.
-->
<element name="chkData" type="trademark:chkDataType"/>
<element name="creData" type="trademark:creDataType"/>
<element name="infData" type="trademark:infDataType"/>
<element name="panData" type="trademark:panDataType"/>
<element name="renData" type="trademark:renDataType"/>
<element name="trnData" type="trademark:trnDataType"/>
<!--
<check> response elements.
-->
<complexType name="chkDataType">
<sequence>
<element name="cd" type="trademark:checkType"
maxOccurs="unbounded"/>
</sequence>
</complexType>
<complexType name="checkType">
<sequence>
<element name="id" type="trademark:checkNameType"/>
<element name="reason" type="eppcom:reasonType"
minOccurs="0"/>
</sequence>
</complexType>
<complexType name="checkNameType">
<simpleContent>
<extension base="trademark:idType">
<attribute name="avail" type="boolean"
use="required"/>
</extension>
</simpleContent>
</complexType>
<!--
<create> response elements.
-->
<complexType name="creDataType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="crDate" type="dateTime"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
</sequence>
</complexType>
XIE Expires December 18, 2013 [Page 36]
Internet-Draft EPP Trademark Mapping June 2013
<!--
<info> response elements.
-->
<complexType name="infDataType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="roid" type="eppcom:roidType"/>
<element name="markName" type="token"/>
<element name="status" type="trademark:statusType"
minOccurs="0" maxOccurs="11"/>
<element name="holder" type="eppcom:clIDType"
minOccurs="0"/>
<element name="contact" type="trademark:contactType"
minOccurs="0" maxOccurs="unbounded"/>
<element name="jurisdiction" type="trademark:ccType"/>
<element name="class" type="integer" minOccurs="0"
maxOccurs="unbounded"/>
<element name="goodsAndServices" type="token" />
<element name="apId" type="token" minOccurs="0"/>
<element name="apDate" type="dateTime" minOccurs="0"/>
<element name="regNum" type="token"/>
<element name="regDate" type="dateTime"/>
<element name="expDate" type="dateTime" minOccurs="0"/>
<element name="label" minOccurs="0" maxOccurs="unbounded"
type="trademark:labelType"/>
<element name="clID" type="eppcom:clIDType"/>
<element name="crID" type="eppcom:clIDType"
minOccurs="0"/>
<element name="crDate" type="dateTime"
minOccurs="0"/>
<element name="upID" type="eppcom:clIDType"
minOccurs="0"/>
<element name="upDate" type="dateTime"
minOccurs="0"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
<element name="trDate" type="dateTime"
minOccurs="0"/>
<element name="authInfo" type="trademark:authInfoType"
minOccurs="0"/>
</sequence>
</complexType>
<!--
Status is a combination of attributes and an optional
human-readable message that may be expressed in languages other
than English.
XIE Expires December 18, 2013 [Page 37]
Internet-Draft EPP Trademark Mapping June 2013
-->
<complexType name="statusType">
<simpleContent>
<extension base="normalizedString">
<attribute name="s" type="trademark:statusValueType"
use="required"/>
<attribute name="lang" type="language"
default="en"/>
</extension>
</simpleContent>
</complexType>
<simpleType name="statusValueType">
<restriction base="token">
<enumeration value="clientDeleteProhibited"/>
<enumeration value="clientHold"/>
<enumeration value="clientRenewProhibited"/>
<enumeration value="clientTransferProhibited"/>
<enumeration value="clientUpdateProhibited"/>
<enumeration value="inactive"/>
<enumeration value="ok"/>
<enumeration value="pendingCreate"/>
<enumeration value="pendingDelete"/>
<enumeration value="pendingRenew"/>
<enumeration value="pendingTransfer"/>
<enumeration value="pendingUpdate"/>
<enumeration value="serverDeleteProhibited"/>
<enumeration value="serverHold"/>
<enumeration value="serverRenewProhibited"/>
<enumeration value="serverTransferProhibited"/>
<enumeration value="serverUpdateProhibited"/>
</restriction>
<!--
Pending action notification response elements.
-->
<complexType name="panDataType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="markName" type="token"/>
<element name="exDate" type="dateTime"/>
</sequence>
</complexType>
<!--
<renew> response elements.
-->
<complexType name="renDataType">
XIE Expires December 18, 2013 [Page 38]
Internet-Draft EPP Trademark Mapping June 2013
<sequence>
<element name="id" type="trademark:idType"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
</sequence>
</complexType>
<!--
<transfer> response elements.
-->
<complexType name="trnDataType">
<sequence>
<element name="id" type="trademark:idType"/>
<element name="trStatus" type="eppcom:trStatusType"/>
<element name="reID" type="eppcom:clIDType"/>
<element name="reDate" type="dateTime"/>
<element name="acID" type="eppcom:clIDType"/>
<element name="acDate" type="dateTime"/>
<element name="exDate" type="dateTime"
minOccurs="0"/>
</sequence>
</complexType>
<!--
End of schema.
-->
</schema>
END
6. Internationalization Considerations
EPP is represented in XML, which provides native support for encoding
information using the Unicode character set and its more compact
representations including UTF-8. Conformant XML processors recognize
both UTF-8 and UTF-16. Though XML includes provisions to identify
and use other character encodings through use of an "encoding"
attribute in an <?xml?> declaration, use of UTF-8 is RECOMMENDED.
As the EPP Trademark mapping, the elements, element content described
in this document MUST inherit the internationalization conventions
used to represent higher-layer and core protocol structures present
in an XML instance that includes this extension.
Dealing with the IDN variant issues,TBD.
7. IANA Considerations
XIE Expires December 18, 2013 [Page 39]
Internet-Draft EPP Trademark Mapping June 2013
This document uses URNs to describe XML namespaces and XML schemas
conforming to a registry mechanism described in [RFC3688]. IANA is
requested to assignment the following two URI.
Registration request for the trademark namespace:
o URI: urn:ietf:params:xml:ns:trademark-1.0
o Registrant Contact: See the "Author's Address" section of this
document.
o XML: None. Namespace URI does not represent an XML specification.
Registration request for the mark XML schema:
o URI: urn:ietf:params:xml:schema:trademark-1.0
o Registrant Contact: See the "Author's Address" section of this
document.
o XML: See the "Formal Syntax" section of this document.
8. Security considerations
The object mapping extension described in this document does not
provide any other security services or introduce any additional
considerations beyond those described by [RFC5730] or those caused by
the protocol layers used by EPP.
9. Acknowledgements
The authors especially thank the authors of [RFC5730], [RFC5731] and
the authors of [draft-lozano-smd].
10. Change History
TBD
10.1. draft-xie-epp-trademark-mapping: Version 00
o First draft.
11. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
XIE Expires December 18, 2013 [Page 40]
Internet-Draft EPP Trademark Mapping June 2013
[RFC3688] Mealling, M., "The IETF XML Registry", BCP 81, RFC 3688,
January 2004.
[RFC5730] Hollenbeck, S., "Extensible Provisioning Protocol (EPP)",
STD 69, RFC 5730, August 2009.
[RFC5731] Hollenbeck, S., "Extensible Provisioning Protocol (EPP)
Domain Name Mapping", STD 69, RFC 5731, August 2009.
[RFC5733] Hollenbeck, S., "Extensible Provisioning Protocol (EPP)
Contact Mapping", STD 69, RFC 5733, August 2009.
[W3C.REC-xml-20040204]
Bray, T., Paoli, J., Sperberg-McQueen, C., Maler, E., and
F. Yergeau, ""Extensible Markup Language (XML) 1.0 (Third
Edition)", World Wide Web Consortium FirstEdition REC-
xml-20040204", February 2004,
<http://www.w3.org/TR/2004/REC-xml-20040204>.
[W3C.REC-xmlschema-1-20041028]
Thompson, H., Beech, D., Maloney, M., and N. Mendelsohn,
""XML Schema Part 1: Structures Second Edition", World
Wide Web Consortium Recommendation REC-
xmlschema-1-20041028", October 2004,
<http://www.w3.org/TR/2004/REC-xmlschema-1-20041028>.
[W3C.REC-xmlschema-2-20041028]
Biron, P. and A. Malhotra, ""XML Schema Part 2: Datatypes
Second Edition", World Wide Web Consortium Recommendation
REC-xmlschema-2-20041028", October 2004,
<http://www.w3.org/TR/2004/REC-xmlschema-2-20041028>.
[WIPO.ST3]
WIPO, ., "Recommended standard on two-letter codes for the
representation of states, other entities and
intergovernmental organizations", March 2007.
Author's Address
Jiagui XIE
CONAC
Jia 31,North Guangximen, Xibahe, Chaoyang District
Beijing, Beijing 100028
China
Phone: +86 10 5203 5025
Email: xiejg@conac.cn
XIE Expires December 18, 2013 [Page 41]