Re: [salud] New version of the ABNF-syntax
worley@ariadne.com (Dale R. Worley) Fri, 08 March 2013 20:41 UTC
Return-Path: <worley@shell01.TheWorld.com>
X-Original-To: salud@ietfa.amsl.com
Delivered-To: salud@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 84F2121F86EF for <salud@ietfa.amsl.com>; Fri, 8 Mar 2013 12:41:09 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.924
X-Spam-Level:
X-Spam-Status: No, score=-2.924 tagged_above=-999 required=5 tests=[AWL=0.056, BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1, RCVD_IN_SORBS_WEB=0.619]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id h6KjiOwqFHa1 for <salud@ietfa.amsl.com>; Fri, 8 Mar 2013 12:41:08 -0800 (PST)
Received: from TheWorld.com (pcls5.std.com [192.74.137.145]) by ietfa.amsl.com (Postfix) with ESMTP id 92CD121F86BC for <salud@ietf.org>; Fri, 8 Mar 2013 12:41:06 -0800 (PST)
Received: from shell.TheWorld.com (root@shell01.theworld.com [192.74.137.71]) by TheWorld.com (8.14.5/8.14.5) with ESMTP id r28KejX2016415 for <salud@ietf.org>; Fri, 8 Mar 2013 15:40:48 -0500
Received: from shell01.TheWorld.com (localhost.theworld.com [127.0.0.1]) by shell.TheWorld.com (8.13.6/8.12.8) with ESMTP id r28Keh4a037464 for <salud@ietf.org>; Fri, 8 Mar 2013 15:40:45 -0500 (EST)
Received: (from worley@localhost) by shell01.TheWorld.com (8.13.6/8.13.6/Submit) id r28Keh9U037525; Fri, 8 Mar 2013 15:40:43 -0500 (EST)
Date: Fri, 08 Mar 2013 15:40:43 -0500
Message-Id: <201303082040.r28Keh9U037525@shell01.TheWorld.com>
From: worley@ariadne.com
Sender: worley@ariadne.com
To: salud@ietf.org
Subject: Re: [salud] New version of the ABNF-syntax
X-BeenThere: salud@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Sip ALerting for User Devices working group discussion list <salud.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/salud>, <mailto:salud-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/salud>
List-Post: <mailto:salud@ietf.org>
List-Help: <mailto:salud-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/salud>, <mailto:salud-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 08 Mar 2013 20:41:09 -0000
This message is to correct the registration text that I have proposed. Background: The latest syntax, taken from Laura's message of 7 Mar: alert-URN = "urn:alert:" alert-identifier alert-identifier = alert-category ":" alert-indication alert-category = alert-name alert-indication = alert-name *(":" alert-name) alert-name = alert-label / private-name private-name = alert-label "@" provider provider = provider-id ["(" date ")"] provider-id = 1*(domain-label ".") domain-label alert-label = let-dig [ *let-dig-hyp let-dig ] domain-label = let-dig [ *let-dig-hyp let-dig ] let-dig-hyp = let-dig / "-" let-dig = ALPHA / DIGIT date = [CC] YY [ "-" MM ["-" DD] ] CC = DIGIT DIGIT YY = DIGIT DIGIT MM = ( "0" %x31-39 ) / ( "1" %x30-32 ) DD = ( "0" %x31-39 ) / ( %x31-32 DIGIT ) / "30" / "31" ALPHA = %x41-5A / %x61-7A ; A-Z / a-z DIGIT = %x30-39 ; 0-9 My previous proposed registration text, talking about the "meaning" of alert-URNs and how the meanings are defined, was: > The <alert-indication>s are hierarchical identifiers. An > <alert-URN> asserts some fact or feature of the offered SIP > dialog, or some fact or feature of how it should be presented to > a user, or of how it is being presented to a user. Removing an > <alert-identifier> from a URN creates shorter a URN with a less > specific meaning; the set of dialogs to which the longer URN > applies is necessarily a subset of the set of dialogs to which > the shorter URN applies. (If first URN contains only one > <alert-indication>, then the larger set is considered to be the > set of all dialogs.) > > The specific criteria defining the subset to which the longer > URN applies, within the larger set of dialogs, is considered to > be the meaning of the <alert-indication>. This meaning is > relative to and depends upon the preceding <alert-category> and > <alert-indication>s (if any). The meanings of two > <alert-indication>s that are textually the same but are > preceded by different <alert-category>s or <alert-indication>s > have no necessary connection. (An <alert-category> considered > alone has no meaning.) > > The entity owning <provider> defines the meaning of a <private-name> > that is used as an <alert-indication>. > > The entity owning the <provider> within a <private-name> (in > either an <alert-category> or an <alert-indication>) defines the > meaning of each <alert-indication> which is a <label> that > follows that <private-name> and that precedes the next > <alert-indication> which is a <private-name> (if any). > > The meaning of all other <alert-indication>s is defined by > standardization. Discussion: There are a number of errors in the above paragraphs. In particular, I've used <alert-indication> incorrectly in many places. The following is a rewrite to express what I intended. To make this work, I have to introduce a new nonterminal into the syntax, <alert-ind>, which is an <alert-name> that is part of an <alert-indication>: alert-URN = "urn:alert:" alert-identifier alert-identifier = alert-category ":" alert-indication alert-category = alert-name alert-indication = alert-ind *(":" alert-ind) alert-ind = alert-name alert-name = alert-label / private-name This is my proposed registration text, corrected to match the syntax given above (and to fix some minor problems): The <alert-URN>s are hierarchical identifiers. An <alert-URN> asserts some fact or feature of the offered SIP dialog, or some fact or feature of how it should be presented to a user, or of how it is being presented to a user. Removing an <alert-ind> from the end of an <alert-URN> (which has more than one <alert-ind>) creates a shorter <alert-URN> with a less specific meaning; the set of dialogs to which the longer <alert-URN> applies is necessarily a subset of the set of dialogs to which the shorter <alert-URN> applies. (If the starting <alert-URN> contains only one <alert-ind>, and thus the <alert-ind> cannot be removed to make a shorter <alert-URN>, we can consider the set of dialogs to which the <alert-URN> applies to be a subset of the set of all dialogs.) The specific criteria defining the subset to which the longer <alert-URN> applies, within the larger set of dialogs, is considered to be the meaning of the final <alert-ind>. This meaning is relative to and depends upon the preceding <alert-category> and <alert-ind>s (if any). The meanings of two <alert-ind>s that are textually the same but are preceded by different <alert-category>s or <alert-ind>s have no necessary connection. (An <alert-category> considered alone has no meaning.) The entity owning the <provider> within a <private-name> specifies the meaning of that <private-name> when it is used as an <alert-ind>. The entity owning the <provider> within a <private-name> (in either an <alert-category> or an <alert-ind>) specifies the meaning of each <alert-ind> which is an <alert-label> that follows that <private-name> and that precedes the next <alert-ind> which is a <private-name> (if any). The meaning of all other <alert-ind>s (i.e., those that are not <private-name>s and do not follow a <private-name>) is defined by standardization. > Laura Liess writes: > > My problem here is with the usage of <alert-identifier> and > <alert-indication> in the text above and in the rule 5 d). > ... > and <alert-identifier> and <alert-indication> are the full chains > including or after the <alert-category>. > > The text above and the rule 5 d) talk about <alert-identifier> and > <alert-indication> as <labels> or subchains. Yes, the earlier versions of these paragraphs and rule 5d) used <alert-identifier> incorrectly. The revised version of these paragraphs uses <alert-ind>, and should be syntactically correct now. Of course, these paragraphs are the full version of rule 5d). > Laura Liess writes: > > I am not sure this is correct. Are <alert-identifier>s with more than > one <private-name>s a problem? If we wish to allow <alert-URNs> with more than one <private-name>, it is tricky to specify which organization is responsible for defining the significance of each part of the <alert-URN>. I think we do want to allow <alert-URNs> with more than one <private-name>. Let me revisit an example that is in http://www.ietf.org/mail-archive/web/salud/current/msg00368.html There is a standard <alert-URN>: urn:alert:source:internal Suppose example.com wants to define a URN to describe an internal source that is "secure" in some way: urn:alert:source:internal:secure@example.com Now let us suppose that the US Army decides to augment a PBX purchased from example.com to create a "top-secret" subcategory of "secure@example.com": urn:alert:source:internal:secure@example.com:top-secret@army.mil Again let us suppose that the US Army decides to define an even more specialized category of "top-secret": urn:alert:source:internal:secure@example.com:top-secret@army.mil:special 1) The set of dialogs to which <urn:alert:source:internal> can be applied is defined by the standard, because of: The meaning of all other <alert-ind>s (i.e., those that are not <private-name>s and do not follow a <private-name>) is defined by standardization. 2) The set of dialogs to which <urn:alert:source:internal:secure@example.com> can be applied is a subset of the set of dialogs to which <urn:alert:source:internal> can be applied. The former set is defined by example.com, because of: The entity owning the <provider> within a <private-name> specifies the meaning of that <private-name> when it is used as an <alert-ind>. 3) The set of dialogs to which <urn:alert:source:internal:secure@example.com:top-secret@army.mil> can be applied is a subset of the set of dialogs to which <urn:alert:source:internal:secure@example.com> can be applied. The former set is defined by army.mil, for the same reason as in (2). 4) The set of dialogs to which <urn:alert:source:internal:secure@example.com:top-secret@army.mil:special> can be applied is a subset of the set of dialogs to which <urn:alert:source:internal:secure@example.com:top-secret@army.mil> can be applied. The former set is defined by army.mil, because of: The entity owning the <provider> within a <private-name> (in either an <alert-category> or an <alert-ind>) specifies the meaning of each <alert-ind> which is an <alert-label> that follows that <private-name> and that precedes the next <alert-ind> which is a <private-name> (if any). This sort of analysis lets us separate the "meanings" of "internal", "secure@example.com", "top-secret@army.mil", and "special" and assign which organization is responsible for defining each meaning. But at the same time, the meaning of each <alert-ind> is constrained by the meanings of the preceding <alert-ind>s. > Laura Liess writes: > > Additionally, I found out that we use the word "label" in the section 6.1 > in a way which would not be consistent with the syntax above. > > " Alert URN identifiers are identified by <label>s managed by IANA, > according to the processes outlined in [RFC5226] in a new registry > called "Alert URN Labels". Thus, creating a new Alert-Info URN > identifier requires IANA action. The policy for adding a new alert > category is 'Standards Action'. (This document defines the alert > categories 'service', 'source', 'priority', 'duration', 'delay' and > 'locale'. ) The policy for assigning <label>s to <alert-indication>s > and the rules to combine them may differ for each <alert-category> > and MUST be defined by the document describing the corresponding > alert category. " I believe that wherever "label" appears in that paragraph, we intend <alert-ind> (using the new terminology). > Laura Liess writes: > > But why do you need the components of an <alert-indication>? > Currently, IMO they have no meaning and must be not managed as > individuals, only whole <alert-indicators> must be managed. The difficulty is that we want to allow private extensions to standardized <alert-URN>s. In order to do that, we have to have a system for different organizations to define the meaning of different *parts* of an <alert-URN>. I believe that we already have such a system working, the only problem is to explain it clearly in the URN registration. The text I have written above is a draft of such an explanation. The text in sections 8.1 ("Priority Rules") and 9.1 ("Algorithm Description") probably have to be corrected to match the current names of the nonterminals. Dale
- [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax DRAGE, Keith (Keith)
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax DRAGE, Keith (Keith)
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax DRAGE, Keith (Keith)
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- [salud] Fwd: New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Paul Kyzivat
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Laura Liess
- Re: [salud] New version of the ABNF-syntax Dale R. Worley
- Re: [salud] New version of the ABNF-syntax Laura Liess