Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
XML usage - Specific example help
Message
 
 
À
12/08/2003 10:20:32
Information générale
Forum:
Visual FoxPro
Catégorie:
XML, XSD
Divers
Thread ID:
00819328
Message ID:
00819388
Vues:
10
This message has been marked as the solution to the initial question of the thread.
Hi Andrew,

The XMLTOCURSOR() is designed to process XML created by CURSORTOXML() or with structure similar to it. I don'y think XMLADAPTER() would accept this XML either. You can use XMLDOM or VFP code to parse it. Here's the sample VFP code to do that.
TEXT TO cXML NOSHOW
<ntcipMessage source="amherst-qual" lat="38645000" lon="121485000" type="obs" dataTime="20030731T153150">
<value name="essSurfaceStatus.1">3</value>
<value name="essSurfaceTemperature.1">360</value>
<value name="essSurfaceWaterDepth.1">4</value>
<value name="essSurfaceSalinity.1">655350</value>
<value name="essPavementTemperature.1">360</value>
<value name="essSurfaceConductivity.1">0</value>
<value name="essSurfaceFreezePoint.1">1001</value>
<value name="essSurfaceBlackIceSignal.1">0</value>
<value name="essPavementSensorError.1">2</value>
<value name="essSurfaceStatus.2">3</value>
<value name="essSurfaceTemperature.2">344</value>
<value name="essSurfaceWaterDepth.2">4</value>
<value name="essSurfaceSalinity.2">655350</value>
<value name="essPavementTemperature.2">344</value>
<value name="essSurfaceConductivity.2">0</value>
<value name="essSurfaceFreezePoint.2">1001</value>
<value name="essSurfaceBlackIceSignal.2">0</value>
<value name="essPavementSensorError.2">2</value>
<value name="essAirTemperature.1">181</value>
<value name="essAtmosphericPressure.0">10172</value>
<value name="essAvgWindDirection.0">14</value>
<value name="essAvgWindSpeed.0">19</value>
<value name="essMaxWindGustSpeed.0">43</value>
<value name="essMaxWindGustDir.0">20</value>
<value name="essRelativeHumidity.0">69</value>
<value name="essPrecipRate.0">0</value>
<value name="essSnowfallAccumRate.0">65535</value>
<value name="essPrecipitationOneHour.0">0</value>
<value name="essPrecipitationThreeHours.0">0</value>
<value name="essPrecipitationSixHours.0">0</value>
<value name="essPrecipitationTwelveHours.0">0</value>
<value name="essPrecipitation24Hours.0">0</value>
<value name="essSolarRadiation.0">65535</value>
<value name="essTotalSun.0">1441</value>
<value name="essSpotWindDirection.0">23</value>
<value name="essSpotWindSpeed.0">22</value>
<value name="essWindSituation.0">2</value>
<value name="essWetbulbTemp.0">142</value>
<value name="essDewpointTemp.0">126</value>
<value name="essMaxTemp.0">239</value>
<value name="essMinTemp.0">119</value>
<value name="essWaterDepth.0">65535</value>
<value name="essAdjacentSnowDepth.0">3001</value>
<value name="essRoadwaySnowDepth.0">3001</value>
<value name="essRoadwaySnowPackDepth.0">3001</value>
<value name="essPrecipYesNo.0">2</value>
<value name="essPrecipSituation.0">3</value>
<value name="essIceThickness.0">65535</value>
<value name="essPrecipitationStartTime.0">1059618540</value>
<value name="essPrecipitationEndTime.0">1059618600</value>
<value name="essVisibility.0">17703</value>
<value name="essVisibilitySituation.0">2</value>
<value name="essSubSurfaceTemperature.1">238</value>
<value name="essSubSurfaceMoisture.1">101</value>
<value name="essSubSurfaceSensorError.1">2</value>
<value name="essSubSurfaceTemperature.2">1001</value>
<value name="essSubSurfaceMoisture.2">101</value>
<value name="essSubSurfaceSensorError.2">2</value>
<value name="essSubSurfaceTemperature.3">1001</value>
<value name="essSubSurfaceMoisture.3">101</value>
<value name="essSubSurfaceSensorError.3">2</value>
<value name="essSubSurfaceTemperature.4">1001</value>
<value name="essSubSurfaceMoisture.4">101</value>
<value name="essSubSurfaceSensorError.4">2</value>
<value name="essSubSurfaceTemperature.5">1001</value>
<value name="essSubSurfaceMoisture.5">101</value>
<value name="essSubSurfaceSensorError.5">2</value>
<value name="essSubSurfaceTemperature.6">1001</value>
<value name="essSubSurfaceMoisture.6">101</value>
<value name="essSubSurfaceSensorError.6">2</value>
<value name="essSubSurfaceTemperature.7">1001</value>
<value name="essSubSurfaceMoisture.7">101</value>
<value name="essSubSurfaceSensorError.7">2</value>
<value name="essSubSurfaceTemperature.8">1001</value>
<value name="essSubSurfaceMoisture.8">101</value>
<value name="essSubSurfaceSensorError.8">2</value>
<value name="essSubSurfaceTemperature.9">1001</value>
<value name="essSubSurfaceMoisture.9">101</value>
<value name="essSubSurfaceSensorError.9">2</value>
<value name="essSubSurfaceTemperature.10">1001</value>
<value name="essSubSurfaceMoisture.10">101</value>
<value name="essSubSurfaceSensorError.10">2</value>
<value name="essSubSurfaceTemperature.11">1001</value>
<value name="essSubSurfaceMoisture.11">101</value>
<value name="essSubSurfaceSensorError.11">2</value>
<value name="essSubSurfaceTemperature.12">1001</value>
<value name="essSubSurfaceMoisture.12">101</value>
<value name="essSubSurfaceSensorError.12">2</value>
<value name="essSubSurfaceTemperature.13">1001</value>
<value name="essSubSurfaceMoisture.13">101</value>
<value name="essSubSurfaceSensorError.13">2</value>
<value name="essSubSurfaceTemperature.14">1001</value>
<value name="essSubSurfaceMoisture.14">101</value>
<value name="essSubSurfaceSensorError.14">2</value>
<value name="essSubSurfaceTemperature.15">1001</value>
<value name="essSubSurfaceMoisture.15">101</value>
<value name="essSubSurfaceSensorError.15">2</value>
<value name="essSubSurfaceTemperature.16">1001</value>
<value name="essSubSurfaceMoisture.16">101</value>
<value name="essSubSurfaceSensorError.16">2</value>
<value name="essSubSurfaceTemperature.17">1001</value>
<value name="essSubSurfaceMoisture.17">0</value>
<value name="essSubSurfaceSensorError.17">0</value>
<value name="essSubSurfaceTemperature.18">1001</value>
<value name="essSubSurfaceMoisture.18">0</value>
<value name="essSubSurfaceSensorError.18">0</value>
<value name="essSubSurfaceTemperature.19">1001</value>
<value name="essSubSurfaceMoisture.19">0</value>
<value name="essSubSurfaceSensorError.19">0</value>
<value name="essSubSurfaceTemperature.20">1001</value>
<value name="essSubSurfaceMoisture.20">0</value>
<value name="essSubSurfaceSensorError.20">0</value>
<value name="essSubSurfaceTemperature.21">1001</value>
<value name="essSubSurfaceMoisture.21">0</value>
<value name="essSubSurfaceSensorError.21">0</value>
</ntcipMessage>
ENDTEXT

CREATE CURSOR crsXml (ItemName C(32), ItemValue I)
SCATTER NAME oRec
DIMENSION laXMlLines[1]
ALINES(laXMlLines, cXml)
FOR i=2 TO ALEN(laXMlLines)-1
	oRec.ItemName = STREXTRACT(laXMlLines[i], ["], ["])
	oRec.ItemValue = VAL(STREXTRACT(laXMlLines[i], [>], [<]))
	INSERT INTO crsXml FROM NAME oRec
ENDFOR
< snip >
--sb--
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform