As I have understood, the file contains a Public ID in the DOCTYPE statement. With FramaMaker, Public IDs do not work directly. Hence, it is giving this error with '<No Application>' option.
You need to create a structured application that matches the public identifier with a system identifer (i.e. with a filename). Following is the simple set of steps for creating a minimal structured application in your case:
- Goto 'File->Structure Tools > Edit Application Definitions'. A StructApp file gets opened. From the structured view, you can see that it contains some SGML & XML Applications. Since, you are using a SGML file, you need to create a new SGML application.
- Add a new <SGMLApplication> element. Provide the ApplicationName (say - mySGML).
- In <SGMLApplication> element, insert <Entities> element. Inside it, insert <Public> element. The Public element has two children: <PublicID> and <FileName>. In <PublicID>, mention the Public ID as mentioned in the DOCTYPE statement. In <FileName>, mention the complete system path of the corresponding DTD file to be used (downloaded & kept there). This needs to added for the various Public IDs that may get referenced.
- Save the file and use 'File->Structure Tools > Read Application Defintitions' to process it.
- Now, open your SGML file in FM.
- Choose the appropriate application (mySGML, as set in step-2 above) from 'Use Structured Application' dialog.
Regards,
Tarun Garg (TG)
Adobe Certified Expert, FrameMaker
