Groupe de travail Réseau	S. Hollenbeck, VeriSign	
Request for Comments : 3915	septembre 2004	
Catégorie : En cours de normalisation	Traduction Claude Brière de L'Isle	

Transposition de la période de grâce de registre de domaine pour le protocole d'approvisionnement extensible (EPP)

Statut de ce mémoire
Le présent document spécifie un protocole Internet en cours de normalisation pour la communauté de l’Internet, et appelle à des discussions et des suggestions pour son amélioration. Prière de se reporter à l’édition actuelle du STD 1 "Normes des protocoles officiels de l’Internet" pour connaître l’état de normalisation et le statut de ce protocole. La distribution du présent mémoire n’est soumise à aucune restriction.

Notice de copyright
Copyright (C) The Internet Society (2004).

Résumé
Le présent document décrit une extension de transposition du protocole d'approvisionnement extensible (EPP, Extensible Provisioning Protocol) pour la gestion des noms de domaine du système des noms de domaines (DNS, Domain Name System) soumis aux politiques de "période de grâce" définies par la corporation Internet pour l'allocation des noms et des numéros (ICANN, Internet Corporation for Assigned Names and Numbers). Les politiques de période de grâce existent pour permettre que des actions du protocole soient inversées ou révoquées durant une brève période de temps après que l'action de protocole a été effectuée. Spécifiée en XML, cette transposition étend la transposition de nom de domaine EPP afin de fournir les caractéristiques supplémentaires exigées pour le traitement de la période de grâce.

Table des Matières
1. Introduction	1
1.1 Conventions utilisées dans le présent document	2
2. Diagramme d'état de période de grâce de rédemption	2
3. Attributs d'objet	3
3.1 Valeurs d'état	3
3.2 Données d'enregistrement et informations de soutien	4
3.3 Dates et heures	4
3.4 Déclarations de client	4
4. Transposition de commande EPP	4
4.1 Commandes EPP d'interrogation	4
4.2 Commandes EPP de transformation	7
5. Syntaxe formelle	10
6. Considérations d'internationalisation	12
7. Considérations relatives à l'IANA	12
8. Considérations sur la sécurité	12
9 Remerciements	13
10. Références	13
10.1 Références normatives	13
10.2 Références pour information	13
Adresse de l'auteur	13
Déclaration complète de droits de reproduction	14

1.	Introduction

Le présent document décrit une transposition d'extension pour la version 1.0 du protocole d'approvisionnement extensible (EPP, Extensible Provisioning Protocol) décrit dans la [RFC3730]. Cette transposition, une extension de la transposition de nom de domaine décrite dans la [RFC3731], est spécifiée en utilisant le langage de balisage extensible (XML, Extensible Markup Language) 1.0 [REC-xml] et la notation de schéma XML [xmlschema], [schema-2].

La spécification du cœur du protocole EPP [RFC3730] donne une description complète de la structure de commande et de réponse d'EPP. Une bonne compréhension de la spécification du protocole de base est nécessaire pour celle de la transposition décrite dans le présent document.

Au cours de plusieurs mois de l'année 2002, la corporation Internet d'allocations des noms et des numéros (ICANN, Internet Corporation for Assigned Names and Numbers) a développé une proposition de mise en œuvre d'une "période de grâce" pour la récupération d'un nom de domaine (ou rédemption) du système des noms de domaines (DNS, Domain Name System) avant qu'un nom de domaine soit purgé du répertoire du registre d'autorité pour le nom de domaine. Cette transposition étend la commande <update> de domaine EPP pour initier le processus de rédemption pour un nom de domaine qui est entré dans la période de grâce de rédemption (RGP, Redemption Grace Period) et il étend la réponse <info> de domaine EPP pour identifier l'état des domaines qui sont entrés dans diverses périodes de grâce définies par la politique de l'ICANN.

En mars 2003, l'ICANN a publié le rapport d'une équipe de travail décrivant les périodes de grâce d'autres registres de domaines relatifs aux opérations d'EPP. Cette transposition décrit les valeurs d'état d'extension pour noter les périodes de grâce décrites dans le rapport, incluant :

o	Une "période de grâce supplémentaire" après l'enregistrement initial d'un nom de domaine. Si le nom de domaine est supprimé par le registraire durant cette période, le registre crédite le registraire du coût de l'enregistrement.

o	Un "auto-renouvellement de période de grâce" après l'expiration de la période d'enregistrement d'un nom de domaine est étendu (renouvelé) automatiquement par le registre. Si le nom de domaine est supprimé par le registraire durant cette période, le registre crédite le registraire du coût du renouvellement.

o	Une "période de grâce de renouvellement" après la période d'enregistrement du nom de domaine est explicitement étendue (renouvelée) par le registraire. Si le nom de domaine est supprimé par le registraire durant cette période, le registre crédite le registraire du coût de la suppression.

