[xsl] Using XSLT to add markup to a document

Subject: [xsl] Using XSLT to add markup to a document
From: Jim Melton <jim.melton@xxxxxxx>
Date: Thu, 03 Jul 2003 14:27:36 -0600
Gentlepeople,

I'm struggling with a problem that I fear isn't easily solved with XSLT, but there are many experts on this list who might be able to help. The brief summary of my problem is that I want to find certain words that appear in paragraphs throughout a very large (XML) document and mark up those words without making any other changes to my document.

For example, consider a document with the following fragment:

<para>
This is a sample document that deals with markup of <emph>text</emph>.
</para>
<para>
When one applies <emph>markup</emph> to a large document, one is faced with a <def>time-consuming</def> effort.
</para>


If one of the words to which I wish to apply markup is "markup" and another is "document", then I would want the result to be something like this:

<para>
This is a sample <special>document</special> that deals with <special>markup</special> of <emph>text</emph>.
</para>
<para>
When one applies <emph><special>markup</special></emph> to a large <special>document</special>, one is faced with a <def>time-consuming</def> effort.
</para>


As you see from this example, I want to *add* markup to the words I have found where they appear in my result tree, but copy everything else in my document to the output tree unchanged.

I tend to use Saxon (currently using 6.5.2) as my primary XSLT engine, but I also have Microsoft's MSXML 4.0 (and could undoubtedly find others if required to do so).

Any guidance or advice?

Many thanks,
   Jim
========================================================================
Jim Melton --- Editor of ISO/IEC 9075-* (SQL)     Phone: +1.801.942.0144
Oracle Corporation            Oracle Email: mailto:jim.melton@xxxxxxxxxx
1930 Viscounti Drive          Standards email: mailto:jim.melton@xxxxxxx
Sandy, UT 84093-1063              Personal email: mailto:jim@xxxxxxxxxxx
USA                                                Fax : +1.801.942.3345
========================================================================
=  Facts are facts.  However, any opinions expressed are the opinions  =
=  only of myself and may or may not reflect the opinions of anybody   =
=  else with whom I may or may not have discussed the issues at hand.  =
========================================================================


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list



Current Thread