BPEL - XML ​​डेटा में हेरफेर

XPath मुख्य रूप से BPEL प्रक्रिया में XMLs में हेरफेर करने के लिए उपयोग किया जाता है। कुछ मूल्यवान Xpath फ़ंक्शन हैं जिनका उपयोग XML में हेरफेर करने के लिए किया जा सकता है। नीचे दिए गए कार्यों को देखते हैं।

bpel: getVaribleData (varName, partName, xpathStr)

यह एक चर से तत्वों का एक सेट निकालने के लिए इस्तेमाल किया जा सकता है, एक XPath अभिव्यक्ति का उपयोग करके।

<bpel:copy>
   <bpel:from>
   <![CDATA[count(bpel:getVariableData(‘$Variable','$partName')/ns:return)]]>
   </bpel:from>
      <bpel:to variable = "itemNumber">
   </bpel:to>
</bpel:copy>

bpel: getLinkStatus ()

इसका उपयोग एक बूलियन का मूल्यांकन करने और वापस करने के लिए किया जा सकता है चाहे कोई विशेष लिंक सक्रिय या निष्क्रिय हो।

: getVariableProperty (स्ट्रिंग, स्ट्रिंग)

यह चर में गुण निकालने में सहायक है।

: DoXSLTTransform ()

यह XSLT रूपांतरण करता है।

स्ट्रिंग ()

इसका उपयोग / पाठ () का उपयोग करके तत्वों से बाहर पाठ सामग्री निकालने के लिए किया जा सकता है।

स्ट्रिंग लंबाई()

इस फ़ंक्शन का उपयोग स्ट्रिंग की लंबाई की गणना करने के लिए किया जाता है। लेकिन! = ऑपरेटर इस फ़ंक्शन से आउटपुट के साथ काम नहीं करता है। तो आप उपयोग कर सकते हैं> या <बल्कि का उपयोग कर! = =।

बूलियन मान

आप XPath बूलियन फ़ंक्शन के साथ बूलियन मान निर्दिष्ट कर सकते हैं।

<assign>
   <!-- copy from boolean expression function to the variable -->
   <copy>
      <from expression = "true()"/>
      <to variable = "output" part = "payload" query="/result/approved"/>
   </copy>
</assign>

दिनांक या समय निर्दिष्ट करना

आप क्रमशः Oracle BPEL XPath फ़ंक्शन getCurrentDate, getCurrentTime या getCurrentDateTime का उपयोग करके किसी दिनांक या समय फ़ील्ड का वर्तमान मान असाइन कर सकते हैं।

<!-- execute the XPath extension function getCurrentDate() -->
<assign>
   <copy>
      <from expression = "xpath20:getCurrentDate()"/>
      <to variable = "output" part = "payload"
      query = "/invoice/invoiceDate"/>
   </copy>
</assign>

कॉनटेटनेटिंग स्ट्रिंग्स

एक स्ट्रिंग चर (या चर भाग या क्षेत्र) के मूल्य को दूसरे में कॉपी करने के बजाय, आप पहले स्ट्रिंग हेरफेर कर सकते हैं, जैसे कि कई तारों को समतल करना।

<assign>
   <!-- copy from XPath expression to the variable -->
   <copy>
      <from expression = "concat('Hello ',
      bpws:getVariableData('input', 'payload', '/p:name'))"/>
      <to variable = "output" part = "payload" query = "/p:result/p:message"/>
   </copy>
</assign>

स्ट्रिंग लिटरल्स असाइन करना

आप BPEL में एक चर के लिए स्ट्रिंग शाब्दिक निर्दिष्ट कर सकते हैं।

<assign>
   <!-- copy from string expression to the variable -->
   <copy>
      <from expression = "'GE'"/>
      <to variable = "output" part = "payload" query = "/p:result/p:symbol"/>
   </copy>
</assign>

न्यूमेरिक वैल्यूज़ असाइन करना

आप XPath अभिव्यक्तियों में संख्यात्मक मान निर्दिष्ट कर सकते हैं।

<assign>
   <!-- copy from integer expression to the variable -->
   <copy>
      <from expression = "100"/>
      <to variable = "output" part = "payload" query = "/p:result/p:quantity"/>
   </copy>
</assign>

Note - एक्सएमएल दस्तावेज़ को बदलने के लिए कुछ XSLT फ़ंक्शन का उपयोग किया गया था।