o	Une "période de grâce de transfert" après le transfert réussi du parrainage de l'enregistrement d'un nom de domaine d'un registraire à un autre. Si le nom de domaine est supprimé par le nouveau registraire parrain durant cette période, le registre crédite le registraire du coût du transfert.

Chaque période de grâce existe pour une période spécifique qui est normalement mesurée en jours. La durée de chaque période de grâce est une question de politique de fonctionnement de registre qui ne sera pas traitée dans le présent document.

1.1	Conventions utilisées dans le présent document
Les mots clés "DOIT", "NE DOIT PAS", "EXIGE", "DEVRA", "NE DEVRA PAS", "DEVRAIT", "NE DEVRAIT PAS", "RECOMMANDE", "PEUT", et "FACULTATIF" en majuscules dans ce document sont à interpréter comme décrit dans le BCP 14, [RFC2119].

Dans les exemples, "C:" représente les lignes envoyées par un client de protocole et "S:" représente les lignes retournées par le serveur. Les retraits à la ligne et les espaces dans les exemples ne sont fournis que pour illustrer les relations entre les éléments et ne sont pas des caractéristiques EXIGÉES de la présent spécification.

XML est sensible à la casse. Sauf mention contraire, les spécifications et exemples XML fournis dans ce document DOIVENT être interprétés dans la casse de caractères présentée pour développer une mise en œuvre conforme.

2.	Diagramme d'état de période de grâce de rédemption

La période de grâce de rédemption (RGP, Redemption Grace Period) implique plusieurs transitions d'état de domaine lorsque un nom de domaine passe à travers le processus de rédemption :

1.	Un domaine est initialement dans l'état EPP "ok", ou quelque autre état qui permet le traitement de la commande EPP <delete>.

2.	Une commande <delete> est reçue et traitée pour le nom de domaine.

3.	RGP commence une fois que la commande <delete> est traitée avec succès. L'état EPP passe à "pendingDelete", et l'état RGP est initialisé à "redemptionPeriod". Le domaine reste dans cet état jusqu'à ce qu'une opération <restore> soit demandée ou que la période de rédemption soit écoulée.

4.	Une opération <restore> peut être demandée en utilisant la commande étendue <update> EPP. Aller à l'étape 8 si la période de rédemption est écoulée avant que soit reçue une commande <restore>.

5.	Si <restore> réussit, le registre attend de recevoir un rapport restore du registraire pendant un délai défini par le registre. L'état EPP reste à "pendingDelete" et l'état RGP passe à "pendingRestore". Bien que cette extension définisse une méthode pour délivrer un rapport restore via EPP, un mécanisme hors bande (comme un site de la Toile) peut aussi être utilisé pour délivrer les rapports restore.

6.	Le nom de domaine retourne à l'état de période de rédemption (état 3) si un rapport restore n'est pas reçu.

7.	Si un rapport restore est reçu, l'état EPP retourne à "ok" (ou ce qu'il était avant le traitement de la commande <delete>) et l'état RGP est complètement supprimé.

8.	La période de rédemption s'écoule avant qu'une demande <restore> soit reçue.

9.	L'état EPP reste à "pendingDelete" et l'état RGP passe à "pendingDelete". Le nom de domaine reste dans cet état pendant un délai défini par le registre.

10.	Le nom de domaine est purgé une fois que s'est écoulée la période de suppression en cours.

11.Le nom de domaine est disponible pour réenregistrement.

Figure 1 : Diagramme d'état RGP

             |
             v
   +----------------------+    (2)   +-----------------------+
   |EPP : ok           (1)| <delete> |EPP : pendingDelete (3)|
   |RGP : N/A             |--------->|RGP : redemptionPeriod |
   +----------------------+          +-----------------------+
      ^                         (4)    |  ^             |
      |                      <restore> |  |      No (8) |
      |                    +-----------+  |   <restore> |
      |                    |              |             |
      |                    v              |             v
      |  +----------------------+         |  +----------------------+
      |  |EPP: pendingDelete (5)|         |  |EPP: pendingDelete (9)|
      |  |RGP: pendingRestore   |---------+  |RGP: pendingDelete    |
      |  +----------------------+ Rapport    +----------------------+
      |                    |      non (6)               |
      |          (7)       |      reçu      Purger (10) |
      |   Rapport reçu     |                            |
      +--------------------+                            v
                                             +----------------------+
                                             |       Purgé      (11)|
                                             |                      |
                                             +----------------------+

3.	Attributs d'objet

Cette extension ajoute des éléments supplémentaires à la transposition de nom de domaine EPP [RFC3731]. Seules les nouvelles descriptions d'éléments sont données ici.

3.1	Valeurs d'état
Cette extension définit les nouvelles valeurs d'état pour représenter les différents états dans lesquels peut être un nom de domaine par suite du traitement d'une période de grâce. Ce sont :

addPeriod : cette période de grâce est fournie après l'enregistrement initial d'un nom de domaine. Si le nom de domaine est supprimé par le registraire durant cette période, le registre crédite au registraire le coût de l'enregistrement.

