达尔文产品
达尔文信息键入体系结构(DITA)是基于XML的端到端体系结构,用于创作,生成和传递技术信息。 该体系结构由一组设计原则组成,这些设计原则用于在主题级别创建“信息类型”模块,并在交付模式(例如Web上的在线帮助和产品支持门户)中使用该内容。
DITA的核心代表一个称为主题的信息体系结构的通用构建块,它是一个称为“主题DTD”的XML文档类型定义(DTD)。 但是,可扩展的体系结构是此设计中技术信息的定义部分。 主题DTD或基于它的任何模式都只是体系结构设计原理的实例。
本文档是达尔文信息键入体系结构的路线图:它是什么以及如何将其应用于技术文档。 它也是该体系结构的产品,完全用XML编写,并使用此处描述的原理生成。
该体系结构和DTD由跨公司的工作组设计,该工作组代表来自IBM的用户帮助团队。 在1999年末进行了初步调查之后,工作组在2000年通过将其发布到数据库和每周一次的电话会议来共同开发了该体系结构。 该架构已作为替代的基于XML的文档系统放置在IBM的developerWorks网站上,该系统旨在利用XML作为其编码格式。 随着这些重要更新的交付,这些更新包含对一致性和灵活性的增强,我们认为DITA设计已超过其原型阶段。
IBM拥有数以百万计的产品文档,拥有自己非常复杂的SGML DTD IBMIDDoc,自1990年代初以来就一直支持该文档。 工作组必须从一开始就考虑:“为什么不仅仅转换IBMIDDoc,或者使用现有的XML DTD,例如DocBook,TEI或XHTML?” 答案需要对技术信息的性质进行一些反思。
首先,SGML和XML都是公认的元语言,它允许数据所有者社区以反映他们如何开发,存储和处理信息的方式描述其信息资产。 由于知识表示与公司文化和社区术语紧密相关,因此大多数定义通用DTD的尝试要么未使用,要么未完成。 信息交换的理想方法是与其他数据拥有者社区共享此信息的语义和转换规则。
其次,大多数公司依赖于许多交付系统,或以不同公司之间差异很大的方式处理其信息。 因此,尝试使用通用工具集也被证明是徒劳的。 工具管理的理想选择是基于标准的处理体系结构,利用其他许多人的贡献经验以及解决广泛社区中的常见问题。
第三,大多数形式化文档描述词汇(DTD或架构)的尝试都是作为信息建模练习来进行的,以捕获数据所有者的当前业务实践 。 这种方法倾向于将遗留实践编码为最终的DTD或词汇表。 技术信息(或技术领先地位不断被利用的任何信息)在DTD中未来可扩展性的理想选择是在DTD的设计中建立关于自上而下的处理系统的尽可能少的假设。
最初,工作组试图了解XML在信息技术这一前沿方面的作用。 随着工作的进行,团队意识到任何DTD设计工作都必须考虑多个词汇,与工具无关的处理范例以及无遗留的信息结构视图。 当前许多DTD都采用了解决其中一些问题的方法,但是问题的广度导致的不仅仅是DTD。 为了支持许多产品,品牌,公司,样式和交付方式,我们必须考虑整个创作到交付过程。 结果是提出了一系列建议,这些建议要求我们不仅以DTD的形式表示设计,而且还以信息架构的形式表示设计。
正如DITA名称的“架构”部分所暗示的那样,DITA具有统一的功能,可用于组织和集成信息:
在线可交付成果的各种信息体系结构都趋向于将主题的思想作为此类信息的主要设计点。 主题是描述单个任务,概念或参考项目的信息单元。 信息类别(概念,任务或引用)是其信息类型(或信息类型)。 可以通过专门化从基础主题DTD中的结构引入新的信息类型。 可以在内容管理系统中轻松地将键入的主题作为可重用的独立信息单元进行管理。 例如,可以在交付上下文中收集,安排和处理选定的主题,以提供各种交付成果。 这些可交付成果可能是近期更新的主题组,以供审阅,用于构建到用户帮助应用程序中的帮助集,甚至是小册子中从用户选择的搜索结果或“购物清单”中打印出来的章节。
通过主题粒度和主题类型专门化,DITA为信息集带来了面向对象模型的以下好处:
由于以下原因,可以将DITA视为面向对象的:
具有纪律性和独创性,可以通过一本书DTD提供主题信息集的某些好处。 特别地,用于分块的技术可以从书籍DTD中生成主题。 在DITA中,可以采用相反的方法:可以从一组DITA主题中汇编一本书。 但是,在这两种情况下,改编都是DTD的主要目的的次要部分,也就是说,如果您主要编写书籍,那么使用专为书籍设计的DTD最为有意义。 如果您主要是在编写主题,则可以使用专为主题设计的DTD,并且可以扩展到大型,可处理的主题集合。
达尔文信息键入体系结构定义了文档部分,处理器和信息用户社区之间的一组关系。 DITA具有与核心DTD 表达的特定设计点有关的以下几层。
达尔文信息键入架构中的各层
键入主题(无论是概念,任务还是参考)是独立的准备发布的信息单元。 在主题类别层的上方是可由超集DTD驱动的任何处理应用程序。 下面是构成该架构内所有专用DTD的基础的两种类型的内容模型。 接下来,我们将更详细地研究每个图层。
该域表示主题信息的处理层。 主题可以单独处理,也可以在将多个主题与定义的可交付成果相关联的交付上下文中进行处理。 交付上下文还包括文档管理系统,创作单位,翻译包等。
键入的主题表示面向DITA主题的内容的基本结构层。 该体系结构的基础是主题结构,从中可以专门化概念 , 任务和参考结构。 通过进一步的专业化,可以扩展到其他类型的主题。
四种信息类型(主题,概念,任务和参考)代表了技术文档社区中使用的主要内容类别。 此外,可以根据需要定义基于原始四种类型的专用信息类型。
作为此体系结构的显着特征,社区可以定义或扩展表示自己数据的其他信息类型。 此类内容的示例包括产品支持信息,编程消息描述和GUI定义。 除了能够在其中键入主题并定义特定的内容模型之外,DITA还提供了扩展与域相关的标签词汇表的能力。 领域专业化取代了DITA原始设计中所谓的“共享结构”。
通常,在知识领域(例如计算机软件或硬件)中使用一组信息类型的主题时,会在信息类型的主题之间共享通用词汇表。 但是,可以在具有不同词汇和语义的域中使用相同的信息类型主题。 例如,硬件参考主题可能引用诊断代码,而软件参考主题可能参考错误消息号,两个域都不必向其自己的编写者公开另一个域的唯一词汇。
使用与主题专业化相同的技术,DITA允许定义可以在信息类型主题之间共享的特殊词汇的域。 甚至可以完全消除领域,以产生仅具有核心元素的类型化主题。 1域的词汇表可以采用短语,特殊段落和列表的形式-基本上是一个部分(主题的最小组织部分)中允许的任何内容。
定义为DITA示例的基本域包括:
通过遵循专门用于内容新域的规则,您可以扩展,替换或删除这些域。 此外,内容专业化使您能够命名和扩展DITA信息类型主题范围内的任何内容元素,以在新域中发挥语义上重要的作用。
要启用专用词汇表,您需要为DTD中使用的每个元素(例如,主题或其专业化之一)声明一个等效的参数实体,然后在该DTD的内容模型内使用参数实体代替文字元素标记。 稍后,在实体替换之后,由于元素的参数实体被重新定义为既包含原始元素又包含从该元素派生的域元素,所以在允许原始元素的任何地方,还允许其他派生的域元素。 实际上,可以通过简单地更改前端DTD“外壳”中实体集包含的范围来轻松地将与领域无关的主题扩展到不同的领域,该DTD“外壳”使该类型化主题或类型化主题系列中的词汇扩展形式化
DITA的设计要点之一是利用XML领域内常见子结构的重用。 因此,主题DTD包含了OASIS表模型(最初称为CALS表模型)。 它还具有一组已定义的元数据,可以直接与完全不同的DTD或模式的元数据模型共享。
元数据结构为单个主题,更高级别的处理DTD甚至是与元数据相关联HTML文档(作为副文件或数据库记录)定义了文档控制信息。
表结构为主体级内容提供了表示语义。 许多流行的XML编辑器都支持OASIS / CALS表显示模型。
DITA由于其原型原型主题DTD中使用的元素的一般设计而为专业化提供了丰富的基础。
例如,基本主题DTD中的一个部分可以包含文本和元素数据。 但是,可以专门设置一个部分来消除PCDATA,从而生成类似于大多数DTD主体级别的纯元素内容模型。 用另一种方式专门化,一个部分可以消除大多数块状元素,因此可以作为对定义,字段标签,零件等的描述来表征。
使用DITA,已努力选择流行的或与HTML通用的元素名称。 一些语义名称是从支持大型SGML库的行业DTD(例如IBMIDDoc和DocBook)中借用的。
主题DTD中的属性列表反映了这种设计理念。 例如,“通用属性”(出现在大多数元素上)之一是 ,它定义了权重或评估的值,这些值通常在专用元素中用作属性。 此属性显示在任务主题专业化的几个元素中,原始集中只有两个允许的值:“可选”和“必需”。在其他域中,这些元素更合适地列为“高”或“低”- -同样是在主题级别提供的值。
有特定信息需求的公司可以定义专门的主题类型。 例如,一个产品组可能会确定三种主要的参考主题类型:消息,实用程序和API。 通过为每种类型的内容创建专门的主题类型,产品架构师可以确保每种类型的主题都具有适当的内容。 此外,由于用户可以进行细粒度的区分,因此专用主题使支持XML的搜索更加有用。 例如,用户可以仅在消息中或仅在API中限制对xyz的搜索。 用户通常还可以跨参考主题搜索xyz 。
规则控制着如何安全地进行专业化:每种新的信息类型必须映射到现有的信息类型,并且在其允许的内容上必须更具限制性。 通过这种专业化,新的信息类型可以将通用处理流用于翻译,打印和Web发布。 尽管产品组可以覆盖或扩展这些流程,但是默认情况下,它们可以获取全部现有流程,而无需任何额外的工作或维护。
公司可以具有一系列DTD,这些DTD表示一组一致的信息描述,每个DTD都强调这些新信息类型的专业化价值。
设计此体系结构的技术文档社区定义了基本体系结构和共享资源。 指定社区(在定义社区之内或之外)拥有的内容可以重用已经定义的处理器,样式和其他功能,但是这些社区负责根据其管理的数据定义其独特的业务流程。 他们可以通过从一种基本类型创建进一步的专业化来管理数据。
下图表示社区,作为主题级别的内容所有者,如何基于核心体系结构来专门化其内容。
在此图中,重叠表示使用该信息体系结构的内容拥有者社区之间共享的通用体系结构和工具。 然后,根据体系结构定义类型化文档的新社区可以在开始时使用相同的工具,并根据需要改进其特定于内容的工具。
1在DITA的原始设计中,通过在主题DTD中进行定义,所有共享词汇对于所有信息类型都是全局的,这产生了两个不良影响:
本文档中提供的信息尚未提交任何正式的IBM测试,而是“按原样”分发,没有任何明示或暗示的保证。 使用此信息或本文档中描述的任何这些技术的实现是读者的责任,并且取决于读者评估它们并将其集成到其操作环境中的能力。 尝试将这些技术应用于自己的环境的读者需要自己承担风险。
©版权所有International Business Machines Corp.,2002。保留所有权利。
本文地址:http://sjzytwl.xhstdz.com/quote/63341.html 物流园资讯网 http://sjzytwl.xhstdz.com/ , 查看更多翻译自: https://www.ibm.com/developerworks/xml/library/x-dita1/index.html