DataFlex
DataFlex
Access an Inner Node of an XML Document
See more XML Examples
Demonstrates how to navigate to a particular inner node of an XML document.The XML sample used in this example is also available here: Sample SOAP XML Document
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoXml
Variant vQualData
Handle hoQualData
Integer n
Integer i
String sStrValue
Boolean bTemp1
Move False To iSuccess
// This example navigates to the "qualificationData" node of the XML document shown below.
Get Create (RefClass(cComChilkatXml)) To hoXml
If (Not(IsComObjectCreated(hoXml))) Begin
Send CreateComObject of hoXml
End
Get ComLoadXmlFile Of hoXml "qa_data/xml/soapDoc.xml" To iSuccess
Get ComFindChild Of hoXml "soap:Body|v1:createEvents|events|qualificationData" To vQualData
If (IsComObject(vQualData)) Begin
Get Create (RefClass(cComChilkatXml)) To hoQualData
Set pvComObject Of hoQualData To vQualData
End
Get ComLastMethodSuccess Of hoXml To bTemp1
If (bTemp1 <> True) Begin
Showln "Not found."
Procedure_Return
End
// Iterate over the "instructions" child nodes and show the value of each.
Get ComNumChildrenHavingTag Of hoQualData "instructions" To n
Move 0 To i
While (i < n)
Set ComI Of hoQualData To i
Get ComGetChildContent Of hoQualData "instructions[i]|value" To sStrValue
Get ComLastMethodSuccess Of hoQualData To bTemp1
If (bTemp1 = True) Begin
// A node at the tag path existed (i.e. the "value" node existed)
Showln i ": " sStrValue
End
Move (i + 1) To i
Loop
Send Destroy of hoQualData
// <?xml version="1.0"?>
// <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:v1="http://www.mywebsite.com/v6/MyEvent">
// <soap:Header>
// <ROClientIDHeader soap:mustUnderstand="0" xmlns="http://tempuri.org/">
// <ID>{69CE6D9E-B75E-422F-A79C-D4918192EAD9}</ID>
// </ROClientIDHeader>
// </soap:Header>
// <soap:Body>
// <v1:createEvents xmlns:v1="http://www.mywebsite.com/v6/MyEvent">
// <events>
// <coreData>
// <anomaly>false</anomaly>
// <contacts>
// <coordinates>Mobile</coordinates>
// <flags>0</flags>
// <label>0606060606</label>
// <type>MOBILE</type>
// </contacts>
// <contacts>
// <coordinates>Telephone</coordinates>
// <flags>0</flags>
// <label>040400404</label>
// <type>PHONE</type>
// </contacts>
// <contacts>
// <coordinates>Fax</coordinates>
// <flags>0</flags>
// <label>0505050505</label>
// <type>FAX</type>
// </contacts>
// <contacts>
// <coordinates>Email</coordinates>
// <flags>0</flags>
// <label>test@test.com</label>
// <type>EMAIL</type>
// </contacts>
// <creationDate>2017-03-21T09:43:04.043</creationDate>
// <description>Buble Tea Bar</description>
// <earliestDate>2017-03-25T00:00:00</earliestDate>
// <expirationDate>2017-04-03T00:00:00</expirationDate>
// <orderingCustomer>ACME INTERNATIONAL</orderingCustomer>
// <priority>0</priority>
// <referentialData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:externalReferentialData">
// <customerName>ACME INTERNATIONAL</customerName>
// <equipmentName />
// <location>
// <address>adresseSite</address>
// <city>VilleSite</city>
// <contact>Sarah Croche</contact>
// <description>DescriptionSite</description>
// <name>Male � bar</name>
// <zipCode>69007</zipCode>
// </location>
// </referentialData>
// </coreData>
// <id>INTERV00102</id>
// <message />
// <qualificationData>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>description</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>Intervention � realiser</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>customerName</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>ACME INTERNATIONAL</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>orderingCustomer</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>ACME INTERNATIONAL</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>Description</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>Buble Tea Bar</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>Name</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>Male � bar</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>earliestDate</id>
// <fillingDate>2017-03-20T00:00:00</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>expirationDate</id>
// <fillingDate>2017-03-24T00:00:00</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>Acompte</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>200</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>Affaire</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>AFF56</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>DelaiStandard</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>off</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>address</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>adresseSite</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>city</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>VilleSite</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>zipCode</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>69007</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>description</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>DescriptionSite</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>ID</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>ENT</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>creationDate</id>
// <fillingDate>2017-03-21T09:43:04.043</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>MOBILE</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>0606060606</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>PHONE</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>040400404</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>FAX</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>0505050505</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>EMAIL</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>test@test.com</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>contact</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>Sarah Croche</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>DatePrevPose</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>SoldeAPayer</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>Id</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>tech1</value>
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>appointmentDate</id>
// <fillingDate>2017-03-22T10:00:00.607</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>schedulingDate</id>
// <fillingDate>2017-03-22T11:00:00.607</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>schedulingEndDate</id>
// <fillingDate>2017-03-22T12:00:00.607</fillingDate>
// <value />
// <valueCode />
// </instructions>
// <instructions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:reportField">
// <id>Tableau2</id>
// <rows>
// <id>Ligne 1</id>
// <cells>
// <id>objet</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>Fenêtre</value>
// <valueCode />
// </cells>
// <cells>
// <id>largeur</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>100</value>
// <valueCode />
// </cells>
// <cells>
// <id>hauteur</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>50</value>
// <valueCode />
// </cells>
// </rows>
// <rows>
// <id>Ligne 2</id>
// <cells>
// <id>objet</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>Porte</value>
// <valueCode />
// </cells>
// <cells>
// <id>largeur</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>220</value>
// <valueCode />
// </cells>
// <cells>
// <id>hauteur</id>
// <fillingDate>1899-12-30T00:00:00</fillingDate>
// <value>100</value>
// <valueCode />
// </cells>
// </rows>
// </instructions>
// <type>
// <duration>0</duration>
// <id>ENT</id>
// </type>
// </qualificationData>
// <remoteStatus />
// <schedulingData>
// <agentId xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="v1:externalEntityId">
// <id>tech1</id>
// </agentId>
// <appointmentDate>2017-03-28T10:00:00.607</appointmentDate>
// <schedulingDate>2017-03-28T12:00:00.607</schedulingDate>
// <schedulingEndDate>2017-03-28T14:00:00.607</schedulingEndDate>
// <useSchedulingHour>true</useSchedulingHour>
// </schedulingData>
// <status>NEW</status>
// </events>
// </v1:createEvents>
// </soap:Body>
// </soap:Envelope>
End_Procedure