199 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			199 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| <?xml version="1.0" encoding="UTF-8"?>
 | |
| <pd:ProcessDefinition xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:pd="http://xmlns.tibco.com/bw/process/2003" xmlns:ns="http://www.tibco.com/pe/WriteToLogActivitySchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://www.demo.com/author">
 | |
|     <xsd:import namespace="http://www.demo.com/author" schemaLocation="/Resources/WSDL/WSDL.wsdl"/>
 | |
|     <pd:name>Processes/xml/xml.process</pd:name>
 | |
|     <pd:startName>Start</pd:startName>
 | |
|     <pd:startType>
 | |
|         <xsd:element name="root">
 | |
|             <xsd:complexType>
 | |
|                 <xsd:sequence>
 | |
|                     <xsd:element name="method" type="xsd:string"/>
 | |
|                     <xsd:element name="data" type="xsd:string"/>
 | |
|                 </xsd:sequence>
 | |
|             </xsd:complexType>
 | |
|         </xsd:element>
 | |
|     </pd:startType>
 | |
|     <pd:startX>67</pd:startX>
 | |
|     <pd:startY>77</pd:startY>
 | |
|     <pd:returnBindings>
 | |
|         <root>
 | |
|             <xsl:copy-of select="$XmlGET_DELETE/root/ns2:author"/>
 | |
|             <status>
 | |
|                 <xsl:value-of select="if (boolean($XmlPOST_PUT/root/status)) then $XmlPOST_PUT/root/status else $XmlGET_DELETE/root/status"/>
 | |
|             </status>
 | |
|         </root>
 | |
|     </pd:returnBindings>
 | |
|     <pd:endName>End</pd:endName>
 | |
|     <pd:endType>
 | |
|         <xsd:element name="root">
 | |
|             <xsd:complexType>
 | |
|                 <xsd:sequence>
 | |
|                     <xsd:element ref="ns2:author" minOccurs="0"/>
 | |
|                     <xsd:element name="status" type="xsd:string"/>
 | |
|                 </xsd:sequence>
 | |
|             </xsd:complexType>
 | |
|         </xsd:element>
 | |
|     </pd:endType>
 | |
|     <pd:endX>732</pd:endX>
 | |
|     <pd:endY>85</pd:endY>
 | |
|     <pd:errorSchemas/>
 | |
|     <pd:processVariables/>
 | |
|     <pd:targetNamespace>http://xmlns.example.com/1719484154608</pd:targetNamespace>
 | |
|     <pd:activity name="XmlPOST_PUT">
 | |
|         <pd:type>com.tibco.pe.core.CallProcessActivity</pd:type>
 | |
|         <pd:resourceType>ae.process.subprocess</pd:resourceType>
 | |
|         <pd:x>545</pd:x>
 | |
|         <pd:y>41</pd:y>
 | |
|         <config>
 | |
|             <processName>/Processes/xml/author/XmlPOST.process</processName>
 | |
|             <processNameXPath>concat('/Processes/xml/author/Xml',$Start/root/method ,'.process')</processNameXPath>
 | |
|         </config>
 | |
|         <pd:inputBindings>
 | |
|             <root>
 | |
|                 <ns2:author>
 | |
|                     <xsl:attribute name="id">
 | |
|                         <xsl:value-of select="number($Map-Data/root/id)"/>
 | |
|                     </xsl:attribute>
 | |
|                     <ns2:firstName>
 | |
|                         <xsl:value-of select="$Map-Data/root/firstname"/>
 | |
|                     </ns2:firstName>
 | |
|                     <ns2:lastName>
 | |
|                         <xsl:value-of select="$Map-Data/root/lastname"/>
 | |
|                     </ns2:lastName>
 | |
|                     <ns2:age>
 | |
|                         <xsl:value-of select="number($Map-Data/root/age)"/>
 | |
|                     </ns2:age>
 | |
|                     <ns2:dateOfBirth>
 | |
|                         <xsl:value-of select="$Map-Data/root/date-of-birth"/>
 | |
|                     </ns2:dateOfBirth>
 | |
|                     <ns2:dateOfDeath>
 | |
|                         <xsl:value-of select="$Map-Data/root/date-of-death"/>
 | |
|                     </ns2:dateOfDeath>
 | |
|                 </ns2:author>
 | |
|             </root>
 | |
|         </pd:inputBindings>
 | |
|     </pd:activity>
 | |
|     <pd:activity name="Map Data">
 | |
|         <pd:type>com.tibco.plugin.mapper.MapperActivity</pd:type>
 | |
|         <pd:resourceType>ae.activities.MapperActivity</pd:resourceType>
 | |
|         <pd:x>267</pd:x>
 | |
|         <pd:y>73</pd:y>
 | |
|         <config>
 | |
|             <element>
 | |
|                 <xsd:element name="root">
 | |
|                     <xsd:complexType>
 | |
|                         <xsd:sequence>
 | |
|                             <xsd:element name="firstname" type="xsd:string"/>
 | |
|                             <xsd:element name="lastname" type="xsd:string"/>
 | |
|                             <xsd:element name="date-of-birth" type="xsd:string"/>
 | |
|                             <xsd:element name="date-of-death" type="xsd:string"/>
 | |
|                             <xsd:element name="id" type="xsd:string"/>
 | |
|                             <xsd:element name="age" type="xsd:string"/>
 | |
|                         </xsd:sequence>
 | |
|                     </xsd:complexType>
 | |
|                 </xsd:element>
 | |
|             </element>
 | |
|         </config>
 | |
|         <pd:inputBindings>
 | |
|             <root>
 | |
|                 <firstname>
 | |
|                     <xsl:value-of select="substring-before(substring-after($Start/root/data, '"firstname":"'), '"')"/>
 | |
