| Imposing Intelligence on Graphics: Using HyTime Hyperlinks with Non-SGML Data | Table of contents | Indexes | Plato, SGML and revolution | |||
Integrating product model and the documentation: A practical approach |
|
Pekka Siltanen |
| Senior Research Scientist |
| VTT Information Technology P.O. Box 1203 VTT Finland 02044 Phone: 358 9 456 5953 Fax: 358 9 456 7052 Email: Pekka.Siltanen@vtt.fi Web: www.vtt.fi/tte/ |
Biographical notice: |
Pekka Siltanen |
Finland ![]() Kostiainen, Kaisa VTT ![]() VTT Information Technology ![]() |
Mr Pekka Siltanen is a senior research scientist at VTT (The Technical Research Center of Finland). He received his masters degree (M.Sc, 1990) and licenciate degree (Ph.Lic, 1995) in Computer Science from the University of Helsinki. He has been carrying out several research projects in document management systems, product modeling, image processing and CAD development. Currently he is working as a project manager in the EU funded DOCSTEP project for developing product management system in co-operation with Valmet Corporation. |
Kaisa Kostiainen |
| Research Scientist |
| VTT Information Technology P.O. Box 1203 VTT Finland 02044 Phone: 358 9 456 6080 Fax: 358 9 456 7052 Email: Kaisa.Kostiainen@vtt.fi Web: www.vtt.fi/tte/ |
Biographical notice: |
Kaisa Kostiainen |
| Leikas, Markku Valmet Winders |
Ms Kaisa Kostiainen is a research scientist at VTT (The Technical Research Center of Finland). She received her M.Sc. degree in Computer Science from the University of Helsinki in 1997. Her research interests include integrating SGML with product models and with (virtual) electronic learning environments. She has been working in the DOCSTEP project and several other document management projects as an SGML expert. |
Markku Leikas |
| Valmet Winders Email: Markku.Leikas@valmet.com |
Biographical notice: |
Markku Leikas |
ABSTRACT: |
Introduction |
|
Integration of product structure and technical documentation |
|
Also, it seems that the problem of customer document configuration can more easily be solved outside the product management system. It is an inviting idea that the product configuration uniquely defines document configuration - meaning that if we know which product components are delivered to the customer we can always automatically get the document components attached to the product components and create customer documentation by assembling these documents (Figure ). |
Product configuration describes the document configuration |
![]() |
The Valmet document management application |
|
Paper machine documentation |
|
The manufacture of paper and paper finishing machinery is a global business. Valmet has production plants and service operations in all of its main market areas in Europe, America and Asia-Pacific. |
All this means that the documentation of a whole machinery is composed of hundreds of document components that each may have three kinds of variations: revisions to take care corrections, document translations and document variations describing different product component versions (Figure ). Each document delivered to a customer is an intersection of these three dimensions. |
Dimensions of document variations |
![]() |
Background |
|
Valdoc architecture |
|
Valdoc system overall architecture |
![]() |
Product structure |
|
The basis of the Valdoc system is the concept product structure, that is a product structure which is not fixed until the customer has selected optional features of the product. The concept product structure is a kind of a general model which includes all the options which the customer can select. It contains all the product components, the relationships between the components in the product hierarchy and other information that can be attached to the components (such as component name, descriptions etc.). The components may have several variations amongst which the customer can choose. In the concept product structure three main types of relationships may be defined between the component: the relationship may be The concept product structure reminds the generic product structure introduced by Svenberg . |
In addition to modelling a concept product structure, a way of modelling the customer product configuration was defined. The customer product configuration consists of the selection of the product components, which are delivered to a particular customer (Figure ). In the customer structure, all the product components are compulsory since all the selections are made in the concept product structure. |
Concept product structure and customer product structure. |
In the concept product structure the symbol ? stands for an optional relationship and the straggling line represents alternative product components. Overlapping rectangles describe product components that have several variations. |
![]() |
The Winder is an independent component of whole paper machine unit. One of the Winder types, the Winroll, was designed to be modular and the concept product structure was defined simultaneously with the design process, together by the documentation experts and the design engineers. It was noticed that the task was not as straightforward as could be expected, althoutgh the Winroll was designed to be as modular as possible. The reason was that the concept product structure was defined as mechanical structure of the product. It seems the mechanical designer and e.g. the automation designer see the product component from a different angle. However, a good compromise of the different view was found but it seems, that applying a modelling method based on the product functions might be worth investigating as an additive modeling method . |
Document structure |
|
The VALMET DTD is based on the Swedish FMV( Förvarets Material Verket) DTD, and it is strongly content-oriented. The first version of the DTD was designed in 1996 and it has been slightly modified several times. The latest modifications were made at the end of 1997 to ensure compatibility with the XML standard . This DTD is used as an authoring DTD. |
The DTD has element levels that correspond to the product structure: MODULE element contains information that belongs to one product component, e.g. general safety document elements and terminology used for this product component. MODULE may contain one or more VARIATIONs which contain information belonging to one product variation. The VARIATION element consists of the following main subjects: technical data, structure and functional principles, operating instructions, mechanics, electronics, hydraulics, pneumatics, and automation. It depends on the type and function of a component variation, which of those main subjects are included in the documentation. These subjects and the corresponding DTD elements are called the main DTD branches (Figure ) |
Main levels of the DTD. |
![]() |
Each of the main branches describe one topic that is documented. E.g. operations instructions illustrated in figure contain author notes (information about the writer(s) of this topic), operation safety instructions, descriptions of each procedure, that is the the component operation and maintenance instructions. Each procedure consists of description of the procedure, preconditions that are needed for the procedure, actions needed to make the procedure and postconditions after the procedure has been conducted. Operation instructions also contain maintenance instructions, which are divided into maintenance that is done periodically and on-demand maintenance and troubleshooting. |
Example of one of the main branches: operation instructions. |
![]() |
Linking product structure and document structure |
|
The linkage between product components and documents is simple: each product component contains document identifiers of the corresponding document elements. The document is found from the SGML database by searching an element whose attribute equals to the document identifier. Basically there is one document identifier per product component linking to a document component representing one DTD branch, that is e.g. to the element containing safety instructions. However, since the documentation attached to the component is dependent of the configuration on the whole, the component cannot contain only one document identifier but a list of them. The customer configuration mechanism is used for selecting the right document identifier belonging to the particular configuration. |
Since the level in the DTD that is used for editing and translation is always a main DTD branch level, that is the elements describing operating instructions, mechanical, electronic information etc., the links always point to that level. However, the mechanism itself allows linking to an arbitrary element in the DTD. |
It may be argued that the main DTD branches are too high in the DTD hierarchy to allow an efficient reuse of document components. Our experience is however that the granularity of the document objects to be authored can not be too small, e.g. single paragraphs. If the documentation is assembled from too small pieces, the writing style may change between successive paragraphs, making the document difficult to understand. The same applies to the process of translation: the translator also needs to see the context of the paragraph to be translated. Also it must be noted that creating the linkage to quite a high level in the DTD hierarchy does not hinder the efficient reuse of smaller elements as will be described in the next section. |
Reusing mechanism |
|
Studies show that 50 - 70 % of content of technical manuals is repetitious either internally or externally . The same is also noticed in the case of Valmet documentation. One of the most important challenges of the Valmet paper machine customer documentation production is a strong needof reusing document elements. Since the the most product components delivered to the customers are mainly modifications of the existing components, their documents have a great deal of equal structures. The changes may be rather small, e.g. deleting, editing, or adding a few paragraphs. This means that when corrections are made, it would be an extensive task to find all the documents that use the same components if the document components are just copied to several documents, without any reuse mechanism. |
Translating the documents adds one dimension to the reusing problem. Consider the following real life situation: We have delivered a product with documents in Finnish and English. Another customer wants a slightly modified product and documents associated to it. The new document variant is based on the existing document in Finnish so almost all document elements are the same. Then we want to translate the new variation document into English. Since we already have the translation of the original document in English we only need to translate the deviating document elements. The problem is that finding the already translated document elements might be an enormous task to do. This, of course, increases the translation costs. |
To address both the problems described above we store the paper machine documentation into an SGML document database and heavily take advantage of the database document element reusing mechanism, henceforth referred to as element sharing. |
Element sharing in an SGML document database means that any document element stored in the database can be used in several documents. We call a sharing element an element that is not physically stored in the database. Instead , only the pointers to the element in another document, the shared element, are stored. The same element can be shared by many elements and they all are updated simultaneously by changing the shared element. This means that corrections can be made by correcting only the shared element and the correction is mirrored automatically in the sharing elements. |
To solve both the reuse of document elements and reuse of translations, paper machine documents are stored in the SGML database, so every leaf level element in the authoring DTD is in the SGML database replaced by a container that holds elements of different languages. The language of the element content is indicated with an attribute. This structure is used only for database storage purposes. When the document is checked out from the database for editing or publishing, only the elements with the specified language are selected. The figure illustrates the structure of the database document. |
Storage structure of a document stored in the SGML database. |
![]() |
The main advantage of the document storage structure is achieved when combined with SGML document database sharing mechanism. The author creates a new document component variation by checking out an existing database document component into an SGML editor. This document functions as a base document. The author modifies the base document by editing, adding or deleting elements. |
Once the work is finished the new variation document is stored into the database, so those elements of the base document that remain untouched are automatically shared in the database. But instead of sharing only paragraph elements we share the whole container containing all the translations of the element. After that all the sharing containers in the new document variant share not only the paragraph but all the earlier made translations too as illustrated in figure . |
Reusing the translated elements by sharing the element container |
![]() |
The sharing mechanisms implemented in the SGML databases seem to rely heavily on user interaction: the user manually selects all the elements that she wants to share. We have taken another approach, we try to find all the elements that are equal in the base document and the new variation document and automatically share all these. We have used a commercial SGML differencing program to find the similar components. It seems that the program can find almost all equal components, but extensive differences in the structure may cause the program to omit some components that could be shared. |
The idea of sharing all the translations in the same container is based on the assumption that all the translations share the same structure. This can well be assumed when translating technical documents. However, to assure that the translator does not change the structure, a special SGML translation editor application is used. The translation editor creates, using the translation source document, a target structure having the #PCDATA elements with no content (Figure ). The structures are presented in adjacent windows in the translator editor so that scrolling in one structure causes the other structure scroll synchronously. The translator writes the translation of the element into the corresponding element in the target structure. |
Translation of the database document. |
![]() |
The translation editor can also have two structures as input: the source language structure and the target structure, in which some #PCDATA elements are already filled in, in case the corresponding translations are already found in the database. The benefit of reusing the translated elements appears when we translate the document sharing element containers. When the new variation document is checked out from the database the translated elements can automatically be included in the target structure (Figure ). |
Reusing the translated element in the translation editor. |
The English paragraph in the shared element container is automatically inserted into the target structure in translation editor. |
![]() |
Conclusions |
|
We believe that integration of product structure and structured documentation can solve a great deal of problems of managing technical documents of complicated products. We do suggest that the document management and product management should be separated, however, letting the product structure to be used as linking mechanism. Design information produced by the product design engineer should be managed within the product model, e.g. using SGML_STRING approach but actual customer documentation management is most easily done by using SGML tools. |
The project has shown that it may be quite difficult to create a such concept product structure of a complicated product that correctly represent the product from all the viewpoints, such as automation and mechanics. It seems possible to create a such view to product structure that meets the documentation needs. Even better results could possible be achieved if functional view to the product was adopted in addition to a mechanical structure. |
The system described is based on existing commercial tools, with the exception StepDocs user interface tool. The system described is not based on the features of any particular tools, but we have tried to build it as tool-independent as possible. We have also been able to create an SGML based documentation environment step by step, using a system based on simple SGML file strategy on first customer deliveries, and going towards a full SGML database environment in the near future. The Valdoc system is already partly in production us, but it is still heavily developed. |
An aspect of the document management system that was not included in this paper is control of the document quality. We are currently developing methods for controlling quality of language and terminology used in the documents, but results of this research are left to future publications. |
Bibliography
|
| Imposing Intelligence on Graphics: Using HyTime Hyperlinks with Non-SGML Data | Table of contents | Indexes | Plato, SGML and revolution | |||