Hi,

Is it possible to check for missing or empty xml nodes "before" putting them
into a table or doing a XMLSearch . Sometimes the xml will come back with just
the root node present but everything else missing due to improper search
parameters. Other times some values are not present. (empty <nodes></nodes).

I would like to test if the xml root is valid or not broken eg:
<HotelRoomAvailabilityResults size='3'>
, then check for empy values in any particular node. eg:
<displayRoomRate>88.20</displayRoomRate>


Thanks

<HotelRoomAvailabilityResults size='1'>
<HotelRoomAvailabilityResult>
<hotelId>117086</hotelId>
<cancellationPolicy>Cancel by 4PM the day of arrival</cancellationPolicy>
<policy/>
<rateCode>RAC</rateCode>
<roomTypeCode>C1D</roomTypeCode>
<hrnQuoteKey/>
<rateDescription>Standard Rate</rateDescription>
<roomTypeDescription>STUDIO </roomTypeDescription>
<supplierType>S</supplierType>
<propertyType>H</propertyType>
<taxRate>12 PCT 3 PCT</taxRate>
<otherInformation/>
<rateChange>true</rateChange>
<guaranteeRequired>true</guaranteeRequired>
<depositRequired>false</depositRequired>
<immediateChargeRequired>false</immediateChargeRequired>
<currentAllotment>-1</currentAllotment>
<propertyId>014674</propertyId>
<promoDescription/>
<promoType/>
<promoDetailText/>
<bedTypes/>
<RateInfo>
<displayCurrencyCode>USD</displayCurrencyCode>
<displayRoomRate>94.81</displayRoomRate>
<nativeCurrencyCode>CAD</nativeCurrencyCode>
<nativeRoomRate>120.0</nativeRoomRate>
<rateFrequency>D</rateFrequency>
</RateInfo>
</HotelRoomAvailabilityResult>

--------------------------------------------------------------


<CFTRY>
<cfset room =QueryNew("hotelID, cancellationPolicy, roomTypedescription,
roomTypeCode, rateDescription,
RateInfo")>

<cfset temp = QueryAddRow(room, #size#)>
<cfloop index="i" from ="1" to =#size#>
<cfset temp = QuerySetCell(room, "hotelID", #hotelRoomAvailabilityResult[i
].hotelId.XmlText#, #i#)>
<cfset temp = QuerySetCell(room, "cancellationPolicy",
#hotelRoomAvailabilityResult[i ].cancellationPolicy.XmlText#, #i#)>
<cfset temp = QuerySetCell(room, "roomTypeDescription",
#hotelRoomAvailabilityResult[i ].roomTypeDescription.XmlText#, #i#)>
<cfset temp = QuerySetCell(room, "rateDescription",
#hotelRoomAvailabilityResult[i ].rateDescription.XmlText#, #i#)>
<cfset temp = QuerySetCell(room, "roomTypeCode",
#hotelRoomAvailabilityResult[i ].roomTypeCode.XmlText#, #i#)>
<cfset temp = QuerySetCell(room, "rateInfo", #hotelRoomAvailabilityResult[i
].RateInfo.displayRoomRate.XmlText#, #i#)>
</cfloop>
<CFCATCH>
</CFCATCH>
</CFTRY>