Browse Prior Art Database

A method to implement automatic single sourcing Disclosure Number: IPCOM000233279D
Publication Date: 2013-Dec-05
Document File: 3 page(s) / 64K

Publishing Venue

The Prior Art Database


This article describes an automatic way to implement single-sourcing in technical writing. This method can be efficient in reducing writers' efforts when they want to merge different contents into one source.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 54% of the total text.

Page 01 of 3

A method to implement automatic single sourcing

In technical writing, single sourcing allows you to create documents in various formats from the same content. For example, the same .dita source file can be used to create an HTML file or PDF file for a product that supports multiple languages and platforms .

However, single sourcing becomes an intimidating task when you have many books merged into one single source. For each book, the writer needs to set up a set of criteria, which determine whether to include or exclude the content for that book.

The following figure shows the source files for multiple books, and it's very difficult to update and maintain the source file. The values for the "otherprops" tag are predefined filter values that determine whether to include that content . For example, the otherprops value "ccpp" means that the content will be included in the C/C++ product, and the otherprops "fortran" means that the content will be included in the Fortran product.

Figure 1: A typical single sourcing case

Known solution and their drawbacks:

Currently, writers use a list of pre-defined filter values to include or exclude certain content from the source . They need to manually analyze the content of different books, and use these filter values to mark the corresponding content.

The current method is very time consuming and error prone. For example, suppose that there are four books: C/CPP Language


Page 02 of 3

Reference, Fortran language Reference, COBOL Language Reference, and PL/I Language Reference. Writers will need to define several filter values: "ccpp" indicates that only C/C++-specific content is included; "fortran" indicates that only Fortran-specific content is included; "cobol" indicates that only COBOL-specific content is included; "pli" indicates that only PL/I-specific content is included. As for content common to C/C++, Fortran, COBOL, and PL/I, no filter values need to be defined.

This single sourcing process can be very time-consuming, especially when you have more books to be merged into the same source. Also, manual single sourcing often cause errors if predefined filter values are not used properly .

We can implem...