Subject: Re: [Simple] WGLC : draft-ietf-simple-xcap-09.txt

From: Jonathan Rosenberg <[email-masked]>
Date: Thu, 04 May 2006 12:02:28 -0400

Thanks for your comments, and apologies for the very long delay in
responding. Responses inline:

Jeroen van Bemmel wrote:

> Two comments:
>  
> 1 - ambiguity in ABNF
>  
>    AUID             =  global-auid / vendor-auid
>    global-auid      =  auid
>    auid             =  1*pchar
>    vendor-auid      =  rev-hostname "." auid
>    rev-hostname     =  toplabel *( "." domainlabel  )
>    domainlabel      =  alphanum / alphanum *( alphanum / "-" ) alphanum
>    toplabel         =  ALPHA / ALPHA *( alphanum / "-" ) alphanum
>  
>  From RFC3986:
>   pchar         = unreserved / pct-encoded / sub-delims / ":" / "@"
>   unreserved    = ALPHA / DIGIT / "-" / "." / "_" / "~"
>   sub-delims    = "!" / "$" / "&" / "'" / "(" / ")"
>                  / "*" / "+" / "," / ";" / "="
>  
> The characters allowed in an AUID should be considered more carefully. 
> Currently, '.' is allowed which is ambiguous (i.e. which part belongs to 
> 'rev-hostname' and which part to the auid).

Good point. I've redefined auid to omit it, and commented that the 
grammar for auid is equal to pchar minus the '.'

> 
> 2 - normative reference [2] refers to an older version of XML schema, 
> latest is http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/

Fixed.

Thanks for your comments,
Jonathan R.

-- 
Jonathan D. Rosenberg, Ph.D.                   600 Lanidex Plaza
Cisco Fellow                                   Parsippany, NJ 07054-2711
Cisco Systems
[email-masked]                              FAX:   (973) 952-5050
http://www.jdrosen.net                         PHONE: (973) 952-5000
http://www.cisco.com

_______________________________________________
Simple mailing list
[email-masked]
https://www1.ietf.org/mailman/listinfo/simple

---

From: Jonathan Rosenberg <[email-masked]>
Date: Thu, 04 May 2006 13:42:32 -0400

[email-masked] wrote:

> Hi,
> 
> in my understanding the correct XCAP ROOT is the URI of the form
> "http://xcap.example.com/services".

In the examples, yes. However, as was pointed out in other mails, this
form is not consistent with the guidelines in the specification.

> 
> In the begining of section 6 there is written exatly this:
> 
>   "The URI is constructed by concatenating the
>    XCAP root with the document selector with the node selector separator
>    with a percent-encoded form of the node selector. ..."
> 
> Then the description of document selector from section 6.2 states:
> 
>   "The first path segment MUST be the XCAP AUID."
> 
> 
>>From these two fragments it concludes that if xcap root does not contain
> "services" then this fragment cannot be in the xcap uri at all. However,
> I must agree that the xcap specification should mention the example of
> xcap root in uniform way.

Right - it now uniformly follows the recommendations on construction of
these things - no subdirectories (and thus, no "/services") and
filenames called index.

-Jonathan R.

---

From: Jonathan Rosenberg <[email-masked]>
Date: Thu, 04 May 2006 13:46:45 -0400

Sure, but we have this problem in SIP too. The grammar for SIP extension 
headers is itself a match for every header defined in the spec. Its the 
job of the extensions themselves to define formats that are unambiguous. 
Consequently, I don't think we should add this 'x-' prefix to every 
future extension - its not needed.

Thanks,
Jonathan R.

Jeroen van Bemmel wrote:

> Another ABNF related comment: the "extension-selector" production in 
> section 6.3 is ambiguous, it is a superset of both "attribute-selector" 
> and "namespace-selector":
>  
>    node-selector          = element-selector ["/" terminal-selector]
>    terminal-selector      = attribute-selector / namespace-selector /
>                             extension-selector
>    element-selector       = step *( "/" step)
>    step                   = by-name / by-pos / by-attr / by-pos-attr /
>                             extension-selector
>    by-name                = NameorAny
>    by-pos                 = NameorAny "[" position "]"
>    position               = 1*DIGIT
>    attr-test              = ( "@" att-name "=" <"> att-value <"> ) /
>                             ( "@" att-name "=" <'> att-value <'> )
>    by-attr                = NameorAny "[" attr-test "]"
>    by-pos-attr            = NameorAny "[" position "]" "[" attr-test "]"
>    NameorAny              = QName / "*"   ; QName from XML Namespaces
>    att-name               = QName
>    att-value              = AttValue      ; from XML specification
>    attribute-selector     = "@" att-name
>    namespace-selector     = "namespace::*"
>    extension-selector     = 1*( %x00-2e / %x30-ff )  ; anything but "/"
> One solution would be to change it into:
>  
> extension-selector     = "x-" 1*( %x00-2e / %x30-ff )  ; anything but "/"
> Regards,
>  
> Jeroen
> 
> 
> ------------------------------------------------------------------------
>