×
Namespaces

Variants
Actions

Archived:How to load and parse XML files

From Nokia Developer Wiki
Jump to: navigation, search

Archived.pngArchived: This article is archived because it is not considered relevant for third-party developers creating commercial solutions today. If you think this article is still relevant, let us know by adding the template {{ReviewForRemovalFromArchive|user=~~~~|write your reason here}}.

We do not recommend Flash Lite development on current Nokia devices, and all Flash Lite articles on this wiki have been archived. Flash Lite has been removed from all Nokia Asha and recent Series 40 devices and has limited support on Symbian. Specific information for Nokia Belle is available in Flash Lite on Nokia Browser for Symbian. Specific information for OLD Series 40 and Symbian devices is available in the Flash Lite Developers Library.

Article Metadata
Compatibility
Platform(s): Flash Lite 2.x
Article
Created: soueldi (31 May 2007)
Last edited: hamishwillee (14 May 2013)

Warning.pngWarning: This application fails when trying to establish a network connection on the N95 (FL 2.0)

We will be using this basic XML document:

<myPhone>
<modelName>Nokia N73</modelName>
<screen>
<height>240</height>
<width>320</width>
</screen>
<cpu>
<type>ARM 9</type>
<clock_rate>220</clock_rate>
</cpu>
</myPhone>


Loading XML files

This following script loads an XML file:

// create a new XML object
var myPhoneXML = new XML();
 
//Text nodes that contain only white space are discarded
myPhoneXML.ignoreWhite = true;
 
// define the onload handler
myPhoneXML.onLoad = function(success) {
if (success) {
trace("XML loaded");
} else {
trace("Loading failed");
}
};
 
// load the XML file into the myPhoneXML object
myPhoneXML.load("myPhone.xml");
  • The load() method on the XML object allows you to download data from a remote host.
  • When the data has finished downloading, the onLoad event of the XML object occurs.

XML Navigation

  • firstChild: The first child in the parent node's child list
trace(myPhoneXML.firstChild);
// Output: <myPhone>[...]</myPhone>
 
trace(myPhoneXML.firstChild.firstChild);
// Output: <modelName>[...]</modelName>


  • lastChild: The last child in the parent node's child list
trace(myPhoneXML.firstChild.lastChild);
// Output: <cpu>[...]</cpu>


  • nextSibling: The next node in the parent node's child list
trace(myPhoneXML.firstChild.firstChild.nextSibling);
// Output: <screen>[...]</screen>


  • previousSibling: The previous node in the parent node's child list


Xml nav.jpg


Getting nodes value

  • This example checks the <clock_rate> node value:
trace(myPhoneXML.firstChild.lastChild.lastChild.firstChild.nodeValue);
// Output: 220


  • Another example using user XMLNode objects to get the screen resolution
var screenNode:XMLNode = myPhoneXML.firstChild.firstChild.nextSibling;
 
trace("Resolution: " + screenNode.firstChild.firstChild.nodeValue + " x " +
screenNode.lastChild.firstChild.nodeValue);
// Output: Resolution: 240 x 320
  • Another example by iterating through the child nodes
for (var aNode:XMLNode = myPhoneXML.firstChild.firstChild.nextSibling.firstChild;aNode != null;aNode=aNode.nextSibling) {
trace(aNode.firstChild.nodeValue);
}
// Output: 240
// 320
This page was last modified on 14 May 2013, at 05:07.
62 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×