Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   Ruby (http://www.velocityreviews.com/forums/f66-ruby.html)
-   -   xmlsimple: prevent folding multiple elements into array? (http://www.velocityreviews.com/forums/t842473-xmlsimple-prevent-folding-multiple-elements-into-array.html)

slothbear 07-17-2007 01:42 AM

xmlsimple: prevent folding multiple elements into array?
 
I have some xml that represents a somewhat weirdly formed hash.
XmlSimple is eating some of my structure.

INPUT:
<kern>
<map>
<key>
state
</key>
<string>
open
</string>
<key>
rate
</key>
<time>
daily
</time>
<key>
duration
</key>
<time>
monthly
</time>
</map>
</kern>

XmlSimple.xml_in(xml, {'ForceArray'=>false})

OUTPUT:
{"map"=> {
"time"=>["daily", "monthly"],
"key"=>["state", "rate", "duration"],
"string"=>"open"
}
}

With the arrays folded that way, there's no way for me to tell that
the value of "state" is "open". I don't really care about the
"datatypes". I'm aiming at a single level hash something like this:

DESIRED:
{"map"=> {
"state" => "open,
"rate" => "daily",
"duration" => "monthly"
}
}

I can't really change the odd incoming XML, but I'm happy to process
any Ruby data structure that hasn't lost some of my order/structure.
All of the options around folding appear to affect only attributes,
but I have only elements.


Weston Mr. campbell 07-17-2007 02:11 AM

Re: xmlsimple: prevent folding multiple elements into array?
 
Man, wish I could help you there. The problem is that the only languages
that I have been able to work with XML in are ActionScript and Java...
and Ruby really doesn't look like either, not to mention I can't even
seem to find some decent tutorials that explain it...

Oh well, sorry for taking up space on this thread. But perchance, you
may want to investigate the REXML library that comes with Ruby. It's
just an alternative to XMLSimple.


--
Posted via http://www.ruby-forum.com/.


slothbear 07-20-2007 12:30 AM

Re: xmlsimple: prevent folding multiple elements into array?
 
Thanks for the thoughts! I figured I would have to move to REXML
eventually, and I guess it's time. thanks again.



All times are GMT. The time now is 05:41 AM.

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.