Well, Hussein, you will be happy to know (or maybe you won't... from
the tone of your voice maybe you definitely won't ...) that including
a "<detect>" element in the configuration file fixed me right up.

Uh huh...  cruft like "&__reference__ee3x38qi;" (it hurts just to
cut-and-paste it...) definitely stinks and I don't blame you for not
supporting that.  PH-E-E-E-WW!

But you see, that's not what I'm doing.  My document already(!) uses
"<xi:include>" to incorporate the elements into the master!  Let's
just say that I can do "Ctrl+Shift+C" (Copy as Reference, etc.) in my
sleep now.  (Well, truth be known, I finally wrote a few choice Perl
scripts, but that's another tale.)

What seems to have thrown it off is that XXE did not recognize that a
file that had no "<!DOCTYPE>" declaration, and that begins with a
"<refentry>" node instead of (say...) "<book>", contains DocBook
information.

This definitely needs to be mentioned in the FAQ, and there needs to
be a link to the documentation pages that you referred-to in this
email because otherwise I would not have found them.  e.g. "If you
encounter something that no longer works, read our <<update pages>>
(hotlink)."  Had this pathway existed (sufficiently plainly) I
probably would have found the answer for myself.

As for the future...  putting (say) "<!DOCTYPE>" declarations into a
few hundred files is short-work for a Perl script.  (But will this
confuse things if the file starts with "<refentry>?"  Only one way to
find out, I guess...)

I'm definitely cool with the idea of updating the documents to the
latest-and-greatest DocBook and to make them appropriately consistent
and up-to-date.  (I see from "grep"ping the document dir that some
files have DOCTYPE (v4.5) and many do not.)  I'll research how to do
that:  pointers are welcome; Perl is standing by.

Thanks for the quick follow-up.


On Thu, Jul 23, 2009 at 3:11 AM, Hussein Shafie<hussein at xmlmind.com> wrote:
> You did nothing wrong. I'm really sorry but you face a (documented)
> *regression* of XXE v4:
>
> Excerpts of Changes, 4.0 (July 21, 2008), Regressions,
> http://www.xmlmind.com/xmleditor/changes.html :
> ---
> References to external entities can no longer be used to compose modular
> documents.
> ---
>
> This implies that, for example, a chapter intended to be referenced as
> an external entity and as such, having no <!DOCTYPE>, is no longer
> recognized as being a DocBook document. Because it is ?no longer
> recognized as being a DocBook document, the chapter is no longer
> automatically associated to the DocBook DTD and to the DocBook CSS[*].
>
> We definitely gave up the support of authoring modular document using
> the references to external entities mechanism. We do not intent to
> remove this regression in the future.
>
> We are aware of the inconvenience this severe regression causes to many
> users and we apologize for this.
>
> In order to solve your problem:
>
> * You'll have to downgrade to XXE v3.
>
> * OR You'll have to use a text editor to convert all your references to
> external entities to XIncludes as explained here: Porting to XInclude,
> http://www.xmlmind.com/xmleditor/changes.html#porting_to_xinclude
>
> (While at it, why not convert your document to DocBook 5?)
>
> * OR You'll have to switch to another XML editor. Many other XML editors
> support out of the box modular DocBook 4 documents built using
> references to external entities. I mean, you are not stuck with
> proprietary software.
>
>
>
>
> ---
> [*] The stock DocBook 4 configuration contains the following detect
> configuration element and contains no dtd configuration element at all:
> ---
> ?<detect>
> ? ?<and>
> ? ? ?<rootElementNamespace xsi:nil="true" />
> ? ? ?<dtdPublicId substring="true">DTD DocBook</dtdPublicId>
> ? ? ?<not>
> ? ? ? ?<dtdPublicId substring="true">Simplified</dtdPublicId>
> ? ? ?</not>
> ? ?</and>
> ?</detect>
> ---
>
> If you add the following detect and dtd configuration elements to your
> DocBook 4 customization (~/.xxe4/addon/config/Docbook/docbook.xxe), this
> will override the stock detect element and this will restore, to
> certain extent and without support from XMLmind, XXE v3 behavior:
>
> ---
> ?<detect xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
> ? ?<and>
> ? ? ?<rootElementNamespace xsi:nil="true" />
> ? ? ?<not>
> ? ? ? ?<dtdPublicId substring="true">Simplified</dtdPublicId>
> ? ? ?</not>
> ? ? ?<or>
> ? ? ? ?<dtdPublicId substring="true">DTD DocBook</dtdPublicId>
> ? ? ? ?<and>
> ? ? ? ? ? <schemaType xsi:nil="true" />
> ? ? ? ? ? <or>
> ? ? ? ? ? ? ?<rootElementLocalName>part</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>chapter</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>refentry</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>appendix</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>glossary</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>section</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>sect1</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>sect2</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>sect3</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>book</rootElementLocalName>
> ? ? ? ? ? ? ?<rootElementLocalName>article</rootElementLocalName>
> ? ? ? ? ? </or>
> ? ? ? ?</and>
> ? ? ?</or>
> ? ?</and>
> ?</detect>
>
> ?<dtd publicId="-//OASIS//DTD DocBook XML V4.5//EN"
> ? ? ? systemId="xxe-config:docbook/dtd/V4.5/docbookx.dtd" />
> ---
>
> See http://www.xmlmind.com/xmleditor/_distrib/doc/configure/detect.html
>
> See http://www.xmlmind.com/xmleditor/_distrib/doc/configure/dtd.html
>
>
>
>
> Sundial Services wrote:
>> I have built a large Docbook reference-manual document with hundreds
>> of function-definition pages that have each been stored as separate
>> XML files which are referenced by the master document. ?All worked
>> fine untl I upgraded to xxe4. ?(This is a Linux system, and yes I did
>> detect that settings were now in the hidden-directory ".xxe4" instead
>> of ".xxe" and I did copy the "addons" from one to the other.)
>>
>> Now, when I open any of these separate files, they only open in
>> tree-view. ?(The master document opens in formatted view.)
>>
>> In my ".xxe4/addon/config/Docbook" I have the following "docbook.xxe" file:
>> [--SNIP!--]
>> <?xml version='1.0' encoding='ISO-8859-1'?>
>> <!--
>> ? ? ? ? This XXE-configuration file overrides specific things for
>> DocBook-type documents for the current user.
>> ? ? ? ? As you can see, it first includes the original configuration,
>> then overrides and augments certain
>> ? ? ? ? entries.
>> -->
>> <configuration name="DocBook"
>> ? xmlns="http://www.xmlmind.com/xmleditor/schema/configuration";
>> ? xmlns:cfg="http://www.xmlmind.com/xmleditor/schema/configuration";>
>> ? <include location="xxe-config:docbook/docbook.xxe"/>
>> ? <template name="Function Refentry (for ChimneySweep)"
>> ? ? ? ? ? ? location="template/refentry_function.xml" />
>> </configuration>
>> [--SNIP!--]
>>
>> I can see that this configuration file is being seen and processed.
>> By fiddling with various file-names in this file and then restarting
>> XXE, I furthermore know that both of the files referred-to in the
>> "location=" attributes do exist and are, at the appropriate times,
>> being found. ?The template-name appears in the list... but a new file
>> appears, once again, in Tree View only. ?Formatted views are neither
>> available nor offered.
>>
>> I emphasize that this once worked flawlessly: ?files appeared
>> formatted, in the text-editor view, and I was able to produce all of
>> those hundreds of files in just this way. ?But apparently that was XXE
>> 3, because the original hidden-dir was ".xxe" not ".xxe4."
>>
>> I haven't re-found the original documentation that once showed me how
>> to do this. ?The XML comment in that file is my own comment to
>> myself...
>>
>
>
>

Reply via email to