Erstat indhold af node med XSL
Jeg sidder med et XML-dokument der indeholder nogle tekst-objekter. Tekstobjekterne kan også indeholde MathML-objekter<doc>
<text>Hejdi ho</text>
<text>Formlen for hydrogen: <msup><mi>H</mi><mn>2</mn></msup></text>
</doc>
Når jeg så transformerer det med XSL plejer jeg at udskrive med <p><xsl:copy-of select="node()"/></p>
Så kommer der i output-dokumentet:
<p>Hejdi ho</p>
<p>Formlen for hydrogen: <msup><mi>H</mi><mn>2</mn></msup></p>
Problemet er så at jeg gerne vil have defineret et andet namespace til alle mathml-objekterne (dem der starter med <m) Er det muligt at køre den gennem med translate(<xsl:copy-of select="node()"/>,'<m','<math:m')
Det kunne vel godt lade sig gøre på denne måde, men man kan jo ikke putte et XML/XSL-objekt ind som paramenter til funktionen, så er der en anden måde at gøre det på, eller hvordan løser jeg det?
Vil gerne undgå at skulle skrive namespaces ind i selve XML-dokumentet så længe jeg kan holde mig til at tag-navne ikke måde starte med m medmindre det er mathml.