Re: Add element at the end of a variable group of elements

"Michele R Combs [email protected]" <[email protected]> Wed, 3 Mar 2021 14:27:36 -0000
Newsgroups gmane.text.xml.xsl.general.mulberrytech
Message-ID <[email protected]>
Are there any conditions for adding <moon> -- like, add <moon> only if <earth>?  Or do you want to add it 100% of the time, no matter what?

Michele

-----Original Message-----
From: Charles O'Connor [email protected] <[email protected]> 
Sent: Tuesday, March 2, 2021 7:01 PM
To: [email protected]
Subject: [xsl] Add element at the end of a variable group of elements

Hi all,

Using XSLT 2.0, I'd like to add an element at the end of a group of elements that may vary whether they exist. 

This seems like a classic case that people have to deal with all the time, but I've searched without luck, and I'm on maybe lesson 4 of ??? of the online XSLT course I've been taking for the past decade.

So, given the XML

<root>
   <foo/>
   <bar/>
   <mercury/>
   <venus/>
   <earth earth-type="round"/>
   <earth earth-type="flat"/>
   <mars/>
</root>

I want to add <moon>Now with more craters!</moon> after the <foo>, <bar>, <mercury>, <venus> group of elements and before the <earth>, <mars> group of elements, BUT I only know for sure that <foo> and <mars> will exist in the input XML. All the others are optional.

In the Oxygen XPath test window, "root/(foo|bar|mercury|venus)[last()]" got me where I wanted to be, but alas, parentheses are not allowed in the @match for the template. 

Thanks!
Charles

Charles O'Connor [he/him] l Business Analyst Aries Systems Corporation l www.ariessys.com
50 High Street, Suite 21 l North Andover, MA l 01845 l USA
Direct: 802-585-5655 Main: 978-975-7570 l Help Desk: 978-291-1966 | Fax: 978-975-3811
  

 

This message is confidential and is intended solely for the use of the individual(s) to whom it is addressed. 
If you have received this message in error, do not open any attachment but please notify the sender (above) and delete this message from your system.
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/3329386
or by email: [email protected]
--~--