[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: Scope of xml source, includes, and inline xml
> 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"/> The expression (data/foo = $foo_test//foo) returns the boolean value true, indicating that a match exists. xsl:apply-templates can only be applied to nodes, not to booleans. If you want to apply templates to all nodes in <data> that have a counterpart in <foo_test>, you can use: <xsl:apply-templates select="data/foo[. = $foo_test/foo_test/foo]"/> > > Resulting in a match on: > foo = 3; and foo = 4 Where did you get foo = 4 from? > > > 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??? --> Assign a global variable to the "main XML source" using <xsl:variable name="root" select="/"/> Michael Kay http://www.saxonica.com/
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|