Darwin Information Typing Architecture
   HOME

TheInfoList



OR:

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. It is an open standard that is defined and maintained by the OASIS DITA Technical Committee. The name derives from the following components: * Darwin: it uses the principles of specialization and
inheritance Inheritance is the practice of receiving private property, Title (property), titles, debts, entitlements, Privilege (law), privileges, rights, and Law of obligations, obligations upon the death of an individual. The rules of inheritance differ ...
, which is in some ways analogous to the naturalist
Charles Darwin Charles Robert Darwin ( ; 12 February 1809 – 19 April 1882) was an English naturalist, geologist, and biologist, widely known for his contributions to evolutionary biology. His proposition that all species of life have descended fr ...
's concept of evolutionary adaptation, * Information Typing: which means each topic has a defined primary objective (procedure, glossary entry, troubleshooting information) and structure, * Architecture: DITA is an extensible set of structures.


Features and limitations


Content reuse

Topics are the foundation for content reuse, 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 In computer science, transclusion is the inclusion of part or all of an electronic document into one or more other documents by reference via hypertext. Transclusion is usually performed when the referencing document is displayed, and is normal ...
mechanism.


Information typing

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 The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
. * A ''Task'' topic is intended for a procedure that describes how to accomplish a task. It lists a series of steps that users follow to produce an intended outcome. The steps are contained in a taskbody element, which is a specialization of the generic body element. The steps element is a specialization of an ordered list element. * ''Concept'' information is more objective, containing definitions, rules, and guidelines. * A ''Reference'' topic is for topics that describe command syntax, programming instructions, and other reference material, and usually contains detailed, factual material. * A ''Glossary Entry'' topic is used for defining a single sense of a given term. In addition to identifying the term and providing a definition, this topic type might also have basic terminology information, along with any acronyms or acronym expansions that may apply to the term. * The ''Troubleshooting'' topic describes a condition that the reader may want to correct, followed by one or more descriptions of its cause and suggested remedies.


Maps

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. Maps can be nested. Maps can reference topics or other maps, and can contain a variety of content types and metadata.


Metadata

DITA includes extensive
metadata Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including: * Descriptive metadata – the descriptive ...
elements and attributes, both at topic level and within elements. Conditional text allows filtering or styling content based on attributes for audience, platform, product, and other properties. The conditional processing profile ( file) is used to identify which values are to be used for conditional processing.


Specialization

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 A semiconductor is a material which has an electrical resistivity and conductivity, electrical conductivity value falling between that of a electrical conductor, conductor, such as copper, and an insulator (electricity), insulator, such as glas ...
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.


Topic orientation

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. Content should be structured to resemble the file structure in which it is contained.


Creating content in DITA

DITA map and topic documents are
XML 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 ...
files. As with
HTML The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
, any images, video files, or other files that must appear in the output are inserted via reference. Any
XML editor An XML editor is a markup language editor with added functionality to facilitate the editing of XML. This can be done using a plain text editor, with all the code visible, but XML editors have added facilities like tag completion and menus and but ...
or even
text editor A text editor is a type of computer program that edits plain text. Such programs are sometimes known as "notepad" software (e.g. Windows Notepad). Text editors are provided with operating systems and software development packages, and can be us ...
can be used to write DITA content, depending on the level of support required while authoring. Aids to authoring featured in specialized editors includes
WYSIWYG In computing, WYSIWYG ( ), an acronym for What You See Is What You Get, is a system in which editing software allows content to be edited in a form that resembles its appearance when printed or displayed as a finished product, such as a printed d ...
preview rendering, validation, and integration with a DITA processor, like DITA-OT o
ditac


Publishing content written in DITA

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 A content delivery platform (CDP) is a software as a service (SaaS) content service, similar to a content management system (CMS), that utilizes embedded software code to deliver web content. Instead of the installation of software on client ser ...
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''.


Localization

DITA provides support for
translation Translation is the communication of the Meaning (linguistic), meaning of a #Source and target languages, source-language text by means of an Dynamic and formal equivalence, equivalent #Source and target languages, target-language text. The ...
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 A writing system is a method of visually representing verbal communication, based on a script and a set of rules regulating its use. While both writing and speech are useful in conveying messages, writing differs in also being a reliable form ...
, the index filtering and some terms that are injected when publishing to the final format. A DITA project can be converted to an
XLIFF XLIFF (XML Localization Interchange File Format) 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 T ...
file and back into its original maps and topics, using the DITA-XLIFF Roundtrip Tool for DITA-OT and
computer-assisted translation Computer-aided translation (CAT), also referred to as computer-assisted translation or computer-aided human translation (CAHT), is the use of software to assist a human translator in the translation process. The translation is created by a huma ...
(CAT) tools, like Swordfish Translation Editor o
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.


History

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. * March 2001 Introduction by IBM of the core DTD and
XML Schema An XML schema is a description of a type of Extensible Markup Language, 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 ...
grammar files and introductory material * April 2004 OASIS DITA Technical Committee formed * February 2005 IBM contributes the original DITA Open Toolkit project to SourceForge; though regularly confused with the DITA standard, DITA-OT is not affiliated with the OASIS DITA Technical Committee * June 2005 DITA v1.0 approved as an OASIS standard * August 2007 DITA V1.1 is approved by OASIS; major features include: ** Bookmap specialization ** Formal definition of DITAVAL syntax for content filtering * December 2010 DITA V1.2 is approved by OASIS; major features include: ** Indirect linking with keys ** New content reuse features ** Enhanced glossary support, including acronyms ** New industry specializations (Training, Machinery) ** New support for controlled values / taxonomies (Subject Scheme specialization) * 17 December 2015, DITA V1.3 is approved by OASIS; major features include: ** Specification now delivered in three packages: Base, Technical content, and All Inclusive (with Learning and Training) ** New troubleshooting topic type ** Ability to use scoped keys ** New domains to support MathML, equations, and SVG ** Adds Relax NG XML syntax as the normative grammar for DITA * 25 October 2016, DITA V1.3 Errata 01 is approved by OASIS * 19 June 2018, DITA V1.3 Errata 02 is approved by OASIS


Code samples


Ditamap file (table of contents) sample


Hello World (topic DTD)

Sample

Hello World!


.ditaval file sample (for conditionalizing text)

Example of conditionalized text:

This is information useful for all audiences.

This is information useful for a novice audience.

This is information useful for an expert audience.


Implementations


See also

*
Comparison of document markup languages The following tables compare general and technical information for a number of document markup languages. Please see the individual markup languages' articles for further information. General information Basic general information about the marku ...
*
List of document markup languages The following is a list of document markup languages. You may also find the List of markup languages of interest. Well-known document markup languages * HyperText Markup Language (HTML) – the original markup language that was defined as a part o ...


References


External links

*
DITA 1.3 specifications
*
DITA.XML.org forum

DITA demonstration set to download on GitHub

Learning DITA - set of tutorials to learn DITA on one's own

DITA Self Service Portal

GitHub repository with sample DITA files
{{Authority control Document-centric XML-based standards Markup languages Technical communication XML XML-based standards Open formats