Apologies to Peter Flynn for sending this to him a minute ago instead to the list. We also struggled with, but succeeded some, with Framemaker+SGML. We wanted to use it with the EAD DTD at Yale University's Archives and Manuscripts department of the library where I was asked to help as a consultant, albeit knowing nothing about Framemaker to start with. I'm not yet convinced one can't still do good things with it but we ended up stalling. I think I can contribute to Hope Greenberg's initial inquiries and Peter Flynn's response. I'm confused about the thread regarding Syd Bauman's and Elaine Brennan's comments about FrameScript and Maker Markup Language. Perhaps if I better understood Syd's process his comments it would help us here at Yale. I related so easily to Hope's thought "but I AM the developer!" That was the thought in my colleague at Yale when they called me in and it was my thought when I hit the same intial wall as Hope. We did make some progress. We managed to compile the EDD from the EAD DTD. (If anybody is looking for an EAD EDD, we have it. Does anybody have a TEI EDD?) Where we got stalled was when we ran into formatting requirements which we couldn't manage with the EDD definitions or the read-write rules. At that point we needed to work with the C++ API. We did begin this and made some progress but slowed down. The rest of this message is mostly a outline "how-to" as we discovered it to be with a few comments on Adobe's support in general. Unless you are struggling with creating an EDD and beyond you probably don't want to read any more. Also its a "how-to" as best I remember it since last fall beginning at the start of 1999. To create the EDD, which I consider fundamentally compiling the DTD, we didn't need to have an instance in the usual sense of an instance as I take Peter Flynn to suggest. What we did need is an "SGML Application File" and, almost incidentally but essentially, a template. I'll explain more below. The most important key for us was finding out how to navigate the documentation. I would second all of Peter Flynn's remarks and also add that you have to understand that most of the documentation is for Framemaker without the +SGML. The key documentation doesn't require a url. It should have been installed from the CD. Forget "Contents" or "Index". Go to "Online Manuals" and then choose "Framemaker+SGML Developer's Guide" and in that go to Chapter 3, "Creating an SGML Application". Particularly, find the section "Create an Initial EDD from your DTD, if you have one." and "Pieces of an SGML Application". The key "piece" and the second most important key concept for us is the "sgmlapps.fm" file. In this file you provide some values like your doctype and pointers to a few key items like your sgml declaration, your dtd, and the "almost incidental" template. The file is formatted like an SGML instance with elements that act like variables. Generally, you should use the provided sgmlapps.fm file as a starter. Definitions for more than one DTD can reside in the same sgmlapps.fm file. The provided file has definitions for docbook which can act as a model. After you've filled in your sgmlapps.fm assignments, to compile the DTD, it is not much harder then to do as they say go to File->Developer's Tools->Open DTD. This creates an EDD which is a nice looking file also formatted like a sgml instance and also, importantly, which is imported into your template. The template is used, for one thing, to store page setup information, but if you don't have any of this to start with, it will appear to be an empty file. However, the template "secretly" holds all the rules of your EDD. When you open an sgml instance, Framemaker reads the doctype declaration or doctype element and associates it with the correct template via the sgmlapps.fm file. It doesn't use the EDD at all but refers to the rules stored in the template. However there is a reason to keep the EDD around which is that the EDD is more than a compiled DTD, it is also a stylesheet. Writing the stylesheet definitions in the EDD is fun and progress goes pretty quickly. Each time you make a change however you must manully reimport the EDD into the instance, and, if you want the changes to effect new instances, into the template. The EDD as stylesheet starts to be less fun when you want to do something it can't. When you get to that point, you have some options with the read write rules. The documentation talks alot about the read-write rules, but we didn't manage to do much with them. One confusing point is that they discuss creating read-write rules as if it were an essentail step before compiling the DTD. This isn't true unless you want your want your EDD to have different content rules or to alias element names. When you can't accomplish formatting with either the EDD or the read-write rules you need to use the C++ API. This is free, but you need a compiler of which only Visual C++ is garunteed to work, and though you can get all the documentation for free on the web, you can't get support without paying to join the developer's network. You also need to know how to program with C++. Support is another problem. Even regardless of API support, at least as of last fall, as far as I could tell, Adobe had only one SGML support person. When you call for help they try to route you through a three-tier system of expertise. At the top is "Janice" in Georgia and she's the only one who knows SGML. She's good but often can only tell you what Framemaker can't do. It is also very annoying to be routed through their system, which almost always means waiting to be called or emailed back. You learn to throw out words like "entities" and "declarations" and "content models" and the routing goes faster. Another problem, is that Framemaker, amazingly to me, at least as reported to me by their help personnel, uses "sgmls" as its parser for importing the DTD, not "nsgmls" or anything else uptodate. This did create some problems for us relative certain sgml constructs that sgmls doesn't support. Doug Doug Black West Rock Visions 137 Alden Avenue New Haven, CT 06515 Phone: (203) 389-0184 Fax: (203) 389-2841 Email: [log in to unmask] Hope Greenberg said: > We've used Author/Editor, WordPerfect SGML, XMetaL, and a few > freebies. Now it's time to try the monster, FrameMaker+SGML. The > first pass was not propitious. After installing I went looking for > where to place the DTD or to compile a proprietary rules file > (called an "application" by FrameMaker) and found the ominous > instructions: "a developer typically sets up this application for > you" but no instructions on how the developer (that would be me!) > does that. According to the manual, that information is in the > "Developer's Guide" online at the Adobe site. 45 minutes, multiple > searches and three phone calls later, the Adobe tech support guy is > going to TRY to find the URL and e-mail it to me. Peter Flynn said: > > The process is indeed frustrating, probably the most complex and > forbidding of any SGML system I have used. It's so lengthy that I > ducked out of describing the process in detail in my book (pp.364-366) > simply on grounds of space. It's actually in the online documentation > that comes with the package, under "setting up an EDD", but it's > confused by the fact that (a) the docs are trying to teach SGML > concepts at the same time as tell you how to load a DTD, and (b) they > can't make up their minds whether you are trying to create an EDD from > an existing Frame document that you want to export in SGML, or load an > existing document from SGML into Frame. So far as I could see, you do > have to have an existing SGML instance to do the job with: you can't > load a DTD alone, it has to have an instance in order for it to allow > you to initiate the process. > > An EDD is a mixed bag: setting it up involves compiling the DTD, > specifying the display styles, and creating any read/write rules (an > internal "feature" which allows you to bend the SGML on input or > output: the assumption being that you really don't want all this SGML > restrictiveness, you're actually trying to get away from SGML into > Frame's own document model :-). > > > But all that aside, does anyone have any advice on using > > FrameMaker+SGML (other than "run away!!")? > > Unless you need Frame+SGML for some other purpose, I'd leave it. It > makes a poor editor, although its formatting is not too bad. >Syd Bauman said: > > This all used to be done reasonably happily on a Macintosh. Now > the registrar's office has gone to PCs, so I'm busy trying to port > this stuff. Sigh. Not too big a deal to port the perl (besides, I > get the chance to clean up some embarrassingly clunky code I wrote > years ago :-), but I don't think there's an equivalent of > AppleScript on WindozeNT with which to automate FrameMaker. Does > anyone know of such a thing? Elaine Brennan said: > > try FrameScript -- http://www.frametools.com/framescr.htm -- $149.95, > orderable and downloadable. There are also a fairly large number of > scripts freely available on the web.