Hello everyone,

I have this code that should generate the same exact XML three ways, but 
I can't get the third way to work.

1. cfxml - this works exactly the way I want it.

<cfxml variable="whatIwant">
<breakfast_menu>
   <food>
       <name quantity="50" quantity2="150">Belgian Waffles</name>
       <description>Our famous Belgian Waffles</description>
   </food>
   <morefood/>
</breakfast_menu>
</cfxml>
<cfdump var="#whatIwant#"/>

2. xmlNew() - this works like cfxml, but quantity and quantity2 
attributes come out as uppercase

<cfset myXML = XmlNew()/>
<cfset myXML.xmlRoot = XmlElemNew(myXML, "breakfast_menu")/>
<cfset myXML.breakfast_menu.xmlChildren[1] = XmlElemNew(myXML, "food")/>
<cfset myXML.breakfast_menu.xmlChildren[2] = XmlElemNew(myXML, 
"morefood")/>
<cfset myXML.breakfast_menu.food.xmlChildren[1] = xmlElemNew(myXML, 
"name")/>
<cfset myXML.breakfast_menu.food.xmlChildren[2] = xmlElemNew(myXML, 
"description")/>
<cfset myXML.breakfast_menu.food.name.xmlText = "Belgian Waffles"/>
<cfset myXML.breakfast_menu.food.name.xmlAttributes.quantity = 50 
/><!--- this comes out as uppercase --->
<cfset myXML.breakfast_menu.food.name.xmlAttributes.quantity2 = 150 
/><!--- this comes out as uppercase --->
<cfset myXML.breakfast_menu.food.description.xmlText = "Our famous 
Belgian Waffles"/>
<cfset myXML.breakfast_menu.xmlChildren[2] = xmlElemNew(myXML, 
"morefood")/>
<cfdump var="#myXML#"/>

3. xmlNew(true) - I'm trying to get the quantity/quantity2 attributes to 
be case sensitive.  I cannot get this to work at all.  I cannot add the 
child node "name" under "food"

<cfscript>
   myXML = xmlNew(true);
   myXML.xmlRoot = xmlElemNew(myXML, "breakfast_menu");
   myXML.xmlRoot["breakfast_menu"][1] = xmlElemNew(myXML, "food");
   myXML.xmlRoot["breakfast_menu"][1] = xmlElemNew(myXML, "morefood");
   myXML.["breakfast_menu"]["food"][1] = xmlElemNew(myXML, "name");
   //myXML.xmlRoot[1][1][1] = xmlElemNew(myXML, "name"); //does not work
   //myXML["breakfast_menu"]["food"][1] = xmlElemNew(myXML, "name"); 
//this does not work
   //myXML.xmlRoot["breakfast_menu"]["food"][1] = xmlElemNew(myXML, 
"name"); //this does not work
   //myXML.xmlRoot[1][1][1] = xmlElemNew(myXML, "name"); //this does not 
work
</cfscript>
<cfdump var="#myXML#"/>

http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=XML_08.html 
says not to use dot notation when referencing case sensitive XML.  One 
of the examples in there, I cannot get to work:

    MyDoc.["employee"]["name"][1]


which would translate to my code as:

    myXML.["breakfast_menu"]["food"][1]

I get an error saying 'A CFML variable name cannot end with a "." 
character.'

Thanks for the help!



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Adobe® ColdFusion® 8 software 8 is the most important and dramatic release to 
date
Get the Free Trial
http://ad.doubleclick.net/clk;203748912;27390454;j

Archive: 
http://www.houseoffusion.com/groups/CF-Talk/message.cfm/messageid:308346
Subscription: http://www.houseoffusion.com/groups/CF-Talk/subscribe.cfm
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4

Reply via email to