autoRenewPeriod : cette période de grâce est fournie après l'expiration de la période d'enregistrement d'un nom de domaine et est étendue (renouvelée) automatiquement par le registre. Si le nom de domaine est supprimé par le registraire durant cette période, le registre crédite le registraire du coût du renouvellement.

renewPeriod : cette période de grâce est fournie après l'extension (renouvellement) explicite de la période d'enregistrement d'un nom de domaine par le registraire. Si le nom de domaine est supprimé par le registraire durant cette période, le registre crédite le registraire du coût du renouvellement.

transferPeriod : cette période de grâce est fournie après le transfert réussi du parrainage de l'enregistrement d'un nom de domaine d'un registraire à un autre. Si le nom de domaine est supprimé par le nouveau registraire parrain durant cette période, le registre crédite le registraire du coût du transfert.

redemptionPeriod : cette valeur d'état est utilisée pour décrire un domaine pour lequel une commande <delete> a été reçue, mais dont le domaine n'a pas encore été purgé parce qu'une opportunité existe de restaurer le domaine et interrompre le processus de suppression.

pendingRestore : cette valeur d'état est utilisée pour décrire un domaine qui est en cours de restauration après avoir été dans l'état redemptionPeriod.

pendingDelete : cette valeur d'état est utilisée pour décrire un domaine qui est entré dans l'état de traitement de purge après avoir achevé l'état de redemptionPeriod. Un domaine dans cet état DOIT aussi être dans l'état pendingDelete décrit dans la transposition de domaine EPP [RFC3731].

3.2	Données d'enregistrement et informations de soutien
Cette extension permet à un client de fournir des copies des données d'enregistrement (données whois [RFC0954], par exemple) et des informations de soutien dans un rapport restore comme demandé par le processus RGP. Aucun format spécifique n'est requis par cette extension ; du texte libre et du balisage XML PEUVENT tous deux être utilisés.

Les opérateurs de serveurs qui fournissent les données d'enregistrement peuvent trouver utile de fournir les valeurs d'état de période de grâce dans leurs réponses aux interrogations des clients. Ces informations peuvent être utiles pour les personnes qui veulent comprendre les opérations qui peuvent être effectuées sur un nom de domaine à un moment donné.

3.3	Dates et heures
Les valeurs d'attribut de date et d'heure DOIVENT être représentées en temps universel coordonné (UTC, Universal Coordinated Time) en utilisant le calendrier grégorien. La forme étendue de date et heure utilisant les caractères majuscules "T" et "Z" définie dans la [RFC3339] DOIT être utilisée pour représenter les valeurs de date et heure car le schéma XML ne supporte pas les formes tronquées de date et heure ou les caractères minuscules pour "T" et "Z".

3.4	Déclarations de client
Le processus RGP exige qu'un client fasse deux déclarations concernant les données incluses dans un rapport restore. Aucun format spécifique n'est requis par cette extension ; un texte libre et le balisage XML PEUVENT tous deux être utilisés. L'anglais est le langage utilisé par défaut au sein des déclarations, mais d'autres langages PEUVENT être utilisés.

4.	Transposition de commande EPP

Une description détaillée de la syntaxe et de la sémantique de EPP se trouve dans la spécification du cœur du protocole EPP [RFC3730]. Les transpositions de commandes décrites ici sont spécifiquement à utiliser dans la mise en œuvre du processus de période de grâce de rédemption via EPP.

4.1	Commandes EPP d'interrogation
EPP fournit trois commandes pour restituer les informations d'objet s : <check> pour déterminer si un objet est connu du serveur, <info> pour restituer les informations détaillées associées à un objet, et <transfer> pour restituer les informations d'état d'un transfert d'objet.

4.1.1	Commande EPP <check>
Cette extension n'ajoute aucun élément à la commande EPP <check> ou à la réponse à <check> décrites dans la transposition de domaine EPP [RFC3731].

4.1.2	Commande EPP <info>
Cette extension n'ajoute aucun élément à la commande EPP <info> décrite dans la transposition de domaine EPP [RFC3731]. Des éléments supplémentaires sont définis pour la réponse à <info>.

Lorsque une commande <info> a été traitée avec succès, l'élément EPP <resData> DOIT contenir des éléments fils, comme décrit dans la [RFC3731]. De plus, l'élément EPP <extension> DOIT contenir un élément fils <rgp:infData> qui identifie l'espace de noms de la période de grâce du registre et la localisation du schéma de période de grâce du registre. L'élément <rgp:infData> contient un seul élément <rgp:rgpStatus> qui contient un seul attribut "s" dont la valeur décrit l'état actuel de la période de grâce du domaine. Les valeurs d'état possibles sont décrites au paragraphe 3.1.

Exemple de réponse <info> pour l'état "addPeriod" :

