Xml objects
From iRidium Mobile Wiki
DOWNLOAD: Example of a project
Description
In iRidumScript you can create and edit xml-objects and also refer and manipulate each field of the object. To create xml-objects use the command:
xmlObject = new XML('<test atrib="123">text</test>');
- xmlObject - the variable which we assign the xml-type for and where we write xml-structure
- <test atrib="123">text</test> - data which are going to be stored in the objects as fields and values
var DEVICE = IR.GetDevice("Weather"); //Defint the driver for working with weather data var xml; //the variable stores the xml-object //--------------------------------------------------- //block for activation of user variables //--------------------------------------------------- var City; var Region; var Country; var Temperature; var Distance; var Pressure; var Speed; var Chill; var Direction; var SpeedNumber; var Humidity; var Visibility; var Pressure; var Rising; var Sunrise; var Sunset; //--------------------------------------------------- IR.AddListener(IR.EVENT_RECEIVE_TEXT, DEVICE, function(text) //Event is activated when data come from the server { xml = new XML(text); //Convert data received from the server into the xml-оbject //--------------------------------------------------- //Writing xml-attribute into the corresponding variables //--------------------------------------------------- City = xml.rss.channel["yweather:location"]["@city"]; //Writing the city name into the variable Region = xml.rss.channel["yweather:location"]["@region"]; //Writing the region name into the variable Country = xml.rss.channel["yweather:location"]["@country"]; //Writing the country name into the variable Temperature = xml.rss.channel["yweather:units"]["@temperature"];//Writing the type of displaying the weather into the variable Distance = xml.rss.channel["yweather:units"]["@distance"]; //Writing the units of speed measurement into the variable Pressure = xml.rss.channel["yweather:units"]["@pressure"]; //Writing the pressure value into the variable Speed = xml.rss.channel["yweather:units"]["@speed"]; //Writing the speed value into the variable Chill = xml.rss.channel["yweather:wind"]["@chill"]; //Writing the temperature value into the variable Direction = xml.rss.channel["yweather:wind"]["@direction"]; //Writing the wind direction into the variable SpeedNumber = xml.rss.channel["yweather:wind"]["@speed"]; //Writing the wind speed into the variable //--------------------------------------------------- //Output of received data in the log //--------------------------------------------------- IR.Log("City = "+City); IR.Log("Region = "+Region); IR.Log("Country = "+Country); IR.Log("Temperature = "+Temperature); IR.Log("Distance = "+Distance); IR.Log("Pressure = "+Pressure); IR.Log("Speed = "+Speed); IR.Log("Chill = "+Chill); IR.Log("Direction = "+Direction); IR.Log("SpeedNumber = "+SpeedNumber); });