Re: [eppext] New Version Notification for draft-brown-epp-fees-06.txt

Roger D Carney <> Fri, 04 December 2015 16:20 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id B35161A8978 for <>; Fri, 4 Dec 2015 08:20:45 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.9
X-Spam-Status: No, score=-1.9 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id CDhUkAiuL1lH for <>; Fri, 4 Dec 2015 08:20:34 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 81C2C1A896E for <>; Fri, 4 Dec 2015 08:20:34 -0800 (PST)
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.1.331.20; Fri, 4 Dec 2015 16:20:30 +0000
Received: from ([]) by ([]) with mapi id 15.01.0331.023; Fri, 4 Dec 2015 16:20:30 +0000
From: Roger D Carney <>
To: "" <>
Thread-Topic: [eppext] New Version Notification for draft-brown-epp-fees-06.txt
Thread-Index: AdEurl7l8k4P+Bs8RSOCO/RlohZXgQ==
Date: Fri, 04 Dec 2015 16:20:30 +0000
Message-ID: <>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
authentication-results: spf=none (sender IP is );
x-originating-ip: []
x-microsoft-exchange-diagnostics: 1; BY2PR0201MB0775; 5:/zEnmOxBIQvxY+QEeKVuJvlea0Bku+X7Kl0gViz2DHheoVA0t0iwYvn9gXAWh5HeS84i2ySRYZtYBnSMyMAQSFvuu4PfAlbpPez37v44GUlj+tjD869J5VpX75bBZ/ycbvELcCQNVXwoj2tyIVCudw==; 24:jSvdw14TNTbVfvcS3VkvX4R2VwSrlOwYgePKorcLwY9Eu87F061uggg9jshrDsg63WWL5iu8FtvN57DiNvjE0K8ho9ZHOEDAHVCef4i/dHA=
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0201MB0775;
x-microsoft-antispam-prvs: <>
x-exchange-antispam-report-test: UriScan:(108003899814671);
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(520078)(5005006)(3002001)(10201501046); SRVR:BY2PR0201MB0775; BCL:0; PCL:0; RULEID:; SRVR:BY2PR0201MB0775;
x-forefront-prvs: 07807C55DC
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(48184003)(24454002)(377454003)(199003)(377424004)(189002)(2351001)(450100001)(76576001)(5003600100002)(1096002)(102836003)(2501003)(16236675004)(6116002)(10710500006)(5002640100001)(19580395003)(40100003)(19300405004)(3846002)(105586002)(790700001)(17760045003)(81156007)(66066001)(586003)(10400500002)(2900100001)(11100500001)(19580405001)(1220700001)(101416001)(106356001)(230783001)(74316001)(122556002)(5004730100002)(19617315012)(15975445007)(5008740100001)(18206015028)(99286002)(14971765001)(77096005)(99936001)(86362001)(97736004)(7110500001)(87936001)(110136002)(19627595001)(92566002)(33656002)(16601075003)(189998001)(5001960100002)(50986999)(19625215002)(107886002)(2420400006)(54356999)(7099028)(559001)(579004); DIR:OUT; SFP:1102; SCL:1; SRVR:BY2PR0201MB0775;; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
received-spf: None ( does not designate permitted sender hosts)
spamdiagnosticoutput: 1:23
spamdiagnosticmetadata: NSPM
Content-Type: multipart/related; boundary="_004_BY2PR0201MB0773743330736FD94E5F4A1CB10C0BY2PR0201MB0773_"; type="multipart/alternative"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Dec 2015 16:20:30.5514 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: d5f1622b-14a3-45a6-b069-003f8dc4851f
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0201MB0775
Archived-At: <>
Subject: Re: [eppext] New Version Notification for draft-brown-epp-fees-06.txt
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: EPPEXT <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 04 Dec 2015 16:20:45 -0000

Good Morning,

Interesting idea Jim. Though not completely disagreeing with your premise that the check and fee have different purposes, let me play devil’s advocate here with some knowledge on the separate claims check in mind as well. Different individual purposes maybe but when looking at the varied data flow scenarios (how is this data used and presented to the end customer), I believe most clients would see the purposes aligned well.

I have heard from many people with the same question about claims: “Why do we have to make two calls to see if a domain has a claim associated to it, can’t they just tell us in the check?”

I am guessing the same question will come up if it is a separate call for fee information as well. People may make the argument that the additional claims check is only needed for a specific period of time (except for those doing indefinite claims). I think everyone would agree this same argument does not apply for fees and as we see more and more varied wholesale models I think an integrated call is more natural and becomes more necessary.

