At 05:45 AM 8/17/2006, Wim Hooghwinkel \(Scriptware\) wrote:
when FM saves an XML file, it writes the graphics as entitys in the
header of the XML.

Can this be changed - to keep the graphic references in the XML body?

Problem is, that we want to use some XSLT to preprocess or postprocess
the XML files and it seems to be impossible to keep the header with the
entity references. Has anyone yet a work around for this?  (FM 7.2).

Wim,

1) FM can export a graphic using either an ENTITY attribute (default name is entity) or a CDATA attribute (default name is file). The value of the former is the name of an unparsed entity whose system identifier names the graphic file; the value of the latter is the name of the graphic file. If the DTD declares both attributes, FM uses the ENTITY attribute.

You can specify the attribute names with read/write rules such as:

    element "image" {
       is fm graphic element;
       attribute "graphicfile" is fm property file;
       attribute "graphicentity" is fm property entity;
       }

These rules allow FM to import files that use either graphicfile or graphicentity, but on export it would always use graphicentity. If you want it to export only graphicfile, remove the rule for graphicentity. If you want to export using graphicfile, but to be able to import either form, you'll need to use different rules for opening XML documents and saving documents as XML.

If your DTD happens to declare an ENTITY attribute named entity and you don't want FM to use it for exporting graphics, use the rule:

    attribute "entity" is fm attribute;

2) While XSLT cannot simply copy the internal DTD subset of the document it is processing, it can generate a new one with entity declarations equivalent to those in the original. Use the function unparsed-entity-uri to write such a transform.

        --Lynne


Lynne A. Price
Text Structure Consulting, Inc.
Specializing in structured FrameMaker consulting, application development, and training
[EMAIL PROTECTED]            http://www.txstruct.com
voice/fax: (510) 583-1505 cell phone: (510) 421-2284

_______________________________________________


You are currently subscribed to Framers as [EMAIL PROTECTED]

Send list messages to [EMAIL PROTECTED]

To unsubscribe send a blank email to [EMAIL PROTECTED]
or visit 
http://lists.frameusers.com/mailman/options/framers/archive%40mail-archive.com

Send administrative questions to [EMAIL PROTECTED] Visit
http://www.frameusers.com/ for more resources and info.

Reply via email to