If you are just getting started with structured content management in a DITA Component Content Management System (CCMS), the distinction between the terms ‘specialization’ and ‘customization’ can be confusing. Some may think they can be used interchangeably, but they have specific meanings when setting up a DITA CCMS like easyDITA.
Specialization Involves Modifying How Various Elements in easyDITA Work
In DITA, basic types of topics, metadata, and other elements are pre-defined by the architecture to support specific kinds of usage and behavior. easyDITA comes with a standardized set of these attributes that conform with those specified in the DITA architecture and some additional variations of these basic elements that are commonly used by our authors and content managers. For example, there is a variation of a Task topic type called Troubleshooting for content tasks that involve fixing a problem. There is also a specialization of the Concept topic type called a FAQ topic, that supports Frequently Asked Questions information and formatting. In metadata, various other options for sorting and searching through content may be added. These sub-topics and metadata additions are specializations that affect the information architecture used when designing your content management structure.
Example of a Specialization Within easyDITA
Concept topics are one of the three standard topic types in DITA (the others are Task and Reference). The FAQ (Frequently Asked Questions) topic type is an easyDITA specialization of the Concept topic type that supports the creation of questions and answers. To construct an FAQ with the FAQ topic type a new FAQ topic is created for each question. These may be tagged with metadata to support categories of FAQ questions like Operations or Policies. To create an FAQ doc for Policy Questions (for example), a map is created and all FAQ topics with the Policies metadata tag are referenced in the map. Sub-questions can be nested beneath their parents.
The FAQ topic type is pre-formatted in XML to publish as Questions and Answers in whatever way the final publishing media is set up to display that formatting. So the FAQ map can be shown on a website, as a PDF, etc. Finally, if an answer changes or is otherwise updated, the FAQ topic for that question is updated, the map re-published and the changes are reflected wherever that FAQ appears.
There are two flavors of specialization: Constraining or extending the number and types of elements. Specialization that creates constraints on the number of elements in a system involves changing settings within an application so certain elements can be removed. This is a relatively easy task compared to the more complex flavor of specialization that involves adding new types and elements. This complexity is not inherent in the process of adding and modifying elements– that is relatively straightforward. The complexity is in how these changes impact your overall Information Architecture (IA).
Extending the Scope of the Information Architecture Is More Complex
We will do specialization for our users in situations where it has an obvious set of specific requirements, like a learning system; however specialization that goes further requires an intimate knowledge of the customer’s IA, knowledge that typically requires significant time spent working with the customer. In most cases, if it starts to get into IA work, we prefer that a partner or consultant work with the client. This is because for IA work to be done really well, you want someone dedicated to it that can go on-site with the client and work through use cases and interview stakeholders directly.
In part, this is important because these specializations should not be undone at a later time, as this risks orphaning content defined by these types, metadata, etc. For that reason, a carefully thought-out information architecture design, based on requirements, should provide the logic for adding these specializations.
Customization in easyDITA
Customization is what we use to refer to any additional modifications to easyDITA or the DITA-Open Toolkit, that a client might need. This ranges from tailoring PDF styling, adding extra publishing output formats, customizing the look and feel of the editor, etc. Depending on the scope of these customizations, they can range from simple tweaks to versions designed for a customer’s specific use case. In the latter case there are likely to be additional costs incurred for more time and resource-intensive customizations.
For more detailed information on specialization in DITA visit http://dita.xml.org/book/introduction-to-specialization.