Xopus for DITA

The DITA standard has been around for quite a while, and is being used by more and more companies for their technical documentation. The standard allows for specialization to adapt the content to your organization and applications without breaking compatibility with standard tools. A paragraph, for example, could be specialized to a more particular element, the 'important' paragraph.

The Dita DemoThe Dita Demo

DITA is based around topics and so specializations occur on a topic-level. DITA comes with four main topic types: the standard topic for general content, the task for a step by step description of a procedure, the concept for the description of particular concepts, and the reference topic with can be used for background information.

In our DITA demo we have created XSL templates to edit these four types straight away. This comes with configuration for templated content, pretty names for elements, UI grouping for easy navigation through the UI, and placeholder text for easy recognition of content.

Furthermore we have implemented buttons to quickly show and hide draft-comments and required-cleanup elements and support text-content re-use through the conref attribute. We are working to extend this behavior to element re-use.

Xopus uses the great advantage of DITA, it's class attributes and its specialization capabilities to its own advantage to make editing the DITA standard easy and friendly with Xopus' new features:

Grouped propertiesGrouped properties

Class Attribute configuration

First of all DITA has it's own way of dealing with XML. The class attribute is used to allow people to specialize content while still using the same XSL. We understood that we had to incorporate this behavior into Xopus if we wanted to support specializations, but we went further than this and extended it to how we read a configuration file for Xopus. With a configuration that uses the class attribute to configure elements Xopus now fully supports specialized content.

Configurations for Xopus also support importing, which allows developers working with specializad topic types to re-use configurations for less specialized content.

Templated contents

Placeholders and a templatePlaceholders and a template

Using a configurable template for contents of an element Xopus is now able to assist editors when adding content. A section comes with a title and paragraph to make editing much smoother. We have implemented templates for many elements. This is fully configurable, so any implementation and specialization can customize this to their authors' needs.

Ignoring mixed content

Configurable through the nodeConfig, we implemented the ability to treat a mixed content element as a not-mixed content element in order to make WYSIWYG editing more pleasant. This made it possible to make editing of element which can contain both text and elements easier, if most of those elements were block level elements.

Placeholder text

In order to make newly inserted elements more visible we added placeholder text to the configuration of an element.

UI Grouping

DITA Elements groupedDITA Elements grouped

The uiGroup feature makes it possible to both streamline and simplify the user interface of Xopus. Take a look, when you are working with the demo, at how the bold element is an element which can be inserted directly into a paragraph, but which is placed in a submenu for the section element. In reverse the list element is more readily available for the section, and in the submenu for the paragraph. This makes it possible to more effectively focus authors on the correct structure when the schema is not strict enough.

Custom buttons

A feature which is often sought after by our clients was the ability to further customize the user interface with their own buttons. In Xopus 4.1 this is now possible, both using roles and using javascript.

Catalog support

The catalog loading feature makes it easier to use the DITA open toolkit with Xopus, which use a catalog file to point to its schemas.

Take a look at the DITA demo and let us know what you think. It is also included in the download. It requires some PHP to run. Feel free to take a look at the code and contact us with any questions.

Visit dita.xml.org for more information about DITA. The DITA tutorial is an excellent point to start learning DITA.

Modified: January 29th 2010
By: Carl Giesberts

HTML will be shown as HTML code. Linebreaks and links starting with http:// are automatically resolved.