xsl-list
[Top] [All Lists]

RE: Using XSLT to add markup to a document

2003-07-03 14:39:41
This kind of task - sometimes called "up-conversion" - becomes much
easier with XSLT 2.0 facilities such as regular expressions and grouping
instructions. If it's a one-off task I'd strongly suggest using Saxon
7.x which offers these features.

Michael Kay

-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com 
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of 
Jim Melton
Sent: 03 July 2003 21:28
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Cc: jim(_dot_)melton(_at_)acm(_dot_)org
Subject: [xsl] Using XSLT to add markup to a document


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(_dot_)melton(_at_)oracle(_dot_)com
1930 Viscounti Drive          
Standards email: mailto:jim(_dot_)melton(_at_)acm(_dot_)org
Sandy, UT 84093-1063              Personal email: 
mailto:jim(_at_)melton(_dot_)name
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


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