Subject: Re: [xsl] Scope of xml source, includes, and inline xml From: Karl Stubsjoen <kstubs@xxxxxxxxx> Date: Thu, 31 Mar 2005 13:29:24 -0700 |
Sorry, resulting in match of: foo = 3; and foo=99 On Thu, 31 Mar 2005 13:25:40 -0700, Karl Stubsjoen <kstubs@xxxxxxxxx> wrote: > So let me pose a simple example. > The following xml document is our main document, which I still don't > have the terminology for. It might look like: > > <data> > <foo>1</foo> > <foo>3</foo> > <foo>5</foo> > <foo>2</foo> > <foo>99</foo> > </data> > > Lets say our XSLT creates a global variable "foo_test" and it imports > an external data source which looks like: > > <foo_test> > <foo>3</foo> > <foo>99</foo> > </test_foo> > > Will the following expression work: > <xsl:apply-templates select="data/foo = $foo_test//foo"/> > > Resulting in a match on: > foo = 3; and foo = 4 > > Now, let do the reverse of this and match on all $foot_test foo > elements so we have: > <xsl:apply-templates select="$foo_test//foo" mode="my_external_foo"/> > > And we have the template: > <xsl:template match="foo" mode="my_external_foo"> > <!-- AT THIS POINT.. > HOW DO WE REFER BACK TO MAIN XML SOURCE??? --> > > <!-- mabye, but isn't /data/foo out of context??? --> > <xsl:for-each select="/data/foo"> > <xsl:if test=".=current()/."> > <!-- I'M ASSUMING WE NEVER MAKE IT HERE --> > </xsl:if> > </xsl:for-each> > </xsl:template> > > > On Thu, 31 Mar 2005 20:55:11 +0100, Michael Kay <mike@xxxxxxxxxxxx> wrote: > > > I am discovering such... I think a better approach is to import the > > > xml into a variable at the parent level, so into > > > parent_xslt_document.xsl > > > Would you agree? > > > > Yes, I would always use global variables for this kind of thing. Or external > > "lookup.xml" files, read using the document() function. > > > > > > Also, since we are on the subject: > > > Is there such thing as cross-walking xml sources? Recently I tempted > > > to match all (as an example) AAA elements with a value of matching all > > > BBB element values where BBB xml Source is not the same as AAA's xml > > > source. AAA would be part of the original xml source (not sure how > > > you refer to that) where BBB is either an inline XML source "user data > > > element" or imported into the stylesheet into a variable, or passed in > > > as a parameter. > > > > I can't work out exactly what process you are describing, but it's certainly > > possible to join, compare, or merge data from multiple sources in XSLT. > > > > Michael Kay > > http://www.saxonica.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Scope of xml source, incl, Karl Stubsjoen | Thread | Re: [xsl] Scope of xml source, incl, David Carlisle |
[xsl] Combining two node Sets into , Williamson, Chris | Date | Re: Re[2]: [xsl] Transformation usi, M. David Peterson |
Month |