在线咨询交换标准ONIX

在线信息交换标准ONIX(Online Information eXchange)是针对数字出版物制定的在线元数据信息描述和元数据交换标准。ONIX的目标是为在线书店提供标准化的出版物元数据,以满足各式出版物的在线信息交换需求。

ONIX在英国图书工业交流会(Book Industry Communication)BIC Basic以及EDItEUR的EPICS等标准基础上建立。目前ONIX由欧洲电子数据交换组织EDItEUR(Electronic Data Interchange to Europe)维护和更新。

ONIX标准为电子出版物建立了一套整合的发布、流通和信息传递机制,用以支持信息和数据交换。ONIX包含电子出版物创建、发布、注册以及出版发行过程中的知识产权保护信息,并为出版物提供了详细的元数据描述,包括书目细节、知识产权信息、书刊各种交付形式的价格信息、以及出版物的渠道信息等。在为电子图书(ONIX for Books)信息提供传输模式的基础上,ONIX还将覆盖音视频等各类电子媒体知识产品,以适应数字出版领域的电子贸易需求。

ONIX以XML作为承载电子出版物网络信息的交换语法形式,其中的记录代表书籍条目信息,ONIX通过特定的DTD来定义字段属性,如可重复与顺序关系,必备与非必备等。同时对每一字段进行详细限定,以确保传送与接收的信息对应统一。ONIX之所以采取XML形式,首先,对于复杂文档的创建、传输和交换,XML具备自身的优势。XML以纯文本方式存储,对于机器识别和手工编辑都可适用。此外,XML能够使用Tags灵活定义出版物所需的各种元数据描述元素,便于组织和个人在ONIX基础上进行灵活拓展,XML还拥有众多成熟的编辑和支撑工具,便于各出版机构选用。

ONIX为电子出版物的传递和交换提供了丰富的元数据描述规范,在面向电子书籍出版的ONIX for Books中,包含XML消息规范(Message Specification)、产品记录规范(Product Record Specification)、主连续记录规范(Main Series Record Specification)与子连续记录规范(Subseries Record Specification)等规范内容。ONIX的XML出版物信息包含具备格式、内容以及ONIX出版物信息根元素的起始信息(Start of Message),记录信息规格的标头资料段(Header Block),包含产品、主系列与子系列纪录的主体内容(Body of Message),以及结束信息(End of Message)等四部分内容。

ONIX为电子出版物发行建立了国际通用的信息交换标准,值得我国数字出版行业学习借鉴。感兴趣的朋友可以延伸阅读ONIX for Books 3.0产品信息格式技术白皮书,以了解更多技术内容。

DITA技术分析报告

达尔文信息分类体系架构DITA是面向主题的文档交付解决方案,DITA基于XML表示并继承XML的文档描述元素,覆盖内容信息组织、编写、生成和交付的整个出版过程,并可以面向不同领域的技术出版物进行扩展和定制。

DITA侧重于交付主题粒度的知识单元,再将知识单元进行重组和映射,生成最终交付的出版文档。DITA的设计理念,与传统着眼于书籍或文档交付的排版技术在思路上有很大区别。同时在应对局部知识点更新方面,DITA有着先天的优势。

在DITA的主题(Topic)粒度划分方面,我认为主题作为片段信息的载体,首先应具备自包含的特性,即主题具有信息描述的完备性,能够准确完整的表达内容含义,所以划分的粒度不易过细。同时,作为建立后续关联映射的基础单元,主题的粒度也不易过粗,应该便于通过DITA映射进行知识的共享和重用。

在近期参与的国家数字复合出版工程预研工作,对DITA技术体系进行了分析和梳理,并对DITA与主流的数字出版技术进行了对比。DITA涵盖的内容非常丰富,仅最新1.2版本的技术说明和语言规范就有1200余页文档,包含创作和组织面向主题文档的各种信息,以及DITA使用过程中的组织、拓展和约束内容。

目前我对DITA的了解仅是庞大体系中的一小部分,在与合作单位的讨论交流中,就掌握的内容整理了一份DITA技术分析汇报,欢迎感兴趣数字出版的朋友共同交流DITA技术。

