F
Foxpointe
Given some arbitrary XHTML, I'd like to obtain a 'simplified' XHTML
result which strips out a large subset of standard elements and
attributes - but not all. The main things I would like to accomplish:
1) Provide a list of elements/attributes to be stripped (i.e. everything
else should be passed through) or those that should be passed through
(i.e. everything else should be stripped) which would be applied
recursively.
2) If an element is to be stripped, pass through any enclosed text
and/or elements (the elements should in turn be processed recursively by
step 1.)
3) If after stripping the resulting element is empty, eliminate it
completely.
For example, this snippet:
<h1>
<a href='chap2.htm'>
<img src="image.gif" alt="Thumbnail" border=0>
</a>
</h1>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top>
<a href="chap1.htm">
<img src="prev.gif" alt="Previous" border=0>
</a>
</td>
<td>
<style type="text/css">
</style>
</td>
<td width=171 align=center valign=top>
<b>
<font face="ariel,helvetica,helv,sanserif" size="-1">Chapter 2 Getting
Started</font>
</b>
</td>
<td width=172 align=right valign=top>
<a href="chap3.htm">
<img src="next.gif" alt="Next" border=0>
</a>
</td>
</tr>
</table>
Would become:
<a href='chap2.htm'>
<img src="image.gif">
</a>
<table>
<tr>
<td>
<a href="chap1.htm">
<img src="prev.gif" alt="Previous">
</a>
</td>
<td>
Chapter 2 Getting Started
</td>
<td>
<a href="chap3.htm">
<img src="next.gif" alt="Next">
</a>
</td>
</tr>
</table>
Is XSLT the best means to accomplish this? Suggestions on how to get
this done (esp. examples that could be used as a starting point) are
appreciated.
Thanks,
Phil
result which strips out a large subset of standard elements and
attributes - but not all. The main things I would like to accomplish:
1) Provide a list of elements/attributes to be stripped (i.e. everything
else should be passed through) or those that should be passed through
(i.e. everything else should be stripped) which would be applied
recursively.
2) If an element is to be stripped, pass through any enclosed text
and/or elements (the elements should in turn be processed recursively by
step 1.)
3) If after stripping the resulting element is empty, eliminate it
completely.
For example, this snippet:
<h1>
<a href='chap2.htm'>
<img src="image.gif" alt="Thumbnail" border=0>
</a>
</h1>
<table width=515 border=0 cellpadding=0 cellspacing=0>
<tr>
<td width=172 align=left valign=top>
<a href="chap1.htm">
<img src="prev.gif" alt="Previous" border=0>
</a>
</td>
<td>
<style type="text/css">
</style>
</td>
<td width=171 align=center valign=top>
<b>
<font face="ariel,helvetica,helv,sanserif" size="-1">Chapter 2 Getting
Started</font>
</b>
</td>
<td width=172 align=right valign=top>
<a href="chap3.htm">
<img src="next.gif" alt="Next" border=0>
</a>
</td>
</tr>
</table>
Would become:
<a href='chap2.htm'>
<img src="image.gif">
</a>
<table>
<tr>
<td>
<a href="chap1.htm">
<img src="prev.gif" alt="Previous">
</a>
</td>
<td>
Chapter 2 Getting Started
</td>
<td>
<a href="chap3.htm">
<img src="next.gif" alt="Next">
</a>
</td>
</tr>
</table>
Is XSLT the best means to accomplish this? Suggestions on how to get
this done (esp. examples that could be used as a starting point) are
appreciated.
Thanks,
Phil