⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc2629.txt

📁 283个中文RFC文档
💻 TXT
📖 第 1 页 / 共 3 页
字号:
组织:中国互动出版网(http://www.china-pub.com/)
RFC文档中文翻译计划(http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail:ouyang@china-pub.com
译者:吴晓波(why_wxb    why_wxb@sina.com)
译文发布时间:2001-6-15
版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用途自由转载,但必须保留本文档
的翻译及版权信息。


Network Working Group                                            M. Rose
Request for Comments: 2629                        Invisible Worlds, Inc.
Category: Informational                                        June 1999



用XML 写I-Ds 和 RFC文档
(RFC2629 Writing I-Ds and RFCs using XML)

关于本文档资料

本文档资料提供了一些关于网络通信的信息,没有详尽的描述某一种特定的标准。本文档资料的
可扩展性是无限的。

版权声明
   Copyright (C) The Internet Society (1999).  All Rights Reserved.

概述

本文档资料描述了使用可扩展标志语言(XML)为格式来描述I-Ds 以及RFC系列文档。

内容一览
   1.      简介 . . . . . . . . . . . . . . . . . . . . . . .  2
   2.      使用DTD描写I-Ds和RFCs . . . . . . . . . . . . .   2
   2.1     XML 基础. . . . . . . . . . . . . . . . . . . . . .  2
   2.2     开头(Front matter) . . . . . . . . . . . . . . . ..  4
   2.2.1   title元素  . . . . . . . . . . . . . . . . . .. . .  5
   2.2.2   author元素 . . . . . . . . . . . . . . . . . . . . . 5
   2.2.3   gate元素 . . . . . . . . . . . . . . . . . . . . . . 5
   2.2.4   Meta Data 元素 . . . . . . . . . . . . .  . . . . . . 5
   2.2.5   abstract元素 . . . . . . . . . . . . . . . . . . . . 6
   2.2.6   note 元素 . . . . . . . . . . . . . . . . . . . . . . 6
   2.2.7   状态, 版权声明, 内容列表  . . . . . . . . . . . . . . 6
   2.2.7.1 顺应 RFC 2026  . . . . . . . . . . . . . . . . . . .  6
   2.2.8   初始. .  . . . . . . . . . . . . . . . . . . . . . . .7
   2.3     中间层 . . . . . . . . . . . . . . . . . . . . . . . 8
   2.3.1   section元素  . . . . . . . . . . . . . . . . . . . . 8
   2.3.1.1 t 元素  . . . . . . . . . . . . . . . . . . . . . . .8
   2.3.1.2 list 元素 . . . . . . . . . . . . . . . . . . . . . .9
   2.3.1.3 figure 元素 . . . . . . . . . . . . . . . . . . . . .9
   2.3.1.4 xref 元素 . . . . . . . . . . . . . . . . . . . . . 10
   2.3.1.5 eref 元素 . . . . . . . . . . . . . . . . . . . . . 11
   2.3.1.6 iref 元素 . . . . . . . . . . . . . . . . . . . . . 11
   2.3.1.7 vspace 元素 . . . . . . . . . . . . . . . . . . . . 11
   2.4     附属资料  . . . . . . . . . . . . . . . . . . . .  . 12
   2.4.1   参考元素 . . . . . . . . . . . . . . . . . . . . . . 12
   2.4.2   附录 . . . . . . . . . . . . . . . . . . . . . . . . 13
   2.4.3   版权情况 . . . . . . . . . . . . . . . . . . . . . .13
   3.      处理XML源文件 . . . . . . . . . . . . . . . . . .. 13
   3.1     编辑  . . . . . . . . . . . . . . . . . . . . . . .  13
   3.1.1   检查 . . . . . . . . . . . . . . . . . . . . . . . . 14
   3.2     转换成文本格式  . . . . . . . . . . . . . . .. . . . 14
   3.3     转换成HTML 格式 . . . . . . . . . . . . . . . . . .  14
   3.4     视图 . . . . . . . . . . . . . . . . . . . . . . . . 14
   3.5     查找  . . . . . . . . . . . . . . . . . . . . . . . .14
   4.      安全问题  . . . . . . . . . . . . . . . . . . . . . . 4
           参考 . . . . . . . . . . . . . . . . . . . . . . . . 15
           作者地址 . . . . . . . . . . . . . . . . . . . . . . 15
   A.      rfc 元素  . . . . . . . . . . . . . . . . . . . . . .15
   B.      RFC DTD  . . . . . . . . . . . . . . . . . . . . . . 16
   C.      其他 . . . . . . . . . . . . . . . . . . . . . . . . 19
   索引  . . . . . . . . . . . . . . . . . . . . . . . . . . .   20
  全部版权声明 . . . . . . . . . . . . . . . . . . . . . . . . . 21

1. 简介

本文档资料描述如何用可扩展标志语言[1] (XML)写I-D 和RFC文挡。本文档有三个目标:

1.	对于类似RFC的结构简单的文档,使用简单的XML DTD(文档类型定义)就能满足处理要求,同时
也允许有复杂的描述性特征.

2.	描述可处理XML源文件的软件,包括一些工具,可以产生符合RFC 2223 [2], HTML格式等的文档.

   3.  对前两个目标进行一些概念上的验证(本文档用上述DTD描述且使用上述软件).

   讨论使用XML作为RFC-like 文档的源格式的政治上的分支超出了本规章的范围.   我们宁愿说XML
只是在纯文本的基础上加上最少的变化:
 
   o  允许使用所熟悉的编辑器编辑传统的类似 RFC 文档文本;

   o  在已有的软件环境中需要加入一些东西,虽然很少;

   o  允许使用有组织的或无组织的机制进行信息的组织,查询和抽取.

2. 使用 DTD 写I-Ds 和 RFC

   本章节没有提供对XML的正式的或全面的描述.而只是讨论了使用文档类型申明(DTD)写类似RFC 文
档所需要的内容.

   如果你已经对XML很熟悉,那就跳到附录B直接去看DTD.

2.1 XML基础

   写XML时得规则很少,语法也很简单.有以下五点需要注意:

1.	一个 "元素"通常指一个开始标签, 一个结束标签, 及之间的所有字段,例: 
"<example>文本  与/或 嵌套元素</example>"

   2.  一个"empty 元素" 包含了开始标签和结束标签,如"<empty/>". 在 HTML中没有这种用法.

   3.  "attribute"是元素的一部分. 如果有,它们出现在开始标签中,如 "<example name='值'>".当
然,它们也可以出现在空元素中,如 "<empty name='值'/>".

   4.  "entity"是一段以"&"开始的宏文本,不要感到麻烦,只有需要在文本中要有 "&"或 "<"符号时
才会用到它.

   5.  "token" 是字符型字段.以字母或下划线("_")开头. 后面的字符只能是字母,数字, 下划线或者
句点(".").

首先,你的XML源程序应从XML申明开始,接着是DTD引用,然后是"rfc" 元素.

       <?xml version="1.0"?>
       <!DOCTYPE rfc SYSTEM "rfc2629.dtd">
       <rfc>
           ...
       </rfc>

不用去管前两行—申明和引用—只要把它们看成是透明的就行了. "</rfc>"标签之后不能再出现
其他任何东西.

其次,保证所有的元素是完全匹配且是正确嵌套的.

一个完全匹配的元素是以"<example>"开始,最终以"</example>"结束.(空元素总是匹配的)
元素应正确嵌套以免出现交叉重复.
   例如,

       <outer>
           ...
           <inner>
               ...
           </inner>
           ...
       </outer>

   是正确嵌套的.

   但是,

       <outer>
           ...
           <inner>
               ...
           </outer>
           ...
       </inner>

 元素出现交叉, 所以元素没有正确嵌套.

第三,永远不要在文档里使用 "<" 或 "&" 等. 而应该分别使用 "&lt;" 或 "&amp;".

第四, XML中有两种引用特征符号, '单引号' 和 "引号". 要保证所有的属性值都是被引用的.例:
   "<example name='value'>", 如果属性值包含其中一种引用特征符号,那就使用另一种引用特征符号
把属性值引用进来,如, "<example name='"'>", 如果属性值里两种引用特征符号都含有的话, 那就使
用其中的一种来引用属性值,并将属性值中的这种符号用'&apos;'(单引号)  或 "&quot;" (引号)来代
替,如:
 "<example name='"&apos;"'>".

如果你想在源文件中加入注释,其语法如下:
           <!-- 如果你愿意,
            注释可以为多行-->

最后请注意, XML 是区分大小写的.

2.2 开头部分

紧跟在"<rfc>"标签后的是 "front" 元素:
       <?xml version="1.0"?>
       <!DOCTYPE rfc SYSTEM "rfc2629.dtd">
       <rfc>
           <front>
               <title ...>
               <author ...>
               <author ...>
               <date ...>
               <area ...>
               <workgroup ...>
               <keyword ...>
               <keyword ...>
               <abstract ...>
               <note ...>
           </front>
           ...
       </rfc>

   (请注意在所有的例子中的文字缩进只是为了解释得更清楚.)

   "front" 元素包含有一个 "title" 元素, 一个或多个 "author" 元素, 一个 "date" 元素, 一个或
多个可选的 "area" 元素, , 一个或多个可选的"workgroup" 元素, 一个或多个可选的 "keyword" 元
素, 一个可选的"abstract" 元素. 还有, 一个或多个可选的"note" 元素.

2.2.1 title 元素
   "title" 元素标识了文档的标题. 因为标题是在文档的开头部分(符合[2]的格式), 如果标题长度超
过 42 个字符, 就需要提供一个简称,如,

       <title abbrev="Much Ado about Nothing">
       The IETF's Discussion on "Source Format of RFC documents"
       </title>

2.2.2 author 元素
   每一个 "author" 元素标识了一个文档的作者.因为一篇文档可能不只一个作者,所以可以出现一个
以上的"author" 元素. 如果作者是人名,则"<author>" 标签内必须要有三个属性: "initials", 
"surname",和 "fullname", 如,
       <author initials="M.T." surname="Rose"
               fullname="Marshall T. Rose">

   "author" 元素本身包含了一个"organization" 元素和一个可选的 "address" 元素.

   "organization" 元素类似与 "title" 元素, 表示一串很长的组织名,其中用"abbrev" 属性表示它
的简称,如,
       <organization abbrev="ISI">
           USC/Information Sciences Institute
       </organization>

"address" 元素包含一个可选的"postal" 元素, 一个可选的 "phone" 元素, 一个可选的
"facsimile" 元素, 一个可选的 "email" 元素, 和一个可选的 "uri" 元素.
    "postal" 元素包括一个或多个"street" 元素,后面跟着以下元素的组合: "city", "region" (国
家或省份), "code"(缩略号或邮政编码), 和"country" 元素,如:

       <postal>
           <street>660 York Street</street>
           <street>M/S 40</street>
           <city>San Francisco</city> <region>CA</region>
           <code>94110</code>
           <country>US</country>
       </postal>
这里的弹性机制兼容了不同国家不同格式的邮政地址.但要注意,这里虽然没有提及 "city", 
"region", "code", 和 "country" 元素的顺序, 大多数情况下每一个都会出现. 然而这些元素在XML
应用程序处理过程中不能重复出现. (如, 显示程序应能保持包含在这些元素的信息的顺序). 

最后, "country" 元素的内容应该是符合ISO 3166的双字节码.
   "phone", "facsimile", "email", 及"uri" 元素都只能出现一次,如:

       <phone>+1 415 695 3975</phone>
       <email>mrose@not.invisible.net</email>
       <uri>http://invisible.net/</uri>

2.2.3 date 元素
   "date" 元素标识了文档的出版时间,它包括一个"month" 和一个"year", 如:
       <date month="February" year="1999" />
   "date" 元素也有一个可选的属性.
2.2.4 Meta Data 元素s
       "front" 元素也可能包含 meta data – 此元素间的内容不会在印刷版的文档中显示出来.
   一篇文档有一个或多个可选的 "area", "workgroup" 和 "keyword" 元素,如:
       <area>General</area>
       <workgroup>RFC Beautification Working Group</workgroup>
       <keyword>RFC</keyword>
       <keyword>Request for Comments</keyword>
       <keyword>I-D</keyword>
       <keyword>Internet-Draft</keyword>
       <keyword>XML</keyword>
       <keyword>Extensible Markup Language</keyword>

"area" 元素标识了文档的大致范畴, (如, "Applications", "General", "Internet", 
"Management", "Operations", "Routing", "Security", "Transport", 或 "User"中的一个), 而
"workgroup" 元素标识了制订本文档的IETF工作组,"keyword" 元素标识了一些有用的搜索条件.

2.2.5 abstract 元素

一篇文档可能有一个 "abstract" 元素,它包含了一个或多个 "t" 元素(见2.3.1.1).一般地说,只
有一个"t" 元素会出现,如,
       <abstract>
           <t>This memo presents a technique for using XML
           (Extensible Markup Language) as a source format
           for documents in the Internet-Drafts (I-Ds) and
           Request for Comments (RFC) series.</t>
       </abstract>

2.2.6 note 元素

    一篇文档可以有一个或多个 "note" 元素, 其中每一个元素可以包含一个或多个"t" 元素 (见 
2.3.1.1). 其中有一个必须的"title"属性.一般地说, "note" 元素包含从IESG来的文本, 例:

       <note title="IESG Note">
           <t>The IESG has something to say.</t>
       </note>

2.2.7 状态, 版权申明,目录

   注意到有关文档状态, 版权申明,或目录等内容并没有包含在文档中 –当XML应用程序创建文本文
档或HTML文档时,它会被自动插入到XML应用程序中.

2.2.7.1 与 RFC 2026相一致

如果提出了Internet草案,则 "ipr"必须在文件开始处加入到"<rfc>" 标签中.该属性的值必须为
以下之一:
   full2026: 说明此文档是完全顺应 RFC 2026第10章规定的;

   noDerivativeWorks2026: 说明此文档是完全顺应 RFC 2026第10章规定,但没有经过授权不能有相
关派生工作.
      或:

   none: 说明此文档不是顺应 RFC 2026第10章规定的,除了作为Internet草案出版之外,作者不提供
予其它任何权利.
   后面这种情况, XML应用程序在创建过程中不会自动插入版权申明.

   更多详细情况请参阅 [3].

    最后,如果该Internet草案是被提交到自动处理过程中, 则 " docName "必须在文件开始处加入到
"<rfc>" 标签中. 该属性的值包含与Internet草案关联文档 (不是文件)的名称.如,

       <rfc ipr="full" docName="draft-mrose-writing-rfcs-01">
           ...
       </rfc>

2.2.8 开始中的一切
   现在, 把它们连在一起,我们有下例,

       <front>
           <title>Writing I-Ds and RFCs using XML</title>

           <author initials="M.T." surname="Rose"
                   fullname="Marshall T. Rose">
               <organization>Invisible Worlds, Inc.</organization>

               <address>
                   <postal>
                       <street>660 York Street</street>
                       <street>M/S 40</street>
                       <city>San Francisco</city> <region>CA</region>
                       <code>94110</code>
                       <country>US</country>
                   </postal>

                   <phone>+1 415 695 3975</phone>
                   <email>mrose@not.invisible.net</email>
                   <uri>http://invisible.net/</uri>
               </address>
           </author>

           <date month="February" year="1999" />

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -