3 Replies Latest reply: Jun 6, 2014 9:23 AM by saprentice RSS

    Conversion Table with P tags to Body

    AMCGracer Community Member

      I am converting from unstructured to structured XML in DITA.

       

      In my conversion table, I have multiple paragraphs tagged with p, like this:

       

      P     p[otherprops="ProcTitle"]     ProcTitle

      P     p[otherprops="Paragaph"]     Paragraph

       

      I apply my Conversion Table to my Unstructured doc, then save as XML using the Dita1.2 application. The conversion to structured completes fine. The save as xml has errors, but i expected that at this point.

       

      I now want to edit the Dita EDD to use my formatting. When I apply the Dita EDD, all the "p" paragraphs convert to Body.

       

      How to I configure the EDD to see the difference among the types of p paragraphs? I tried the following command in the EDD, but it was frankly just a guess based on similar configuration I saw in the EDD:

       

      Under Body Element

       

      Text format rules

             if context is [otherprops !="ProcTitle"]

                Use paragraph format: ProcTitle

           Else,

                Use paragraph format: Paragraph 

       

      As I'm sure is no surprise for those of you in the know, this did not work. .

       

      How can I do this?

       

      Thanks in advance for any help you can give

        • 1. Re: Conversion Table with P tags to Body
          saprentice Community Member

          Hi Amy...

           

          You're close!

           

          If you're trying to modify the formatting that's assigned to <p> elements, you need to work on the context rules for the "p" element definition.

           

          Note that it's common to use the outputclass attribute to assign formatting to elements, not otherprops .. otherprops is the filtering attribute that you use when the other filtering attributes don't quite meet your needs.

           

          It's rather complicated to customize the DITA 1.2 structure applications provided with FrameMaker. For conversion work, I recommend using the DITA 1.1 apps. That will provide you with all you need for your conversion (most likely), and will be a bit easier (although still fairly complicated) to work with. The EDDs in the DITA 1.2 apps are a series of nested insets, and you have to be careful to import the right EDDs into the right templates after making your edits. If you just edit the EDDs, without importing them into the appropriate template, your changes won't have any effect.

           

          After conversion, you can still open your files created with DITA 1.1 apps using the DITA 1.2 apps, so that's not an issue.

           

          Before you spend much time worrying about formatting, I'd focus on getting the content to migrate in a reasonable way .. formatting is a completely different level of effort.

           

          Cheers,

           

          …scott

          • 2. Re: Conversion Table with P tags to Body
            AMCGracer Community Member

            Close! Wow! Maybe I can get this afterall.

             

            I'm making progress with Dita1.2, and already defined concepts and conbodies, so I'm going to stick with that for now.

             

            Another question on the context rule. How does order matter? It seems that no matter the order I use, I cannot get the EDD to apply my actual body style to my paragraphs. It always uses a different style or no style at all

             

            So even this

            If context is: [outputclass !=”courantchap”]

            Use paragraph format: courantchap

             

            Leaves me with no formatting (never mind when I add the Else If statememts). When I check the attributes under this paragraph in the structured doc, the outputclass is applied.

            Can you see my screen shots and let me know what you think is wrong?

            This is the unstructured view of the paragraph formatting (color is denoting conditional text)unstructured.jpg

            This is the unstructured view. See how the paragraph formatting is not applied, even though the outputclass attribute is applied

            structured.jpg

            Thank you again for all your support,

            --Amy

            • 3. Re: Conversion Table with P tags to Body
              saprentice Community Member

              I'd imagine that your EDD edits aren't getting applied, but it's hard to say. There are many steps in this process and any one of them can cause things to not work. I'd suggest that you separate the conversion and formatting as two completely separate worlds. First do the conversion ..

               

              • Apply conversion table to unstructured file(s) to generate structured files
              • If successful, import the template and EDD (two separate steps, just use the default apps, don't bother with formatting or customization here)
              • Validate and clean up the structured files
              • When completely valid (using Element > Validate), export to XML

               

              Then, open your XML files in FM and see that all's well. Now you can start thinking about customization. DITA is DITA, there is no formatting in the XML so it doesn't matter until you want it to matter. Yes, your conversion table may have preserved "styling" through @outputclass attributes, but that is only applied when the EDD is set up to apply it. Until that time, it's just an attribute on an element.

               

              Now clone the default apps and create you own custom app. It's always best to clone and create your own app, and preserve the default apps in their original state. You need to have something to use when (and you will) break the apps. Once you have a custom app, you can test that on your XML files. The hardest thing about the DITA 1.2 apps in FM is that it's difficult to know which EDDs import into which templates, and making sure you have the right conditional settings and making sure you update the EDD insets in the right order.


              You can short-cut things a bit during development by importing the modified EDD (after resolving all insets) directly into your open XML file. This can let you make edits in the EDD and import to immediately see the result. Once it's working, you can then import the EDD into the template so it works properly.


              The FM2DITA docs provide the general conversion process. This has some FM2DITA-specific items, but the general process is valid for all ..


                        http://docs.leximation.com/fm2dita/1.02/?typicalconversionprocess.html


              Cheers,


              scott