Darwin Information Typing Architecture | |
Abbreviation | DITA |
---|---|
Status | Published |
First published | June 2005 |
Latest version | DITA 1.3 Part0:Overview Part1:Base Edition Part2:Technical Content Edition Part3:All-Inclusive Edition June 19, 2018 |
Organization | OASIS |
Committee | DITA TC |
Editors | Robert D. Anderson, Kristen James Eberlein |
Base standards | XML, HTML |
Domain | Information Typing |
Website | dita-lang |
The Darwin Information Typing Architecture (DITA) specification defines a set of document types for authoring and organizing topic-oriented information, as well as a set of mechanisms for combining, extending, and constraining document types. [1] It is an open standard [2] that is defined and maintained by the OASIS DITA Technical Committee. [3]
The name derives from the following components:
Topics are the foundation for content reuse, [5] and can be reused across multiple publications. Fragments of content within topics can be reused through the use of content references (conref or conkeyref), a transclusion mechanism. [6]
The latest version of DITA (DITA 1.3) includes five specialized topic types: Task, Concept, Reference, Glossary Entry, and Troubleshooting. Each of these five topic types is a specialization of a generic Topic type, which contains a title element, a prolog element for metadata, and a body element. The body element contains paragraph, table, and list elements, similar to HTML.
A DITA map is a container for topics used to transform a collection of content into a publication. It gives the topics sequence and structure. A map can include relationship tables (reltables) that define hyperlinks between topics. [7] Maps can be nested: they can reference topics or other maps, and can contain a variety of content types and metadata.
DITA includes extensive metadata elements and attributes, both at topic level and within elements. [8] Conditional text allows filtering or styling content based on attributes for audience, platform, product, and other properties. The conditional processing profile (.ditaval file) is used to identify which values are to be used for conditional processing. [9]
DITA allows adding new elements and attributes through specialization of base DITA elements and attributes. Through specialization, DITA can accommodate new topic types, element types, and attributes as needed for specific industries or companies. Specializations of DITA for specific industries, such as the semiconductor industry, are standardized through OASIS technical committees or subcommittees. Many organizations using DITA also develop their own specializations.
The extensibility of DITA permits organizations to specialize DITA by defining specific information structures and still use standard tools to work with them. The ability to define company-specific information architectures enables companies to use DITA to enrich content with metadata that is meaningful to them, and to enforce company-specific rules on document structure. [6]
DITA content is created as topics, each an individual XML file. Typically, each topic covers a specific subject with a singular purpose, for example, a conceptual topic that provides an overview, or a procedural topic that explains how to accomplish a task. [10] Content should be structured to resemble the file structure in which it is contained. [11] [12] [13]
DITA map and topic documents are XML files. As with HTML, any images, video files, or other files that must appear in the output are inserted via reference. Any XML editor or even text editor can be used to write DITA content, depending on the level of support required while authoring. Aids to authoring featured in specialized editors include WYSIWYG preview rendering, validation, and integration with a DITA processor, like DITA-OT or ditac.
DITA is designed as an end-to-end architecture. In addition to indicating what elements, attributes, and rules are part of the DITA language, the DITA specification includes rules for publishing DITA content in HTML, online Help, print, Content Delivery Platform and other formats.
For example, the DITA specification indicates that if the conref attribute of element A contains a path to element B, the contents of element B will display in the location of element A. DITA-compliant publishing solutions, known as DITA processors, must handle the conref attribute according to the specified behaviour. Rules also exist for processing other rich features such as conditional text, index markers, and topic-to-topic links. Applications that transform DITA content into other formats, and meet the DITA specification's requirements for interpreting DITA markup, are known as DITA processors.
DITA provides support for translation via the localisation attribute group. Element attributes can be set to indicate whether the content of the element should be translated. The language of the element content can be specified, as can the writing direction, the index filtering and some terms that are injected when publishing to the final format. [14] A DITA project can be converted to an XLIFF file and back into its original maps and topics, using the DITA-XLIFF Roundtrip Tool for DITA-OT [15] [16] and computer-assisted translation (CAT) tools, like Swordfish Translation Editor or Fluenta DITA Translation Manager, a tool designed to implement the translation workflow suggested by the article "Using XLIFF to Translate DITA Projects" published by the DITA Adoption TC at OASIS. [17]
The DITA standard is maintained by OASIS. The latest (current) version is 1.3, approved December 2015. An errata document for DITA 1.3 was approved in June 2018. [18]
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE map PUBLIC "-//OASIS//DTD DITA Map//EN" "map.dtd"><mapid="map"xml:lang="en"><topicrefformat="dita"href="sample.dita"navtitle="Sample"type="topic"/></map>
<?xml version="1.0" encoding="utf-8"?><!DOCTYPE topic PUBLIC "-//OASIS//DTD DITA Topic//EN" "topic.dtd"><topicxml:lang="en"id="sample"><title>Sample</title><body><p>HelloWorld!</p></body></topic>
<?xml version="1.0" encoding="utf-8"?><val><propatt="audience"val="novice"action="include"/><propatt="audience"val="expert"action="exclude"/></val>
Example of conditionalized text:
<p>Thisisinformationusefulforallaudiences. </p><paudience="novice">Thisisinformationusefulforanoviceaudience. </p><paudience="expert">Thisisinformationusefulforanexpertaudience.</p>
Name | Type | Software license |
---|---|---|
DITA Open Toolkit [27] | Publishing | Apache License |
Oxygen XML Editor [28] | Editor | Proprietary |
XMLmind DITA Converter [29] | Publishing | Mozilla Public License |
Name | Type | Software license |
Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It defines the content and structure of web content. It is often assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScript.
The Standard Generalized Markup Language is a standard for defining generalized markup languages for documents. ISO 8879 Annex A.1 states that generalized markup is "based on two postulates":
Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing arbitrary data. It defines a set of rules for encoding documents in a format that is both human-readable and machine-readable. The World Wide Web Consortium's XML 1.0 Specification of 1998 and several other related specifications—all of them free open standards—define XML.
The Organization for the Advancement of Structured Information Standards is a nonprofit consortium that works on the development, convergence, and adoption of projects - both open standards and open source - for Computer security, blockchain, Internet of things (IoT), emergency management, cloud computing, legal data exchange, energy, content technologies, and other areas.
XSD, a recommendation of the World Wide Web Consortium (W3C), specifies how to formally describe the elements in an Extensible Markup Language (XML) document. It can be used by programmers to verify each piece of item content in a document, to assure it adheres to the description of the element it is placed in.
In computing, RELAX NG is a schema language for XML—a RELAX NG schema specifies a pattern for the structure and content of an XML document. A RELAX NG schema is itself an XML document but RELAX NG also offers a popular compact, non-XML syntax. Compared to other XML schema languages RELAX NG is considered relatively simple.
An XML schema is a description of a type of XML document, typically expressed in terms of constraints on the structure and content of documents of that type, above and beyond the basic syntactical constraints imposed by XML itself. These constraints are generally expressed using some combination of grammatical rules governing the order of elements, Boolean predicates that the content must satisfy, data types governing the content of elements and attributes, and more specialized rules such as uniqueness and referential integrity constraints.
This article describes the technical specifications of the OpenDocument office document standard, as developed by the OASIS industry consortium. A variety of organizations developed the standard publicly and make it publicly accessible, meaning it can be implemented by anyone without restriction. The OpenDocument format aims to provide an open alternative to proprietary document formats.
OAXAL: Open Architecture for XML Authoring and Localization is an Organization for the Advancement of Structured Information Standards (OASIS) standards-based initiative to encourage the development of an open Standards approach to XML Authoring and Localization. OAXAL is an official OASIS Reference Architecture Technical Committee.
Security Assertion Markup Language 2.0 (SAML 2.0) is a version of the SAML standard for exchanging authentication and authorization identities between security domains. SAML 2.0 is an XML-based protocol that uses security tokens containing assertions to pass information about a principal between a SAML authority, named an Identity Provider, and a SAML consumer, named a Service Provider. SAML 2.0 enables web-based, cross-domain single sign-on (SSO), which helps reduce the administrative overhead of distributing multiple authentication tokens to the user. SAML 2.0 was ratified as an OASIS Standard in March 2005, replacing SAML 1.1. The critical aspects of SAML 2.0 are covered in detail in the official documents SAMLCore, SAMLBind, SAMLProf, and SAMLMeta.
XLIFF is an XML-based bitext format created to standardize the way localizable data are passed between and among tools during a localization process and a common format for CAT tool exchange. The XLIFF Technical Committee (TC) first convened at OASIS in December 2001, but the first fully ratified version of XLIFF appeared as XLIFF Version 1.2 in February 2008. Its current specification is v2.1 released on 2018-02-13, which is backwards compatible with v2.0 released on 2014-08-05.
DITA Open Toolkit (DITA-OT) is an open-source publishing engine for content authored in the Darwin Information Typing Architecture (DITA).
EPUB is an e-book file format that uses the ".epub" file extension. The term is short for electronic publication and is sometimes stylized as ePub. EPUB is supported by many e-readers, and compatible software is available for most smartphones, tablets, and computers. EPUB is a technical standard published by the International Digital Publishing Forum (IDPF). It became an official standard of the IDPF in September 2007, superseding the older Open eBook (OEB) standard.
Content Assembly Mechanism (CAM) is an XML-based standard for creating and managing information exchanges that are interoperable and deterministic descriptions of machine-processable information content flows into and out of XML structures. CAM is a product of the OASIS Content Assembly Technical Committee.
A component content management system (CCMS) is a content management system that manages content at a granular level (component) rather than at the document level. Each component represents a single topic, concept or asset.
XMetaL, or XMetaL Author, is a software application people use to create and edit documents in XML and SGML. It has some features common to word processors, but is a native XML editor that can be configured to work with various standard and custom DTDs and XML Schemas. XMetaL was first released by SoftQuad Software in 1999 and is currently developed by JustSystems.
XHTML+RDFa is an extended version of the XHTML markup language for supporting RDF through a collection of attributes and processing rules in the form of well-formed XML documents. XHTML+RDFa is one of the techniques used to develop Semantic Web content by embedding rich semantic markup. Version 1.1 of the language is a superset of XHTML 1.1, integrating the attributes according to RDFa Core 1.1. In other words, it is an RDFa support through XHTML Modularization.
The SAML metadata standard belongs to the family of XML-based standards known as the Security Assertion Markup Language (SAML) published by OASIS in 2005. A SAML metadata document describes a SAML deployment such as a SAML identity provider or a SAML service provider. Deployments share metadata to establish a baseline of trust and interoperability.