S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
S:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
S:     xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
S:     epp-1.0.xsd">
S:  <response>
S:    <result code="1000">
S:      <msg>Commande achevée avec succès</msg>
S:    </result>
S:    <resData>
S:      <domain:infData
S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
S:       xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
S:       domain-1.0.xsd">
S:        <domain:name>example.com</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.com</domain:hostObj>
S:          <domain:hostObj>ns1.example.net</domain:hostObj>
S:        </domain:ns>
S:        <domain:host>ns1.example.com</domain:host>
S:        <domain:host>ns2.example.com</domain:host>
S:        <domain:clID>ClientX</domain:clID>
S:        <domain:crID>ClientX</domain:crID>
S:        <domain:crDate>2003-11-26T22:00:00.0Z</domain:crDate>
S:        <domain:exDate>2005-11-26T22:00:00.0Z</domain:exDate>
S:        <domain:authInfo>
S:          <domain:pw>2fooBAR</domain:pw>
S:        </domain:authInfo>
S:      </domain:infData>
S:    </resData>
S:    <extension>
S:      <rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
S:       xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
S:       rgp-1.0.xsd">
S:        <rgp:rgpStatus s="addPeriod"/>
S:      </rgp:infData>
S:    </extension>
S:    <trID>
S:      <clTRID>ABC-12345</clTRID>
S:      <svTRID>54322-XYZ</svTRID>
S:    </trID>
S:  </response>
S:</epp>

Exemple de réponse <info> pour l'état "redemptionPeriod" :

S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
S:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
S:     xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
S:     epp-1.0.xsd">
S:  <response>
S:    <result code="1000">
S:      <msg>Commande achevée avec succès</msg>
S:    </result>
S:    <resData>
S:      <domain:infData
S:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
S:       xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
S:       domain-1.0.xsd">
S:        <domain:name>example.com</domain:name>
S:        <domain:roid>EXAMPLE1-REP</domain:roid>
S:        <domain:status s="pendingDelete"/>
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.com</domain:hostObj>
S:          <domain:hostObj>ns1.example.net</domain:hostObj>
S:        </domain:ns>
S:        <domain:host>ns1.example.com</domain:host>
S:        <domain:host>ns2.example.com</domain:host>
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:      <rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
S:       xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
S:       rgp-1.0.xsd">
S:        <rgp:rgpStatus s="redemptionPeriod"/>
S:      </rgp:infData>
S:    </extension>
S:    <trID>
S:      <clTRID>ABC-12345</clTRID>
S:      <svTRID>54322-XYZ</svTRID>
S:    </trID>
S:  </response>
S:</epp>
Exemple d'extension de réponse <info> pour l'état "pendingRestore" (noter que seul l'élément d'extension change par rapport au premier exemple) :

S:<extension>
S:  <rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
S:   xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
S:   rgp-1.0.xsd">
S:    <rgp:rgpStatus s="pendingRestore"/>
S:  </rgp:infData>
S:</extension>

Exemple d'extension de réponse <info> pour l'état "pendingDelete" (noter que seul l'élément d'extension change par rapport au premier exemple) :

S:<extension>
S:  <rgp:infData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
S:   xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
S:   rgp-1.0.xsd">
S:    <rgp:rgpStatus s="pendingDelete"/>
S:  </rgp:infData>
S:</extension>

4.1.3	Commande EPP <transfer>
Cette extension n'ajoute aucun élément à la commande EPP <transfer> ou à la réponse à <transfer> décrite dans la transposition de domaine EPP [RFC3731].

4.2	Commandes EPP de transformation
EPP fournit cinq commandes pour transformer les objets : <create> pour créer une instance d'objet, <delete> pour supprimer une instance d'objet, <renew> (renouveler) pour étendre la période de validité d'un objet, <transfer> pour gérer les changements de parrainage d'un objet, et <update> (mettre à jour) pour changer les informations associées à un objet.

4.2.1	Commande EPP <create>
Cette extension n'ajoute aucun élément à la commande EPP <create> ou à la réponse <create> décrite dans la transposition de domaine EPP [RFC3731].

4.2.2	Commande EPP <delete>
Cette extension n'ajoute aucun élément à la commande EPP <delete> ou à la réponse <delete> décrite dans la transposition de domaine EPP [RFC3731].

4.2.3	Commande EPP <renew>
Cette extension n'ajoute aucun élément à la commande EPP <renew> ou à la réponse <renew> décrite dans la transposition de domaine EPP [RFC3731].

4.2.4	Commande EPP <transfer>
Cette extension n'ajoute aucun élément à la commande EPP <transfer> ou à la réponse <transfer> décrite dans la transposition de domaine EPP [RFC3731].

4.2.5	Commande EPP <update>
Cette extension définit des éléments supplémentaires pour étendre la demande et réponse EPP <update> décrites dans la transposition de domaine EPP [RFC3731] pour le traitement de la période de grâce de rédemption.

La commande EPP <update> fournit une opération de transformation qui permet à un client de changer l'état d'un objet de domaine. L'extension de la période de grâce du registre modifie le traitement de base de mise à jour afin de prendre en charge la rédemption des noms de domaine pour lesquels une commande <delete> a été traitée, mais dont le nom n'a pas encore été purgé.

