So as a followup to my own thread, I've written a drop-in replacement for SimpleXMLDecoder / Encoder that I call TypedXMLDecoder/Encoder..
Rather than turning an XML doc into a tree of plain-jane Object (or ObjectProxy) instances, it directly creates a graph of typed instances using a simple XML element -> AS type mapping table you provide. Thus, each chunk of XML is only examined once and unmarshalled directly into an AS3 typed instance object. It's also smart enough to use the reflective machinery in AS3 (specifically, DescribeTypeCache and friends) to figure out what AS type you *really* want for nested objects based on their declared type in your AS class definitions, thereby saving you the trouble of putting all possible types into the mapping table. You only need to specify the possible "root" element to type mappings and you do *not* have to put helper methods in your AS classes to deal with the marshalling/unmarshalling. I've got it handling Array and ArrayCollection properly as well as respecting the [Transient] metadata tag when encoding as XML. XML attributes can either be handled as properties (the default) or can be handled specially as "meta" and stashed in a distinct attributes dict handing off the instances. This latter option allows for symmetry with encoding the objects back into XML. And finally, if no type map entry can be figured out, it falls back to creating regular Object (or ObjectProxy) instances. So far, it's working well in our project against a nice REST service interface we've built for our application. If there's enough interest out there and I can get clearance from my employer, I'll open source the thing. -- View this message in context: http://www.nabble.com/Creating-strongly-typed-objects-from-HTTPService-results-tp16182400p20847252.html Sent from the FlexCoders mailing list archive at Nabble.com.

