DataFlex
DataFlex
Methods for Getting Attributes
See more XML Examples
Demonstrates some methods for getting attribute name/values.The input XML, available at http://www.chilkatsoft.com/data/car.xml, is this:
<root>
<car color="black" make="mercedes" model="C350" hp="302" engine="v6" type="sedan">Mercedes Benz C350</car>
</root>
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoXml
Variant vCarNode
Handle hoCarNode
Integer iNumAttr
Integer iHorsepower
Integer i
String sTemp1
String sTemp2
Move False To iSuccess
Get Create (RefClass(cComChilkatXml)) To hoXml
If (Not(IsComObjectCreated(hoXml))) Begin
Send CreateComObject of hoXml
End
// The sample input XML is available at http://www.chilkatsoft.com/data/car.xml
Get ComLoadXmlFile Of hoXml "car.xml" To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoXml To sTemp1
Showln sTemp1
Procedure_Return
End
// Navigate to the "car" node, which is the 1st child:
Get ComFirstChild Of hoXml To vCarNode
If (IsComObject(vCarNode)) Begin
Get Create (RefClass(cComChilkatXml)) To hoCarNode
Set pvComObject Of hoCarNode To vCarNode
End
// Get the value of the "model" attribute:
Get ComGetAttrValue Of hoCarNode "model" To sTemp1
Showln "model = " sTemp1
// Get the value of the "hp" attribute as an integer:
Get ComGetAttrValueInt Of hoCarNode "hp" To iHorsepower
Showln "horsepower = " iHorsepower
// Iterate over the attributes and show the name/value of each:
Get ComNumAttributes Of hoCarNode To iNumAttr
Move 0 To i
While (i < iNumAttr)
Get ComGetAttributeName Of hoCarNode i To sTemp1
Get ComGetAttributeValue Of hoCarNode i To sTemp2
Showln sTemp1 ": " sTemp2
Move (i + 1) To i
Loop
Send Destroy of hoCarNode
End_Procedure