Le paragraphe 3.2.5 de la transposition de domaine EPP décrit les éléments qui doivent être spécifiés au sein d'une commande <update>. L'exigence de fournir au moins un élément <domain:add>, <domain:rem>, ou <domain:chg> est mise à jour par la présente extension de façon qu'au moins un élément vide <domain:add>, <domain:rem>, ou <domain:chg> DOIT être présent si cette extension est spécifiée dans une commande <update>. Cette exigence est mise à jour pour supprimer la possibilité de modifier un objet de domaine au titre du traitement de récupération de la période de grâce de rédemption.

En plus des éléments de commande EPP décrits dans la transposition de domaine EPP [RFC3731], la commande <update> DOIT contenir un élément <extension>. L'élément <extension> DOIT contenir un élément fils <rgp:update> qui identifie l'espace de noms de la période de grâce du registre et la localisation du schéma de période de grâce du registre. L'élément <rgp:update> contient un seul élément <rgp:restore> qui contient un élément FACULTATIF <rgp:report> qui PEUT être utilisé pour délivrer un rapport de restauration de période de grâce de rédemption.

L'élément <rgp:restore> contient un attribut EXIGÉ "op" qui décrit l'opération de période de grâce de rédemption demandée. Deux valeurs sont définies : "request" est utilisé pour identifier une demande restore qui ne comporte pas de rapport restore, et "report" est utilisé pour identifier une demande restore qui contient un rapport restore. Un rapport PEUT être soumis plus d'une fois si des corrections sont nécessaires. Si la valeur de l'attribut "op" est "request", un élément <rgp:report> NE DOIT PAS être présent. Si la valeur de l'attribut "op" est "report" un élément <rgp:report> DOIT être présent.

L'élément <rgp:report> contient les éléments fils suivants :

-	Un élément <rgp:preData> qui contient une copie des données d'enregistrement qui existaient pour le nom de domaine avant sa suppression. Cet élément PEUT contenir du texte et un balisage XML.

-	Un élément <rgp:postData> qui contient une copie des données d'enregistrement qui existaient pour le nom de domaine au moment de la soumission du rapport de restauration. Cet élément PEUT contenir du texte et du balisage XML.

-	Un élément <rgp:delTime> qui contient la date et l'heure à laquelle la demande de suppression du nom de domaine a été envoyée au serveur.

-	Un élément <rgp:resTime> qui contient la date et l'heure à laquelle la commande <rgp:restore> d'origine a été envoyée au serveur.

-	Un élément <rgp:resReason> qui contient une brève explication de la raison de la restauration du nom de domaine.

-	Un élément <rgp:statement> qui contient une déclaration textuelle que le client n'a pas restauré le nom de domaine afin de disposer des droits d'utilisation ou de vente du nom de domaine pour lui-même ou pour un tiers. Les informations de soutien relatives à cette déclaration PEUVENT être fournies dans l'élément <rgp:other> décrit plus loin. Un attribut "lang" FACULTATIF PEUT être présent pour identifier le langage si l'anglais (valeur "en") n'est pas utilisé pour représenter la déclaration.

-	Un second élément <rgp:statement> qui contient une déclaration textuelle que les informations dans le rapport de restauration sont factuelles pour autant que le sache le client. Un attribut "lang" FACULTATIF PEUT être présent pour identifier le langage si l'anglais (valeur "en") n'est pas utilisé pour représenter la déclaration.

-	Un élément FACULTATIF <rgp:other> qui contient toutes les informations nécessaires pour prendre en charge les déclarations fournies par le client. Cet élément PEUT contenir à la fois du texte et du balisage XML.

Plus d'informations détaillées décrivant les informations dont la fourniture est requise dans un rapport de restauration sont disponibles auprès de l'ICANN.

Exemple de commande <update> sans rapport de restauration :

C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
C:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
C:     xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
C:     epp-1.0.xsd">
C:  <command>
C:    <update>
C:      <domain:update
C:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
C:       xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
C:       domain-1.0.xsd">
C:        <domain:name>example.com</domain:name>
C:        <domain:chg/>
C:      </domain:update>
C:    </update>
C:    <extension>
C:      <rgp:update xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
C:       xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
C:       rgp-1.0.xsd">
C:        <rgp:restore op="request"/>
C:      </rgp:update>
C:    </extension>
C:    <clTRID>ABC-12345</clTRID>
C:  </command>
C:</epp>

Exemple de commande <update> avec rapport de restauration :

C:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
C:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
C:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
C:     xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
C:     epp-1.0.xsd">
C:  <command>
C:    <update>
C:      <domain:update
C:       xmlns:domain="urn:ietf:params:xml:ns:domain-1.0"
C:       xsi:schemaLocation="urn:ietf:params:xml:ns:domain-1.0
C:       domain-1.0.xsd">
C:        <domain:name>example.com</domain:name>
C:        <domain:chg/>
C:      </domain:update>
C:    </update>
C:    <extension>
C:      <rgp:update xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
C:       xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
C:       rgp-1.0.xsd">
C:        <rgp:restore op="report">
C:          <rgp:report>
C:            <rgp:preData>Les données d'enregistrement pré-suppression viennent ici.
C:            XML et du texte libre sont tous deux permis.</rgp:preData>
C:            <rgp:postData>Les données d'enregistrement post-restauration viennent ici.
C:            XML et du texte libre sont tous deux permis.</rgp:postData>
C:            <rgp:delTime>2003-07-10T22:00:00.0Z</rgp:delTime>
C:            <rgp:resTime>2003-07-20T22:00:00.0Z</rgp:resTime>
C:            <rgp:resReason>Erreur de l'enregistrant.</rgp:resReason>
C:            <rgp:statement>Ce registraire n'a pas restauré le nom enregistré afin de disposer des droits d'utiliser ou vendre les droits d'utilisation du nom enregistré pour lui-même ou pour tout tiers.</rgp:statement>
C:            <rgp:statement>Les informations de ce rapport sont vraies pour autant que le sache le registraire, et ce registraire reconnaît que fournir intentionnellement de fausses informations dans ce rapport constituterait une violation matérielle irréparable de l'accord de registre-registraire.</rgp:statement>
C:            <rgp:other>Les informations de soutien viennent ici.</rgp:other>
C:          </rgp:report>
C:        </rgp:restore>
C:      </rgp:update>
C:    </extension>
C:    <clTRID>ABC-12345</clTRID>
C:  </command>
C:</epp>

Lorsque une commande étendue <update> sans rapport de restauration a été traitée avec succès, la réponse EPP est comme décrit dans la transposition de domaine EPP [RFC3731] excepté qu'un élément d'extension est ajouté pour décrire l'état de la période de grâce par suite du traitement de la commande <update>. L'élément d'extension contient un seul élément fils (<upData>) qui lui-même contient un seul élément fils (<rgpStatus>) qui contient un seul attribut "s" dont la valeur DOIT être "pendingRestore" si la demande <restore> a été acceptée.

Exemple de réponse <update> à "restore request" :

S:<?xml version="1.0" encoding="UTF-8" standalone="no"?>
S:<epp xmlns="urn:ietf:params:xml:ns:epp-1.0"
S:     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
S:     xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0
S:     epp-1.0.xsd">
S:  <response>
S:    <result code="1000">
S:      <msg lang="en">Commande réalisée avec succès</msg>
S:    </result>
S:    <extension>
S:      <rgp:upData xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
S:       xsi:schemaLocation="urn:ietf:params:xml:ns:rgp-1.0
S:       rgp-1.0.xsd">
S:        <rgp:rgpStatus s="pendingRestore"/>
S:      </rgp:upData>
S:    </extension>
S:    <trID>
S:      <clTRID>ABC-12345</clTRID>
S:      <svTRID>54321-XYZ</svTRID>
S:    </trID>
S:  </response>
S:</epp>

Lorsque une commande étendue <update> avec un rapport de restauration a été traitée avec succès, la réponse EPP est comme décrit dans la transposition de domaine EPP [RFC3731] sans extension de la période de grâce du registre. L'extension de période de grâce de registre n'est pas exigée parce que l'acceptation du rapport de restauration achève le traitement de la période de grâce de rédemption.

5.	Syntaxe formelle

Une transposition d'objet EPP est spécifiée en notation de schéma XML. La syntaxe formelle présentée ici est une représentation complète du schéma de la transposition de l'objet qui convient pour une validation automatisée des instances XML EPP. Les étiquettes DÉBUT et FIN ne font pas partie du schéma ; elles sont utilisées pour noter le début et la fin du schéma pour les besoins d'enregistrement d'URI.

DÉBUT
<?xml version="1.0" encoding="UTF-8"?>

<schema targetNamespace="urn:ietf:params:xml:ns:rgp-1.0"
        xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0"
        xmlns="http://www.w3.org/2001/XMLSchema"
        elementFormDefault="qualified">

<annotation>
<documentation>  Protocole extensible d'approvisionnement v1.0. Schéma d'extension de nom de domaine pour le traitement de période de grâce de registre.  </documentation>
</annotation>

<!— Éléments fils trouvés dans les commandes EPP.  -->
  <element name="update" type="rgp:updateType"/>

<!-- Éléments fils de la commande <update> pour la période de grâce de rédemption. -->
  <complexType name="updateType">
    <sequence>
      <element name="restore" type="rgp:restoreType"/>
    </sequence>
  </complexType>

  <complexType name="restoreType">
    <sequence>
      <element name="report" type="rgp:reportType"
       minOccurs="0"/>
    </sequence>
    <attribute name="op" type="rgp:rgpOpType" use="required"/>
  </complexType>

