[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [docbook-apps] Alternative to entities?
Hi, I an using Saxon 6.5.3 / FOP for PDF rendering of DocBook. After introducing XInclude instead of entities, do I need to preprocess the docbook document before passing it to the Saxon or will Saxon take care of the XIncludes for me? Regards, Navin On Mon, 24 Jan 2005 11:24:29 +0000, Gurra Green <gurra_green@hotmail.com> wrote: > > Bringing up a thread from last week... > > I've introduced the XInclude mechanism as a way of replacing entities among > my collueages. I have collected a number of phrases in a file > constant_strings.xml and references them with > > <xi:include > href="../common_chapters/constant_strings.xml" > xpointer="def_product_name" > xmlns:xi="http://www.w3.org/2001/XInclude" > /> > > Now the documents do not validate anymore; > ../common_chapters/constant_strings.xml:29: element phrase: validity error : > ID def_product_name already defined > > The text above is from xmllint which we run as a step in the daily builds of > .pdf. The message will break the build. A similar message is written in > XMLMind which has a validation tab in the GUI. > According to the XMLMind tutorial already mentioned in this thread the > warning: > "You can safely ignore this warning. It is reported when a reference to an > external element has been pasted several times in the same modular > document." > > The daily build problem can possibly be avoided by some wrapper between the > gnumake and xmllint, filtering the message (although I am NOT found of such > solution) but the interactive part of the problem still remains; having 200 > messages that always should be ignored will inevitablely make people stop > looking at the warning messages, and real problems will pass through. > > Anybody having any ideas on this? At the moment I think we'll have to back > on the XInclude way of solving my root problem and use the sed solution > outside of the DocBook knowledge, but thtere might be something else to do? > > /Gurra > > >From: "Peter Ring" <PRI@magnus.dk> > >To: "Jirka Kosek" <jirka@kosek.cz>,<davep@dpawson.co.uk> > >CC: "Gurra Green" <gurra_green@hotmail.com>,"Docbook-Apps" > ><docbook-apps@lists.oasis-open.org> > >Subject: RE: [docbook-apps] Alternative to entities? > >Date: Tue, 18 Jan 2005 14:32:51 +0100 > > > >Give it a try. In my experience, XInclude is well integrated in XXE. > > > >First, on the Options | Edit tab, you'd have selected Type of document > >reference: 'XInclude' or 'Entity when possible, XInclude otherwise'. > > > >Then you could go along like this: > >1) open both entities.xml and the document that you are authoring > >2) select the element in entities.xml that you want to reference > >3) select Edit | Document Reference | Copy as Reference or type > >Ctrl+Shift+C > >4a) to insert an inline element, set the insertion point in your document > >and type Ctrl+V > >4b) to insert a block element, set the insertion point in your document and > >type Ctrl+U (paste before) or Ctrl+W (paste after). > > > >There's a tutorial [1]. > > > >The reference could look like this > > > > <xi:include href="entties.xml" > >xmlns:xi="http://www.w3.org/2001/XInclude" > > xpointer="productname" /> > > > >or > > > > <xi:include href="entties.xml" > >xmlns:xi="http://www.w3.org/2001/XInclude" > > xpointer="element(productname)" /> > > > >or > > > > <xi:include href="entties.xml" > >xmlns:xi="http://www.w3.org/2001/XInclude" > > xpointer="xpointer(id('productname'))" /> > > > >or > > > > <xi:include href="entties.xml" > >xmlns:xi="http://www.w3.org/2001/XInclude" > > xpointer="element(/1/2/3)" /> > > > >AFAIK, there's a couple of limitations. Not all off the XPointer scheme is > >supported; the XPointer expression must yield a result infoset with one > >node; and one particular feature that I miss > > > > <xi:include href="some-source-code-or-xml-file" > >xmlns:xi="http://www.w3.org/2001/XInclude" > > parse="text"> > > > >XXE will quote the included file as it is supposed to, but the reference > >will be gone, replaced by the quoted content of the included file. > > > >[1] http://www.xmlmind.com/xmleditor/tutorial.html#id.s2 > > > >kind regards > >Peter Ring > > > > > -----Original Message----- > > > From: Jirka Kosek [mailto:jirka@kosek.cz] > > > Sent: 17. januar 2005 19:52 > > > To: davep@dpawson.co.uk > > > Cc: Gurra Green; Docbook-Apps > > > Subject: Re: [docbook-apps] Alternative to entities? > > > > > > > > > Dave Pawson wrote: > > > > > > > Not speaking from experience. > > > > > > > > If an xinclude aware processor is used, > > > > could that stand in for XML entities Jirka? > > > > > > Yep, you can use something like > > > > > > <xi:include href="entities.xml#productname"/> > > > > > > to pull element from external file entities.xml: > > > > > > <root> > > > <phrase xml:id="productname">SuperSoft v3.5</phrase> > > > ... > > > </root> > > > > > > But as you can see XInclude is quite verbose in this case and I'm not > > > sure whether XXE can deal with such XIncludes. > > > > > > -- > > > ------------------------------------------------------------------ > > > Jirka Kosek e-mail: jirka@kosek.cz http://www.kosek.cz > > > ------------------------------------------------------------------ > > > Profesionální školení a poradenství v oblasti technologií XML. > > > Podívejte se na náš nově spuštěný web http://DocBook.cz > > > Podrobný přehled školení http://xmlguru.cz/skoleni/ > > > ------------------------------------------------------------------ > > > > > > > > _________________________________________________________________ > Want to block unwanted pop-ups? Download the free MSN Toolbar now! > http://toolbar.msn.co.uk/ > >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]