Skip to main content
Participant
July 22, 2010
Question

re: Linking to an XSL/FOS stylesheet!

  • July 22, 2010
  • 2 replies
  • 1985 views

Hi Everyone!

I am working in structured framemaker....on developing an update manual based on a mil-std dtd 40051c. I have the dtd as well as an official FOSI (stylesheet) file and need a bit of help.

Here is a recap of what I have done thus far:

  • Create an EDD based off the MIL-STD DTD file
  • Create a DTD based on my EDD
  • Create new file and imported element definitions, followed by building the top-level tree structure for the entire manual
  • I have put the FOS, as well as an XSL (I simply converted the FOS file) into my structapps directory

My question is this:

Seeing as I have the entire tree structure built already, I could potentially go through each element and add my content. The problem however is that in Framemaker I cannot see the styles of each element in the document itself. I have done many tests and my modifacations to structapps have not worked. I also know that I am building the document correctly because after finishing a test section I save my framemaker file to an XML file and open it up in Arbortext. At that point I can associate it to the stylesheet and it looks perfect. This is an extremely tedious process though and I would really love it if we could somehow view the correct styles as we inputted text in Framemaker. (We only have one copy of Arbortext as well so there is no way I can update all of these documents on my own)

I hope I have explained this well - so if anyone can please give me information on correctly linking an fos/xsl stylesheet within Framemaker it would be greatly appreciated. Thanks so much

This topic has been closed for replies.

2 replies

Inspiring
July 22, 2010

Van was very close in his description of the issues.  FOS (Actually FOSI - Formatting Output Specification Instance) is similar to an XSL style sheet but not the same.  It was developed in the 90s by a committee for the military as a language for describing formatting associated with SGML documents.  I was a member of that committee as were Arbortext representatives.  Arbortext adopted and implemented the spec and continues to support it.  It is a very robust means of expressing formatting.  As far as I am aware only Arbortext and one other vendor support using FOSI to render documents.

I am not aware of a tool that coverts FOSI into a usable XSL style sheet, so can you tell me how you did that?

An XSL for rendering (styling) typically is used to create FO or some other output that is then finally rendered to PDF, or directly to HTML for browser display purposes.  As van indicated the XSL support in FrameMaker is intended to translate XML file structures into a structure that is supported in Frame.  It is not intended to implement styling.

Styling for Frame is implemented in the EDD.  As Van said the EDD contains both structure and styling.  Importing the DTD translates the structure rules of the DTD into EDD.  There is no equivalent functionality that I am aware of that will take an arbitary XSL and update/import into EDD.

The behavior that you are seeing is perfectly normal.  The underlying XMLin the Frame document is good and can be saved and opened in Arbortext because it is good XML.  The XML contains no styling so applying the FOSI in Arbortext associates the FOSI styling with the XML and voila - a good looking document.  The document does not look so good in Frame because you have no style (no pun intended).  The only way to get the styling is to edit the EDD and set the styling parameters to match the descriptions in the FOSI.  After completing the EDD edit, you import the EDD into the template file configured in the strucured apps document and save it.  Now when you open the XML file in Frame and tell it your application, the template has both style and format and displays correctly.

Refer to the document that Van suggested to find information on setting styling in the EDD.  It's not a 5 minute job to translate the FOSI.  Good Luck.

Jim

Participant
July 22, 2010

I think I finally understand...thank you both for your detailed explanations. As far as converting the FOS, all I really did was open it in dreamweaver and save as XSL so I guess that isn't the correct method anyways. Thanks again for your help I really appreciate it and at least I understand what I need to do now.

Van Kurtz
Inspiring
July 22, 2010

I do not have the definitive answer, but maybe I can offer some help.

In FrameMaker, the EDD, in addition to defining the allowable structure, adds the styling to a structured document. The FrameMaker installation includes a document named Developing Structured Applications with Adobe FrameMaker. So, you can start there to see how this is accomplished.

So, when you open an XML file in FrameMaker, it will ask you to associate it with a structured application. The structured application (in the structapps file) associates the XML with a template, basically a blank FrameMaker document with the EDD imported into it. Thus, when you open the XML file, the structured application copies the structure into the template and then the EDD in the template applies the formatting.

In addition, the structured application can apply an XSL stylesheet to the XML and then copy the output of the XSL into the template. To my knowledge, such an XSL is typically used to translate a foreign structure into the structure specified by the EDD. At least, that is how I use it.

I know nothing about FOS and can only guess what it does. IF it is like an XSL, then it is translating the XML into someother structure, possibly one that specifies styling. If that is the case, then your EDD has to be able to recognize that specification and translate it into the FrameMaker equivalent for display on the screen.

Thus, one needs to know more about what the FOS does. My guess is that Arbortext knows what it does and can handle it. FrameMaker apparently does not.

If it is too difficult to create an EDD that gives the same output as Arbortext, then I suggest fixing your EDD just enough to display something meaningful, edit documents in FrameMaker, and then output them as XML. Then open the XML in Arbortext to get the final printable output.

I know this is not much help, but to my knowledge, one cannot simply associate an FOS with an XML file and have FrameMaker figure it all out.

Let's hope that others might have more information.

Participant
July 22, 2010

Thanks Van Kurtz! Just to be clear...I also tried this same procedure with an XSL file acting as my stylesheet and it still didn't work. Basically all of the elements show up perfectly and I can tell it is reading from the DTD, however I cannot for the life of me get it to view the stylesheet. Thanks again!