Re: [xsl] Namespace conflicts processing Word documents

Subject: Re: [xsl] Namespace conflicts processing Word documents
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Mon, 06 Oct 2008 12:30:51 -0400
At 2008-10-06 16:52 +0100, Peter Flynn wrote:
Syntactically, yes. Semantically, a paragraph is a paragraph is a paragraph (unless it's a heading, or a list item -- but those are just qualified paragraphs in Word :-)
Right, so I can have two otherwise identical stylesheets, one declaring the WordML w: namespace and the other declaring the OOXML w: namespace, with both using the identical
<xsl:template match="w:p[w:pPr[w:pStyle[@w:val='Heading1']]]">
but I can't have a shell stylesheet for each namespace which both import/include the template code from a common (shared) file, because (a) namespaces don't get inherited into imports/includes, and (b) the common file will necessarily lack any namespace declaration for w: and will therefore not be well-formed.

OK. So long as I wasn't missing a trick there.

Well, if they are going to be so very identical, use XSLT 2.0 and the following:

   <xsl:template match="*:p[*:pPr[*:pStyle[@*:val='Heading1']]]">

... and take the risk that a <p> is a <p> is a <p>.

I hope this helps.

. . . . . . . . . . . . Ken

-- Upcoming XSLT/XSL-FO hands-on courses: Wellington, NZ 2009-01 Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video Video sample lesson: Video course overview: G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Crane Softwrights Ltd. Male Cancer Awareness Nov'07 Legal business disclaimers:

Current Thread