Re: RFC 5733: street changes with contact:update

Seth Goldman <[email protected]> Fri, 15 Nov 2013 07:19:56 -0500
Newsgroups gmane.ietf.provreg
Message-ID <CAAHh_-J8LBvyUwAcvzBNV8G-kwgDZZs+sPReHPhBxG=ZbjqGHA@mail.gmail.com>
On Fri, Nov 15, 2013 at 6:46 AM, Hollenbeck, Scott <[email protected]
> wrote:

> > -----Original Message-----
> > From: Klaus Malorny [mailto:[email protected]]
> > Sent: Friday, November 15, 2013 4:01 AM
> > To: Hollenbeck, Scott; Seth Goldman
> > Cc: IETF Provreg Mailing List
> > Subject: Re: [provreg] RFC 5733: street changes with contact:update
> >
> > On 14.11.2013 19:48, Hollenbeck, Scott wrote:
> > > I don’t know how one can make a case that sub-element replacement is
> > acceptable.
> > > Section 3.2.5 of RFC 5733 says this (emphasis mine):
> > >
> > > “The EPP <update> command provides a transform operation that allows
> > a client to
> > > modify the attributes of a contact _/object/_.”
> > >
> > > and this:
> > >
> > > “An OPTIONAL <contact:chg> element that contains _/object attribute
> > values to be
> > > changed/_.”
> > >
> > > The <update> is thus focused on _/changing/_ the attributes of the
> > _/object/_.
> > > In the example Klaus provided, the command received is “replace the
> > existing
> > > <contact:postalInfo> attribute with a new instance of
> > <contact:postalInfo>”. The
> > > server failed to replace the two <street> elements with the single
> > element
> > > provided in the <update>. It shouldn’t work that way.
> > >
> > > Scott
> > >
> >
> > Hi Scot, Seth,
> >
> > up to now I regarded the name, the organization and the the whole
> > address block
> > as the replacable units, derived from the associated XML schema. It
> > namely
> > contains two datatypes, "postalInfoType" for the create command and
> > "chgPostalInfoType" for the update command. The first contains the
> > <name> and
> > <addr> elements as mandatory elements, the latter contains them as
> > optional
> > elements. If one would consider the postalInfo itself as the replacable
> > unit, it
> > would not make sense to enforce the name and address on <create>, but
> > would
> > allow to remove them with a following <update> request.
> >
> > So simply asked: What does the following schema-wise legal request do?
> >
> > <contact:update xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
> >    <contact:id>C20131114-01</contact:id>
> >    <contact:chg>
> >      <contact:postalInfo type="int"/>
> >    </contact:chg>
> > </contact:update>
> >
> > Does it clear the international contact? Does it leave the
> > international postal
> > data simply unchanged (aside from being illegal in Scot's view to
> > submit a
> > command that is effectively non-modifying). Does the following command
>
> Go back to what I was trying to say yesterday: <chg> means "replace
> existing with new". So yes, it would change the international postal info
> to "empty".
>
> > <contact:update xmlns:contact="urn:ietf:params:xml:ns:contact-1.0">
> >    <contact:id>C20131114-01</contact:id>
> >    <contact:chg>
> >      <contact:postalInfo type="int">
> >        <contact:org>ACME Solutions</contact:org>
> >      </contact:postalInfo>
> >    </contact:chg>
> > </contact:update>
> >
> > modify the postal info so that it *solely* contains the organization
> > and nothing
> > else afterwards?
>
> Assuming all other schema requirements are met, yes.
>

I believe Klaus's point is that under this interpretation, the schema
allows you to update a postalInfo to a version that would not be allowed in
a create.

I still think your interpretation of the replace semantics is correct. But
the schema is inconsistent, so it's understandable to interpret it
otherwise.


>
> Scott
> _______________________________________________
> provreg mailing list
> [email protected]
> https://www.ietf.org/mailman/listinfo/provreg
>

_______________________________________________
provreg mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/provreg