<!— De nouvelles opérations de période de grâce de rédemption peuvent être définies par ajout à cette énumération.  -->
  <simpleType name="rgpOpType">
    <restriction base="token">
      <enumeration value="request"/>
      <enumeration value="report"/>
    </restriction>
  </simpleType>

  <complexType name="reportType">
    <sequence>
       <element name="preData" type="rgp:mixedType"/>
      <element name="postData" type="rgp:mixedType"/>
      <element name="delTime" type="dateTime"/>
      <element name="resTime" type="dateTime"/>
      <element name="resReason" type="rgp:reportTextType"/>
     <element name="statement" type="rgp:reportTextType"
       maxOccurs="2"/>
      <element name="other" type="rgp:mixedType"
       minOccurs="0"/>
    </sequence>
  </complexType>

  <complexType name="mixedType">
    <complexContent mixed="true">
      <restriction base="anyType">
        <sequence>
          <any processContents="lax"
           minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
      </restriction>
    </complexContent>
  </complexType>

  <complexType name="reportTextType">
    <complexContent mixed="true">
       <restriction base="anyType">
        <sequence>
          <any processContents="lax"
           minOccurs="0" maxOccurs="unbounded"/>
        </sequence>
        <attribute name="lang" type="language" default="en"/>
      </restriction>
    </complexContent>
  </complexType>

<!—Éléments fils de réponse.  -->
  <element name="infData" type="rgp:respDataType"/>
  <element name="upData" type="rgp:respDataType"/>

<!-- Éléments de réponse.  -->
  <complexType name="respDataType">
    <sequence>
      <element name="rgpStatus" type="rgp:statusType"
       maxOccurs="unbounded"/>
    </sequence>
  </complexType>

<!-- Status est une combinaison d'attributs et d'un message facultatif lisible par l'homme qui peut être exprimé dans des langues autres que l'anglais.  -->
  <complexType name="statusType">
    <simpleContent>
      <extension base="normalizedString">
        <attribute name="s" type="rgp:statusValueType"
         use="required"/>
        <attribute name="lang" type="language" default="en"/>
      </extension>
    </simpleContent>
  </complexType>

  <simpleType name="statusValueType">
    <restriction base="token">
      <enumeration value="addPeriod"/>
      <enumeration value="autoRenewPeriod"/>
      <enumeration value="renewPeriod"/>
      <enumeration value="transferPeriod"/>
      <enumeration value="pendingDelete"/>
      <enumeration value="pendingRestore"/>
      <enumeration value="redemptionPeriod"/>
    </restriction>
  </simpleType>

<!—Fin du schéma. -->
   </schema>
FIN

6.	Considérations d'internationalisation

EPP est représenté en XML, qui assure naturellement la prise en charge des informations de codage en utilisant le jeu de caractères Unicode et ses représentations plus compactes qui incluent UTF-8 [RFC3629]. Les processeurs XML conformes reconnaissent les deux codages UTF-8 et UTF-16 [RFC2781]. Bien que XML inclue des dispositions pour identifier et utiliser d'autres codages de caractères par l'utilisation d'un attribut "codage" dans une déclaration <?xml?>, l'utilisation de l'UTF-8 est RECOMMANDÉE dans les environnements où il existe des incompatibilités de prise en charge d'analyseur de codage.

En tant qu'extensions de la transposition de domaine EPP [RFC3731], les éléments, contenus d'élément, attributs, et valeurs d'attribut décrits dans le présent document DOIVENT hériter des conventions d'internationalisation utilisées pour représenter le domaine de couche supérieure et les structures de cœur de protocole présents dans une instance XML qui comporte cette extension.

7.	Considérations relatives à l'IANA

Le présent document utilise des URN pour décrire les espaces de noms XML et les schémas XML qui se conforment à un mécanisme d'enregistrement décrit dans la [RFC3688]. Deux allocations d'URI ont été demandées et ont été enregistrées par l'IANA.

Demande d'enregistrement pour l'espace de nom de période de grâce d'enregistrement : URI : urn:ietf:params:xml:ns:rgp-1.0Contact d'enregistrement : voir la section "Adresse de l'auteur" du présent document.
XML : Aucun. Les URI d'espace de noms ne représentent pas une spécification XML.

Demande d'enregistrement du schéma XML de période de grâce d'enregistrement : URI : urn:ietf:params:xml:schema:rgp-1.0
Contact d'enregistrement : voir la section "Adresse de l'auteur" du présent document.
XML : voir la section "Syntaxe formelle" du présent document.

8.	Considérations sur la sécurité

Les extensions de transposition décrites dans le présent document ne fournissent aucun service de sécurité au delà de ceux décrits par EPP [RFC3730], la transposition de nom de domaine EPP [RFC3731], et des couches de protocole utilisées par EPP. Les considérations sur la sécurité décrites dans ces autres spécifications s'appliquent aussi à la présente spécification.