|                 </firstname>
 | |
|                 <lastname>
 | |
|                     <xsl:value-of select="substring-before(substring-after($Start/root/data, '"lastname":"'), '"')"/>
 | |
|                 </lastname>
 | |
|                 <date-of-birth>
 | |
|                     <xsl:value-of select="substring-before(substring-after($Start/root/data, '"day-of-birth":"'), '"')"/>
 | |
|                 </date-of-birth>
 | |
|                 <date-of-death>
 | |
|                     <xsl:value-of select="substring-before(substring-after($Start/root/data, '"day-of-death":"'), '"')"/>
 | |
|                 </date-of-death>
 | |
|                 <id>
 | |
|                     <xsl:value-of select="if ($Start/root/method = 'POST' or $Start/root/method = 'PUT' ) then substring-before(substring-after($Start/root/data, '"id":"'), '"') else substring-after($Start/root/data, 'id=')"/>
 | |
|                 </id>
 | |
|                 <age>
 | |
|                     <xsl:value-of select="number(substring-before(substring-after($Start/root/data, '"age":"'), '"'))"/>
 | |
|                 </age>
 | |
|             </root>
 | |
|         </pd:inputBindings>
 | |
|     </pd:activity>
 | |
|     <pd:activity name="Log">
 | |
|         <pd:type>com.tibco.pe.core.WriteToLogActivity</pd:type>
 | |
|         <pd:resourceType>ae.activities.log</pd:resourceType>
 | |
|         <pd:x>156</pd:x>
 | |
|         <pd:y>73</pd:y>
 | |
|         <config>
 | |
|             <role>User</role>
 | |
|         </config>
 | |
|         <pd:inputBindings>
 | |
|             <ns:ActivityInput>
 | |
|                 <message>
 | |
|                     <xsl:value-of select="$Start/root/data"/>
 | |
|                 </message>
 | |
|             </ns:ActivityInput>
 | |
|         </pd:inputBindings>
 | |
|     </pd:activity>
 | |
|     <pd:activity name="XmlGET_DELETE">
 | |
|         <pd:type>com.tibco.pe.core.CallProcessActivity</pd:type>
 | |
|         <pd:resourceType>ae.process.subprocess</pd:resourceType>
 | |
|         <pd:x>539</pd:x>
 | |
|         <pd:y>147</pd:y>
 | |
|         <config>
 | |
|             <processName>/Processes/xml/author/XmlGET.process</processName>
 | |
|             <processNameXPath>concat('/Processes/xml/author/Xml',$Start/root/method ,'.process')</processNameXPath>
 | |
|         </config>
 | |
|         <pd:inputBindings>
 | |
|             <root>
 | |
|                 <id>
 | |
|                     <xsl:value-of select="number($Map-Data/root/id)"/>
 | |
|                 </id>
 | |
|             </root>
 | |
|         </pd:inputBindings>
 | |
|     </pd:activity>
 | |
|     <pd:transition>
 | |
|         <pd:from>XmlPOST_PUT</pd:from>
 | |
|         <pd:to>End</pd:to>
 | |
|         <pd:lineType>Default</pd:lineType>
 | |
|         <pd:lineColor>-16777216</pd:lineColor>
 | |
|         <pd:conditionType>always</pd:conditionType>
 | |
|     </pd:transition>
 | |
|     <pd:transition>
 | |
|         <pd:from>Map Data</pd:from>
 | |
|         <pd:to>XmlPOST_PUT</pd:to>
 | |
|         <pd:xpathDescription>post or put</pd:xpathDescription>
 | |
|         <pd:lineType>Default</pd:lineType>
 | |
|         <pd:lineColor>-16777216</pd:lineColor>
 | |
|         <pd:conditionType>xpath</pd:conditionType>
 | |
|         <pd:xpath>$Start/root/method = 'POST' or $Start/root/method = 'PUT'</pd:xpath>
 | |
|     </pd:transition>
 | |
|     <pd:transition>
 | |
|         <pd:from>Start</pd:from>
 | |
|         <pd:to>Log</pd:to>
 | |
|         <pd:lineType>Default</pd:lineType>
 | |
|         <pd:lineColor>-16777216</pd:lineColor>
 | |
|         <pd:conditionType>always</pd:conditionType>
 | |
|     </pd:transition>
 | |
|     <pd:transition>
 | |
|         <pd:from>Log</pd:from>
 | |
|         <pd:to>Map Data</pd:to>
 | |
|         <pd:lineType>Default</pd:lineType>
 | |
|         <pd:lineColor>-16777216</pd:lineColor>
 | |
|         <pd:conditionType>always</pd:conditionType>
 | |
|     </pd:transition>
 | |
|     <pd:transition>
 | |
|         <pd:from>Map Data</pd:from>
 | |
|         <pd:to>XmlGET_DELETE</pd:to>
 | |
|         <pd:xpathDescription>get or delete</pd:xpathDescription>
 | |
|         <pd:lineType>Default</pd:lineType>
 | |
|         <pd:lineColor>-16777216</pd:lineColor>
 | |
|         <pd:conditionType>xpath</pd:conditionType>
 | |
|         <pd:xpath>$Start/root/method = 'DELETE' or $Start/root/method = 'GET'</pd:xpath>
 | |
|     </pd:transition>
 | |
|     <pd:transition>
 | |
|         <pd:from>XmlGET_DELETE</pd:from>
 | |
|         <pd:to>End</pd:to>
 | |
|         <pd:lineType>Default</pd:lineType>
 | |
|         <pd:lineColor>-16777216</pd:lineColor>
 | |
|         <pd:conditionType>always</pd:conditionType>
 | |
|     </pd:transition>
 | |
| </pd:ProcessDefinition> | 
