[Date Prev][Date Next]
[Thread Prev][Thread Next]
[Date Index]
[Thread Index]
[New search]
To: "Campbell, Art" <artc@xxxxxxxxxxxxxxx>, Free Framers <framers@xxxxxxxxx>
Subject: Re: FM to FM+SGML
From: Dan Emory <danemory@xxxxxxxxxxxx>
Date: Thu, 7 Oct 1999 09:32:48 -0700 (MST)
Sender: owner-framers@xxxxxxxxx
At 10:57 AM 10/7/99 -0400, Campbell, Art wrote: >I'm going to have to convert from plain FM to FM+SGML; the process is going >to involve converting several existing docs... > >Does anyone who has done this have any tips, tricks, traps they'd be willing >to share? ======================================================================== 1. Read the Structure Rules Tables Appendix in the Developer's Guide. Then read it several more times. You must thoroughly understand the syntax of DTD content models/EDD general rules, and how that syntax is used in structure rules tables. 2. Conversion won't work unless the unstructured document is consistently tagged. 3. Successful conversion is more likely if the DTD/EDD is relatively simple. 4. If DTD/EDD element names describe information types, but the tagging of the unstructured doc does not distinguish between those information types, the conversion is going to fail unless you re-tag the unstructured doc before conversion. For example: A number of paragraphs use the same paragraph tag but those paragraphs have to be wrapped in many different elements based on their information type. In this type of DTD/EDD, information type differentiation is not usually based on context, thus you will not be able to convert successfully unless you retag the unstructured doc to reflect the different information types before converting it. 5. Although FM+SGML doesn't care, you should, to facilitate management of the structure rules development process, organize the structure rules into different tables for different categories/context levels. 6. To complete the conversion process, you must always import the element definitions and format rules of a "real" EDD into the converted document. Then, you must complete the conversion process by using FM+SGML's validation function, and tweaking things until the document is valid. 7. Since there is no way for structure rules tables to specify attribute values, the structure will be invalid until required attributes are given values. For attributes that are not required, the EDD should specify a default value wherever possible, particularly if there are attribute-value-dependent format rules in the EDD. You can use Find/Replace to find all occurrences of a particular attribute, and (optionally) apply a single value to all such occurrences. 8. Sometimes, the most effective way to convert is to define a pseudo-DTD/EDD that mirrors the way in which the unstructured doc is actually tagged. The structure rules tables define the names and contexts of the elements in this pseudo-DTD. Then, after the conversion, you import into the converted document the element definitions from a "real" EDD, and manually complete the conversion process by using FM+SGML's split, merge, change, wrap, and unwrap functions, combined with the capability to find and rename elements with Find/Replace. You might even go through several iterations of this process before arriving at a structure that conforms to the target EDD. 9. Thoroughly document and proceduralize the conversion process (including all post-conversion clean-up work) as you have implemented it. Successful conversions on large project demand good documentation, including complete step-by-step procedures. 10. Despite all the above caveats, I've been able, on large projects, to achieve conversions that are close to 90% successful on the first pass. This success rate was achieved by carefully re-tagging the unstructured docs to eliminate almost all one-to-many relationships, so that, at the lowest level of structure, there is a one-to-one relationship between tags and elements. In other words, I do all the grunt work before, not after, the conversion. ==================== | Nullius in Verba | ==================== Dan Emory, Dan Emory & Associates FrameMaker/FrameMaker+SGML Document Design & Database Publishing Voice/Fax: 949-722-8971 E-Mail: danemory@primenet.com 10044 Adams Ave. #208, Huntington Beach, CA 92646 ---Subscribe to the "Free Framers" list by sending a message to majordomo@omsys.com with "subscribe framers" (no quotes) in the body. ** To unsubscribe, send a message to majordomo@omsys.com ** ** with "unsubscribe framers" (no quotes) in the body. **