Charles Palmer wrote: > Thanks for your reply. I've been trying your tutorial (successfully) and > then tried to move it across to Forrest, which is what I am using, with > XMLMind as an editor. I am copying you the email I have sent to the > Forrest email group - so that you can see my problems and to see if you > have any suggestions. > > Even if the Forrest people can suggest how to get the XInclude mechanism > working with the HTML files, I still have to try this with the Forrest > native document type. Do you think that will be any different?
I'm sorry. I really don't know anything about the Forrest native document type. Unless you or somebody else take the time to write a decent XXE configuration for Forrest (95% of the effort will be on the CSS style sheet), I'm affraid you'll find XXE unusable with the Forrest native document type. > Incidentally, you write: "This is a limitation of XXE we do not plan to > remove. (We thought this limitation was well documented!)" - well maybe > it is clear here, but if you look in the Help tab at the top of the > XMLMind program there is some text there that talks about "managed > entities", which I now see are probably not the same thing as "managed > <!ENTITIES>". So maybe it is not entirely clear, and maybe it would be > good if the documentation embedded in the program was identical to the > documentation on your website - then people could just look in the one > place for help. To our knowledge the documentation on your website is identical to the documentation embedded in the program. In a nutshell, XXE has very limited support for external entities. That is, what follows works fine with XXE: --- <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ <!ENTITY fileMenu SYSTEM "fileMenu.xml"> <!ENTITY selectMenu SYSTEM "selectMenu.xml"> <!ENTITY editMenu SYSTEM "editMenu.xml"> <!ENTITY searchMenu SYSTEM "searchMenu.xml"> <!ENTITY styleMenu SYSTEM "styleMenu.xml"> <!ENTITY toolsMenu SYSTEM "toolsMenu.xml"> <!ENTITY xmlMenu SYSTEM "xmlMenu.xml"> <!ENTITY optionsMenu SYSTEM "optionsMenu.xml"> <!ENTITY windowMenu SYSTEM "windowMenu.xml"> <!ENTITY helpMenu SYSTEM "helpMenu.xml"> <!ENTITY toolBar SYSTEM "toolBar.xml"> <!ENTITY nodePath SYSTEM "nodePath.xml"> <!ENTITY selectToolBar SYSTEM "selectToolBar.xml"> <!ENTITY editAttributeTool SYSTEM "editAttributeTool.xml"> <!ENTITY checkValidityTool SYSTEM "checkValidityTool.xml"> <!ENTITY checkSpellingTool SYSTEM "checkSpellingTool.xml"> <!ENTITY searchReplaceTool SYSTEM "searchReplaceTool.xml"> <!ENTITY characterTool SYSTEM "characterTool.xml"> <!ENTITY editTool SYSTEM "editTool.xml"> <!ENTITY clipboardContent SYSTEM "clipboardContent.xml"> <!ENTITY validityState SYSTEM "validityState.xml"> <!ENTITY optionsDialog SYSTEM "optionsDialog.xml"> <!ENTITY preferredPrefixDialog SYSTEM "preferredPrefixDialog.xml"> <!ENTITY urlChooserDialog SYSTEM "urlChooserDialog.xml"> <!ENTITY resourcesDialog SYSTEM "resourcesDialog.xml"> ]> <article> <articleinfo> <title>XMLmind XML Editor - Online Help</title> <author> <firstname>Hussein</firstname> <surname>Shafie</surname> <affiliation> <orgname>Pixware</orgname> <address>Immeuble Capricorne, <street>23 rue Colbert</street>, <postcode>78180</postcode> <city>Montigny Le Bretonneux</city>, <country>France</country>, Phone: <phone>+33 (0)1 30 60 07 00</phone>, Fax: <fax>+33 (0)1 30 96 05 23</fax>, Web: <otheraddr><ulink url="http://www.xmlmind.com/xmleditor">www.xmlmind.com/xmleditor</ulink></otheraddr> Email: <email>xmleditor-support at xmlmind.com</email></address> </affiliation> </author> <pubdate>May 10, 2004</pubdate> <abstract> <para>This online help is essentially the reference manual of XMLmind XML Editor (XXE for short) menus, tool bars and dialog boxes.</para> </abstract> </articleinfo> <section id="menuBar"> <title>Menus</title> &fileMenu; &selectMenu; &editMenu; &searchMenu; &styleMenu; &toolsMenu; &xmlMenu; &optionsMenu; &windowMenu; &helpMenu; </section> &toolBar; <section id="nodeBar"> <title>Node path/node selection bar</title> &nodePath; &selectToolBar; </section> <section id="tools"> <title>Tools</title> &editAttributeTool; &checkValidityTool; &checkSpellingTool; &searchReplaceTool; &characterTool; &editTool; </section> <section id="statusBar"> <title>Status bar</title> <tip> <para>Right-clicking on the message area of the status displays the history of messages displayed there. Last displayed message is the first in the list.</para> </tip> &clipboardContent; &validityState; </section> <section id="dialogBoxes"> <title>Dialog boxes</title> &optionsDialog; &preferredPrefixDialog; &urlChooserDialog; &resourcesDialog; </section> </article> --- because all document modules just contain a single element and nothing else (really *nothing* else). Example, helpMenu.xml. Notice no <!DOCTYPE>, no comment or PI, just <section>: --- <?xml version="1.0" encoding="ISO-8859-1"?> <section id="help_menu"> <title>Help menu</title> <variablelist> <varlistentry id="help"> <term><guimenuitem>Help</guimenuitem></term> <listitem> <para>Displays the help browser.</para> </listitem> </varlistentry> <varlistentry id="contextualHelp"> <term><guimenuitem>Contextual Help...</guimenuitem></term> <listitem> <para>To get help about a specific GUI component of XXE, execute this command (the cursor changes signaling that you are now in contextual help mode) and then click on that component.</para> </listitem> </varlistentry> <varlistentry id="showContentModel"> <term><guimenu<?xml version="1.0" encoding="ISO-8859-1"?> <section id="help_menu"> <title>Help menu</title> <variablelist> <varlistentry id="help"> <term><guimenuitem>Help</guimenuitem></term> <listitem> <para>Displays the help browser.</para> </listitem> </varlistentry> <varlistentry id="contextualHelp"> <term><guimenuitem>Contextual Help...</guimenuitem></term> <listitem> <para>To get help about a specific GUI component of XXE, execute this command (the cursor changes signaling that you are now in contextual help mode) and then click on that component.</para> </listitem> </varlistentry> <varlistentry id="showContentModel"> <term><guimenuitem>Show Content Model</guimenuitem></term> <listitem> <para>Opens a window containing an hypertext reference manual listing all elements and attributes specified in the XML schema or DTD of the document being edited.</para> <para>This manual, which is organized like "<citetitle>DocBook: The Definitive Guide</citetitle>" by Norman Walsh and al., is intended to help content authors understand the XML schema or DTD of the document being edited.</para> </listitem> </varlistentry> <varlistentry id="listBindings"> <term><guimenuitem>Mouse and Key Bindings</guimenuitem></term> <listitem> <para>Displays a dialog box containing the mouse and key <firstterm>bindings</firstterm> (that is, the mouse or keyboard user interaction used to trigger a command) that can be used in current view.</para> <note> <para>A XXE configuration file, which is a customization of XXE for a specific XML application, can add new commands and/or new mouse and keys bindings to the default set.</para> <para>Therefore the information displayed in this dialog box depends on the XML application associated to current view (the last field, if any, of the title bar of the view).</para> </note> </listitem> </varlistentry> <varlistentry id="listPlugins"> <term><guimenuitem>Plug-ins</guimenuitem></term> <listitem> <para>Displays a dialog box containing information about all plug-ins currently loaded into XXE.</para> </listitem> </varlistentry> <varlistentry id="about"> <term><guimenuitem>About XMLmind XML Editor</guimenuitem></term> <listitem> <para>Displays the customary <guilabel>About</guilabel> dialog box.</para> </listitem> </varlistentry> </variablelist> </section>item>Show Content Model</guimenuitem></term> <listitem> <para>Opens a window containing an hypertext reference manual listing all elements and attributes specified in the XML schema or DTD of the document being edited.</para> <para>This manual, which is organized like "<citetitle>DocBook: The Definitive Guide</citetitle>" by Norman Walsh and al., is intended to help content authors understand the XML schema or DTD of the document being edited.</para> </listitem> </varlistentry> <varlistentry id="listBindings"> <term><guimenuitem>Mouse and Key Bindings</guimenuitem></term> <listitem> <para>Displays a dialog box containing the mouse and key <firstterm>bindings</firstterm> (that is, the mouse or keyboard user interaction used to trigger a command) that can be used in current view.</para> <note> <para>A XXE configuration file, which is a customization of XXE for a specific XML application, can add new commands and/or new mouse and keys bindings to the default set.</para> <para>Therefore the information displayed in this dialog box depends on the XML application associated to current view (the last field, if any, of the title bar of the view).</para> </note> </listitem> </varlistentry> <varlistentry id="listPlugins"> <term><guimenuitem>Plug-ins</guimenuitem></term> <listitem> <para>Displays a dialog box containing information about all plug-ins currently loaded into XXE.</para> </listitem> </varlistentry> <varlistentry id="about"> <term><guimenuitem>About XMLmind XML Editor</guimenuitem></term> <listitem> <para>Displays the customary <guilabel>About</guilabel> dialog box.</para> </listitem> </varlistentry> </variablelist> </section> --- This type of external entity references are said to be ''managed'' by XXE. *Any* other type of entity references, internal or external, are just expanded by XXE. Notes: * Character entities are handled very differently. * Non-parsed entities and notations, which are not related to the above parsed entities, are completly ignored by XXE