Comme avec les autres mises à jour d'objet de domaine, la rédemption d'un objet de domaine supprimé DOIT être restreinte au client parrain tel qu'authentifié en utilisant les mécanismes décrits aux paragraphes 2.9.1.1 et à la Section 7 de la [RFC3730]. Toute tentative de récupération d'un objet de domaine supprimé par un client autre que le client parrain DOIT être rejetée avec un erreur d'autorisation EPP appropriée.

9	Remerciements

L'auteur tient à remercier les personnes suivantes de leurs contributions significatives au développement du présent document : James Gould, Antony Perkov, et Janusz Sienkiewicz.

10.	Références
10.1	Références normatives
[RFC2119]	S. Bradner, "Mots clés à utiliser dans les RFC pour indiquer les niveaux d'exigence", BCP 14, mars 1997.

[RFC3339]	G. Klyne, C. Newman, "La date et l'heure sur l'Internet : horodatages", juillet 2002. (P.S.)

[RFC3688]	M. Mealling, "Registre XML de l'IETF", BCP 81, janvier 2004.

[RFC3730]	S. Hollenbeck, "Protocole d'approvisionnement extensible (EPP)", mars 2004. (Obsolète, voir RFC5730, STD69)

[RFC3731]	S. Hollenbeck, "Protocole d'approvisionnement extensible (EPP) : transposition de nom de domaine", mars 2004. (Obsolète, voir RFC4931) (P.S.)

[REC-xml]	Bray, T., Paoli, J., Sperberg-McQueen, C., and E. Maler, "Extensible Markup Language (XML) 1.0 (2nd ed)", W3C REC-xml, octobre 2000, < http://www.w3.org/TR/REC-xml >.

[xmlschema]	Thompson, H., Beech, D., Maloney, M., and N. Mendelsohn, "XML Schema Part 1: Structures", W3C REC-xmlschema-1, mai 2001, < http://www.w3.org/TR/xmlschema-1/ >.

[schema-2]	Biron, P. and A. Malhotra, "XML Schema Part 2: Datatypes", W3C REC-xmlschema-2, mai 2001, <http://www.w3.org/TR/xmlschema-2/ >.

10.2	Références pour information
[RFC0954]	K. Harrenstien, M. Stahl, E. Feinler, "NICNAME/Qui-est-qui", octobre  1985. (Rendue obsolète par 3912)

[RFC2781]	P. Hoffman et F. Yergeau, "UTF-16, un codage de la norme ISO 10646", février 2000.

[RFC3629]	F. Yergeau, "UTF-8, un format de transformation de la norme ISO 10646", STD 63, novembre  2003.

Adresse de l'auteur

Scott Hollenbeck
VeriSign, Inc.
21345 Ridgetop Circle
Dulles, VA  20166-6503
USA

mél : shollenbeck@verisign.com 

Déclaration complète de droits de reproduction

Copyright (C) The Internet Society (2004).

Le présent document est soumis aux droits, licences et restrictions contenus dans le BCP 78, et à www.rfc-editor.org, et sauf pour ce qui est mentionné ci-après, les auteurs conservent tous leurs droits.

Le présent document et les informations contenues sont fournis sur une base "EN L’ÉTAT" et le contributeur, l’organisation qu’il ou elle représente ou qui le/la finance (s’il en est), la INTERNET SOCIETY et la INTERNET ENGINEERING TASK FORCE déclinent toutes garanties, exprimées ou implicites, y compris mais non limitées à toute garantie que l’utilisation des informations ci-encloses ne violent aucun droit ou aucune garantie implicite de commercialisation ou d’aptitude à un objet particulier.

Propriété intellectuelle
L’IETF ne prend pas position sur la validité et la portée de tout droit de propriété intellectuelle ou autres droits qui pourraient être revendiqués au titre de la mise en œuvre ou l’utilisation de la technologie décrite dans le présent document ou sur la mesure dans laquelle toute licence sur de tels droits pourrait être ou n’être pas disponible ; pas plus qu’elle ne prétend avoir accompli aucun effort pour identifier de tels droits. Les informations sur les procédures de l’ISOC au sujet des droits dans les documents de l’ISOC figurent dans les BCP  78 et BCP 79.

Des copies des dépôts d’IPR faites au secrétariat de l’IETF et toutes assurances de disponibilité de licences, ou le résultat de tentatives faites pour obtenir une licence ou permission générale d’utilisation de tels droits de propriété par ceux qui mettent en œuvre ou utilisent la présente spécification peuvent être obtenues sur le répertoire en ligne des IPR de l’IETF à http://www.ietf.org/ipr .

L’IETF invite toute partie intéressée à porter son attention sur tous copyrights, licences ou applications de licence, ou autres droits de propriété qui pourraient couvrir les technologies qui peuvent être nécessaires pour mettre en œuvre la présente norme. Prière d’adresser les informations à l’IETF à ietf- ipr@ietf.org .

Le financement de la fonction d’édition des RFC est actuellement fourni par l’Internet Society