Again, as these concepts align well from a flow perspective and as the probability of expanding wholesaling models increases, I believe most clients would prefer (demand) one call over multiple calls.


From: EppExt [] On Behalf Of Gould, James
Sent: Friday, December 04, 2015 7:37 AM
To: Gavin Brown
Subject: Re: [eppext] New Version Notification for draft-brown-epp-fees-06.txt


In reviewing draft-brown-epp-fees-06, I have the following feedback:

  1.  The fee check extension is really not a good fit for extension of the available check.  They have different purposes and there is really no relationship between the two, where the availability check can include a completely different set of domain names from getting the fee extension.  My recommendation is to separate the two and define the fee check as a new verb similar to the claims check in draft-ietf-eppext-launchphase.  Another option is truly extend the object identifiers (e.g. domain:names) in the check command with a set of fee attributes to get the fee information for.  Have the extension only specify the command and the optional currency and fee that applies to all of the names in the availability check command.  The response would include the same list of object identifiers in the extension, but it would be a one-to-one relationship.  In this way there is no need for the “objURI” attribute, the <fee:objID> element, and <fee:objID> “element” attribute in the check command, since the object and identifying element is already defined by the availability check object that is being extended.
  2.  What should be returned when the client passes invalid data in the check command for the the “objURI” attribute (e.g. “urn:made:up:uri”), the <fee:objID> element (e.g. invalid domain name), the “element” attribute of <fee:objID> (e.g. “madeup”), the <fee:currency> element (e.g. “MUP”), and the <fee:period> element (e.g. “99" when max is “10”)?  An invalid <fee:command> is covered by not returning the fee information, but it’s unclear whether the server should return an error or not return the fee information for other invalid data.  To follow the semantics of a check command and response, my recommendation is to add an “avail” attribute to either <fee:cd> or <fee:objID> to explicitly indicate that the fee information is available along with an optional <fee:reason> to indicate the reason that the fee information is not available.  The reason the fee information is not available for a particular object could be due to the passing of invalid input in the check command <fee:object> element.  If you went with a single set of fee elements in the check command that is applied to all of the object identifiers in the availability check, then an invalid fee element could result in a failure of the check command itself instead of being an error (e.g. not available) on a per domain basis.
  3.  Since the check response supports returning a “0.00” value to indicate no fee, doesn’t make sense to do the same with all transform command responses?




James Gould
Distinguished Engineer

12061 Bluemont Way
Reston, VA 20190<>

On Nov 4, 2015, at 5:58 PM, Gavin Brown <<>> wrote:

Changes from 05 to 06:

  1.  The specification is now object-agnostic, but works with RFC5731
      [RFC5731] domains by default.

  2.  Renamed the <fee:domain> element to <fee:object>.  Added the
      "objURI" attribute.

  3.  Removed the default value for the "refundable" attribute of
      <fee:fee> elements, and added text about how clients should
      handle such cases.  Added similar text to the documentation of
      the "grace-period" attribute.

  4.  Removed references to the defunct <info> command syntax.

  5.  "MUST" requirements regarding documentation have been changed to

  6.  Created separate "Correlation between Refundability and Grace
      Periods" section describing how the "refundable" and "grace-
      period" attributes work together.

Feedback welcome as always!

-------- Forwarded Message --------
Subject: New Version Notification for draft-brown-epp-fees-06.txt
Date: Wed, 04 Nov 2015 14:52:30 -0800
To: Gavin Brown <<>>, Jothan Frakes

A new version of I-D, draft-brown-epp-fees-06.txt
has been successfully submitted by Gavin Brown and posted to the
IETF repository.

Name: draft-brown-epp-fees
Revision: 06
Title: Registry Fee Extension for the Extensible Provisioning Protocol
Document date: 2015-11-04
Group: Individual Submission
Pages: 36

  This document describes an Extensible Provisioning Protocol (EPP)
  extension mapping for registry fees.

Please note that it may take a couple of minutes from the time of submission
until the htmlized version and diff are available at<>.

The IETF Secretariat

Gavin Brown
Chief Technology Officer
CentralNic Group plc (LSE:CNIC)
Innovative, Reliable and Flexible Registry Services
for ccTLD, gTLD and private domain name registries

CentralNic Group plc is a company registered in England and Wales with
company number 8576358. Registered Offices: 35-39 Moorgate, London,

EppExt mailing list<>