DITA技术分析汇报(PDF:1M):http://www.gaoang.com/files/dita-spec-gaoang.pdf

DITA与DocBook对比分析

DITADocBook是数字出版领域的两种标准,通过定义规范化的文档描述规则,来解决文档交付过程中遇到的问题。面向不同类型的交付出版物,DITA和DocBook各有见长,但在实际应用中也有自身的限制因素。结合近期我参与的项目实践,对两个标准的对比分析总结如下。

DITA解决了出版物的结构化描述和内容重组问题,且支持多语言版本制作,适用于对格式有严格限定的技术手册类出版物。但DITA不能实现很完美的样式渲染,且对于内容与格式一体化的复杂出版物,DITA很难进行主题和界定与划分。所以使用DITA进行书籍出版的成本和难度较高。

相比较来说,DocBook适用于通用出版物,文档易于组织和排版。但DocBook内容以Section段落组织,不具备DITA的内容映射机制,无法做到类似Topic这样粒度的内容划分与重组。且对于内容需要频繁修改的文档排版,Docbook略显力不从心。

DITA和DocBook专注于交付技术信息,但DITA侧重于交付主题,而DocBook侧重于交付书籍。DITA提供基于主题级粒度的信息分类,允许作者组织并描述特定信息领域。在生成多种文档格式的信息重用过程中,能够保持内容的高度一致性。在最终交付物的输出格式方面,DITA能够生成PDF、CHM、HTML等大部分的出版交付类型。DocBook常用的交付格式为PDF和HTML,其他输出格式需要借助相关的功能插件。

LaTeX也是出版常用的格式,但我感觉LaTeX与DITA或DocBook侧重解决的技术层面有较大的不同。LaTeX是富格式文本集,尽管对科技论文撰写很合适,LaTeX适用于作者个人创作,但LaTeX文档内容和标签的耦合度非常紧密,并不适合于出版社的排版工作,以及文档内容的抽取重用,还有多种交付文档的组合生成。

在学习应用方面,DITA包含众多语法和标签定义,在应用过程中的学习曲线较陡,在文档生成过程中一般需要使用Ant命令进行编译。而DocBook相对容易理解和使用,一般使用者从了解到上手使用DocBook制作文档仅用一天时间即可。希望了解更多DITA与DocBook的对比分析的朋友,可以进一步阅读DCL数据转换实验室包含更为详尽内容的文章

DITA开放工具箱

DITA达尔文信息分类体系结构,Darwin Information Typing Architecture)是一种面向主题的文档类型定义(Document Type Definitions,DTD)系统,用于定义编写和交付内容信息的规则。DITA通过XML架构来描述、管理和发布内容信息,并用于内容信息的编写、生成和交付。

DITA最初由IBM开发,目前交由结构化信息标准组织OASIS维护,DITA通过将文档组织为可重用的模块(Topics主题)并将模块进行组织来表示信息的内容,DITA提供了主题的元数据注释,用户可以便捷的搜索、过滤和处理内容。同时DITA的结构化编写方式,支持内容的重用。

DITA开放工具箱是OASIS的DITA标准的DTD和Schema的Java实现,能够将DITA文档的Maps和Topics转换为最终的交付文档(HTML、PDF、RTF)。DITA开放工具箱包含Ant构建模板、DITA词汇表DTD定义,DITA词汇表的XML Schema定义以及Java文档处理类库等内容。对于DITA文档,源文件和映射文件中的标记项由DTD和Schema定义,借助XSLT和CSS文档,经处理渲染后得到最终交互文档。

在商业产品方面,提供软件产品生命周期管理的PTC公司开发的XML文档处理器Arbortext,支持DITA的编辑与转换工作。Syntext公司开发的开源的XML编辑器Serna Free支持DITA、Docbook、XHTML等XML文件类型,能够实现可视化的编辑工作。

之前在IBM DW撰写Django文章使用的投稿模板,应该就是基于DITA的思想进行的排版实现。对于初次接触DITA文档格式的使用者,DITA开放工具箱提供的Ant编译方式不太直观,可以先从所见即所得的编辑器开始入手使用DITA,建立一个感性的认识。