Using the current FM which I downloaded a couple of weeks ago. I have a custom application (using TEI P4). In the Structured Application Designer, I can select my application, but then I always get a dialogue saying "Unsaved changes in current application: continue?" which is disconcerting. Ignoring this message, I get a dialogue which includes the settings I have specified, with one exception. This is "EDD (optional)", which is always blank. I can specify it, and save the result, but when I re-open the dialogue it is blank once again. I have tried to edit the structapp.fm file directly, but don't see an element which is obviously designed to hold the path to the EDD. So that's one problem: it means that I have to do "File - Import - Element definitions" each time to load the EDD. Furthermore, before I do this I have to actually open the EDD by hand, otherwise it does not appear as an option in the Import Element Definitions dialogue.
Similarly, I have specified two custom colours, which appear in the list of colours, but their properties are set back to default values each time I open a file. How do I specify these colours in a way that FM will actually remember?
Finally, I have specified the format of cross-references, and again there isn't a way I have discovered to store this format so I get it automatically as a property of my custom application.
A template is an FM document that is used as a starting point for creating additional documents. You need to add a template to the definition of your application. Define the colors and cross-reference formats you need in the template, and import element definitions from the EDD into the template. You may eventually add other information to the template, such as defining paragraph, character, or table formats, or defining master pages.
I don't know why you repeatedly get the "unsaved changes" message.
It seems that when you open the Structured Application Designer, FM creates a new application called Blank Application. Even if you don't set any properties in this application, as soon as you switch to another one, FM complains that Blank Application has not been saved.
That sounds like a cut-and-dried bug to me. Blank Application should have a 'modified' flag initially set to false, which is only set to true if changes are made, and which is tested when the selection changes.
P.S. the forum wouldn't let me post this reply in the browser. I was still logged in as me.
OK, thanks. Now I understand that, I have updated my template with colours and cross-reference format, and saved it. (The latter requires a certain sleight of hand; you need to pretend to insert a cross-reference, then attack the Edit Format sub-dialogue and add your custom cross-reference formatting.) I'm assuming that creating new documents will now work as intended (though I have yet to test this).
However, my previous experience was based on a situation where I was selecting my Structured Application, then opening an existing XML document, editing it in FM, and then saving it . Is the idea that the EDD associated with the template associated with the Structured Application is used in this situation? (As I noted before, it is impossible to specify the EDD directly in the Structured Application Designer, even though it implies that you can.)
I'll test this when I can, but the changes I just made to the application template mean that FM will no longer load my document:
XML Parser Messages (Document Instance)
Type mismatch for the FrameMaker element (XRef). The type defined by the read/write rules is different from that defined by the template.
I'll continue to test, but in the meantime it would be helpful to better understand the design framework within which I am working.
1. You can file bugs at tracker.adobe.com (there's a link to Adobe Tracker on the Overview page of the FrameMaker forum.)
2. The EDD itself is not associated with the template. Rather, the element definitions defined by the EDD are inserted into the template and become part of it. And, yes, to import element definitions, the source file must be open.
3. Since your first message implied that defining the cross-reference formats in an open document produced the desired formatting, I assume your EDD defines the cross-reference element to be a CrossReference. What is your read/write rule for this element? It must include the subrule:
is fm cross reference element;
OK, I have filed a bug report for the spurious message.
Your answers so far have been silent on the question of the EDD textbox in the Structured Application Designer which can never be filled in. Should I report this as a bug too? The way you have described things, the EDD does not play a direct role in determining the behaviour of the structured application; instead it needs to be imported into the template and plays an indirect role from there. In which case there isn't much point in associating it directly with the structured application, unless that leads to behaviour different from what we have been discussing. Please advise/clarify.
Now that I understand that the template is the key to structure definition and rendering within a structured application, even for XML documents which are not being newly created, I think I can take things from here. Certainly, the last time I opened my test document I got my custom colours, layout and cross-reference formatting without any additional faffing around.
In order to remove the error message I quoted last time, I had to change the element type of XRef to CrossReference in the EDD, as you suggested. It is puzzling that the cross-references ever worked before I had made this change, but hey... I now just get error messages because FM wants cross-reference IDs for all my line breaks (which I have transformed to the Br element in my import XSLT). Hopefully I can work that one out for myself, unless you already know the reason!
Thanks for the support,
The Structured Application Designer is intended as a convenience for users who would rather create application definitions and the files needed to maintain a structure application through a dialog-based interface with numerous pull-down menus than just editing the files. It is never necessary to use the SAD.
In addition to providing this type of interface for application definition files, the SAD offers the same editing approach for maintaining r/w rules and EDDs. While you can edit an EDD with the SAD, the name of the EDD is not stored in an application definition, because application definitions don't include names of EDDs. You can edit an EDD with the SAD without ever specifying an application name or file.
Personally, I never use the SAD for several reasons:
1) I often create a new application in an application definition file, rule in a rules file, or element definition in an EDD by copying an existing one and the one-at-a-time editing style of the SAD doesn't support copying.
2) Since application definition files and EDDs are structured documents, the Structure View and Element Catalog provide the user with the same pick-from-a-list options without requiring the user to learn a new editing approach that I find tedious. When editing any structured document, I find it convenient to use the smart catalogs, invoked by Ctrl-1, Ctrl-2, and Ctrl-3, that respectively allow the user to insert, wrap, or change elements by typing an initial prefix of their element tags.
While read/write rules can be stored in text files, they can also be stored in any kind of file that FM can read, including FM files. Such an FM file can be structured or not. I maintain a structured template for r/w rules, which allows me to group them into sections, to add comments, and reminds me of the exact syntax of various rules as well as the names of various properties. Using structured rules, I don't need any of the features the SAD offers.
I also have my own EDD and application definition file templates that change the formatting and add some additional features not provided in the original templates.
3) Even with unstructured r/w rules, the SAD discards any comments in an existing rules file. When teaching structured application development, I ask students whether they want to use the SAD that comes with FM or my structured template. Students who initially want to start with the SAD, often change their minds when they learn that the SAD does not support or preserve comments.
4) The pull-down menu approach is fine for situations in which I want to specify values one at a time. For the information in any of the files edited with the SAD, I'd much rather view as much information as fits on my screen at once.
P. S. My website is woefully out of date. When I have time, I will update the templates I mentioned above and post them there. In the meantime, feel free to contact me off-list (by clicking on my name at the top of this message) to request copies of their current states.