字面意思("literal")
文字的字面意思放在引号中间,若无特别指定,则该段文字是大小写敏感的。
规则1|规则2(rule1 | rule2)
"|"表示其分隔的元素是可选的,比如,"是|否"要选择‘是’或‘否’。
(规则1 规则2)((rule1 rule2))
在圆括号中的元素表明必然出现。如(元素1(元素2|元素3)元素4)可表明两种意思,即"元素1 元素2 元素4"和"元素1 元素3 元素4"
*规则(*rule)
在元素前加星号"*"表示循环,其完整形式是"<n>*<m>元素",表明元素最少产生<n>次,最多<m>次。缺省是0到无限,例如,"1*元素"意思是至少有一个,而"1*2元素"表明允许有1个或2个。
[规则]([rule])
方括号内是可选元素。如"[元素1 元素2]"与"*1(元素1 元素2)"是一回事。
N 规则(N rule)
表明循环的次数:"<n>(元素)"就是"<n>*<n>(元素)",也就是精确指出<n>取。因而,2DIGIT 就是2位数字, 3ALPHA 就是由三个字母组成字符串。
#规则(#rule)
"#"与"*"类,用于定义元素列表。
完整形式是"<n>#<m>元素"表示至少有<n>个至多有<m>个元素,中间用","或任意数量的空(LWS)来分隔,这将使列表非常方便,如"(*LWS 元素 *( *LWS"," *LWS 元素 ))"就等同于"1#元素"。
空元素在结构中可被任意使用,但不参与元素个数的计数。也就是说,"(元素1),,(元素2)"仅表示2个元素。但在结构中,应至少有一个非空的元素存在。缺省是0到无限,即"#(元素)"表示可取任何数,包括0;而"1#元素"表示至少有1个;而"1#2元素"表示有1个或2个。
;注释(; comment)
分号后面是注释,仅在单行使用。
隐含*LWS(implied *LWS)
本文的语法描述是基于单词的。除非另有指定,否则线性空(LWS)可以在两个邻近符号或分隔符(tspecials)之间任意使用,而不会对整句的意思造成影响。在两个符号之间必须有至少一个分隔符,因为它们也要做为单独的符号来解释。实际上,应用程序在产生HTTP结构时,应当试图遵照"通常方式",因为现在的确有些实现方式在通常方式下无常工作。
********************
在本备忘录中,我们用缩进的小型段落来提供背景和动机。这将使没有参与制定RTSP规范的读者更容易理解RTSP中各部分为什么要以该方式来实现。
3 协议参数
3.1 RTSP版本
同[H3.1]定义,仅用RTSP代替HTTP即可。
********************
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-47669-7.html
另外还有