Pull a part of Process Data by XSLT

Request: get a specific Output from the following Process Data
<ProcessData>
<OUTPUT>
<Data>
<naziv>STAVKA1</naziv>
<kolicina>2</kolicina>
<cijena>10.20</cijena>
<uk_cijena>20.40</uk_cijena>
<produkt_ID>123</produkt_ID>
<adresa>Heinzelova 1</adresa>
</Data>
<Data>
<naziv>STAVKA2</naziv>
<kolicina>3</kolicina>
<cijena>15.10</cijena>
<uk_cijena>45.30</uk_cijena>
<produkt_ID>234</produkt_ID>
<adresa>Heinzelova 2</adresa>
</Data>
<Data>
<naziv>STAVKA3</naziv>
<kolicina>5</kolicina>
<cijena>12.41</cijena>
<uk_cijena>62.05</uk_cijena>
<produkt_ID>345</produkt_ID>
<adresa>Heinzelova 3</adresa>
</Data>
</OUTPUT>
</ProcessData>
Output:
<ENABLED>
<naziv>STAVKA1</naziv>
<produkt_ID>123</produkt_ID>
</ENABLED>
<ENABLED>
<naziv>STAVKA2</naziv>
<produkt_ID>234</produkt_ID>
</ENABLED>
<ENABLED>
<naziv>STAVKA3</naziv>
<produkt_ID>345</produkt_ID>
</ENABLED>
XSLT:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="/">
<ROOT>
<xsl:for-each select="//Data">
<xsl:element name="ENABLED">
<xsl:element name="naziv">
<xsl:value-of select="naziv/text()"/>
</xsl:element>
<xsl:element name="produkt_ID">
<xsl:value-of select="produkt_ID/text()"/>
</xsl:element>
</xsl:element>
</xsl:for-each>
</ROOT>
</xsl:template>
</xsl:stylesheet>
BPML – XSLT Service configuration (result goes to PrimaryDocument):
…
<operation name="XSLT Service">
<participant name="XSLTService"/>
<output message="XSLTServiceTypeInputMessage">
<assign to="." from="*"/>
<assign to="input_pd_xpath">/</assign>
<assign to="xml_input_from">ProcData</assign>
<assign to="xslt_name">TEST_ProcessData_pull</assign>
</output>
<input message="inmsg">
<assign to="." from="*"/>
</input>
</operation>
…
Result in the Primary Document:
PrimaryDocument
Process Name: TEST_ProcessData_pull Instance ID: 1342884
Service Name: XSLTService
Document Name: xslt_result Document Store: Database
Document ID: 911:7252702:12e71919a89:lin2:node1
Document in process data: text/xml
<?xml version="1.0" encoding="UTF-8"?>
<ROOT>
<ENABLED>
<naziv>STAVKA1</naziv>
<produkt_ID>123</produkt_ID>
</ENABLED>
<ENABLED>
<naziv>STAVKA2</naziv>
<produkt_ID>234</produkt_ID>
</ENABLED>
<ENABLED>
<naziv>STAVKA3</naziv>
<produkt_ID>345</produkt_ID>
</ENABLED>
</ROOT>
Assign for moving it back to the ProcessData:
<assign to="." from="DocToDOM(PrimaryDocument)/*"></assign>
Result in the Process Data after the last assign:
<?xml version="1.0" encoding="UTF-8"?>
<ProcessData>
<OUTPUT>
<Data>
<naziv>STAVKA1</naziv>
<kolicina>2</kolicina>
<cijena>10.20</cijena>
<uk_cijena>20.40</uk_cijena>
<produkt_ID>123</produkt_ID>
<adresa>Heinzelova 1</adresa>
</Data>
<Data>
<naziv>STAVKA2</naziv>
<kolicina>3</kolicina>
<cijena>15.10</cijena>
<uk_cijena>45.30</uk_cijena>
<produkt_ID>234</produkt_ID>
<adresa>Heinzelova 2</adresa>
</Data>
<Data>
<naziv>STAVKA3</naziv>
<kolicina>5</kolicina>
<cijena>12.41</cijena>
<uk_cijena>62.05</uk_cijena>
<produkt_ID>345</produkt_ID>
<adresa>Heinzelova 3</adresa>
</Data>
</OUTPUT>
<PrimaryDocument SCIObjectID="746:7278775:12e71919a89:lin2:node1"/>
<ENABLED>
<naziv>STAVKA1</naziv>
<produkt_ID>123</produkt_ID>
</ENABLED>
<ENABLED>
<naziv>STAVKA2</naziv>
<produkt_ID>234</produkt_ID>
</ENABLED>
<ENABLED>
<naziv>STAVKA3</naziv>
<produkt_ID>345</produkt_ID>
</ENABLED>
</ProcessData>