We’ve said many times now that there is no public date available on Flex 2 including beta.  But as David Mendels has said before, it’s still a ways out.

 

Matt

 


From: [email protected] [mailto:[email protected]] On Behalf Of Dave
Sent: Wednesday, May 18, 2005 6:31 AM
To: [email protected]
Subject: [flexcoders] Re: E4X in Flex 2.0, part 1: Reading XML

 

Development time on my current project would be reduced considerably
(as much as half) if I had access to this type of functionality.

The $64M question...WHEN WILL FLEX 2.0  BE AVAILABLE - EVEN IN A
BETA FORMAT?????


Thanks,

-Dave



--- In [email protected], "Jeff Steiner" <[EMAIL PROTECTED]> wrote:
> That is flat out increadible.
>
> I can't wait!
>
> Jeff
> http://www.flexauthority.com
>
> ----- Original Message -----
> From: "Jeff Beeman" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Tuesday, May 17, 2005 5:04 PM
> Subject: RE: [flexcoders] E4X in Flex 2.0, part 1: Reading XML
>
>
> This is very exciting!  I'm especially excited about the double-
dot and
> wildcard operators.  Thanks for this update, as it'll help with
planning
> for future projects.  Keep 'em coming!
>

>

>
> /******************************************
> * Jeff Beeman
> ******************************************/
>
>   _____ 
>
> From: [email protected]
[mailto:[email protected]] On
> Behalf Of Gordon Smith
> Sent: Tuesday, May 17, 2005 4:54 PM
> To: '[email protected]'
> Subject: [flexcoders] E4X in Flex 2.0, part 1: Reading XML
>

>
> As you may have gathered, we've been spending a lot of time lately
> leveraging the new features of the Flash Player in the new Flex
> application model. Naturally, you'll also be able to leverage
those same
> new features, so we thought we'd start giving you a run down of
what's
> new. Of course we don't have beta software for you to play with
yet, so
> for now, we'll provide a lot of detail so you can evaluate these
new
> features and give guidance for us.
>

>
> XML manipulation in Flex 2.0 is going to get a lot more powerful,
as
> well as faster. By the time that Flex 2.0 ships, the Flash Player
will
> support E4X ("ECMAScript for XML"), a set of programming language
> extensions adding native XML support to ECMAScript. The player
team is
> busy implementing Standard ECMA-357 as described in
> http://www.ecma-international.org/publications/standards/Ecma-
357.htm.
>

>
> Here's how the spec describes what this feature offers: "E4X adds
native
> XML datatypes to the ECMAScript language, extends the semantics of
> familiar ECMAScript operators for manipulating XML objects and
adds a
> small set of new operators for common XML operations, such as
searching
> and filtering. It also adds support for XML literals, namespaces,
> qualified names and other mechanisms to facilitate XML processing."
>

>
> Lets take a look at a few examples of how you can read XML data
using
> E4X.
>

>
> As in the current player, you'll be able to create variables of
type XML
> by parsing a String. But XML literals will now be supported as
well:
>

>
>     var employees:XML =
>         <employees>
>             <employee ssn="123-123-1234">
>                 <name first="John" last="Doe"/>
>                 <address>
>                     <street>11 Main St.</street>
>                     <city>San Francisco</city>
>                     <state>CA</state>
>                     <zip>98765</zip>
>                 </address>
>             </employee>
>             <employee ssn="789-789-7890">
>                 <name first="Mary" last="Roe"/>
>                 <address>
>                     <street>99 Broad St.</street>
>                     <city>Newton</city>
>                     <state>MA</state>
>                     <zip>01234</zip>
>                 </address>
>             </employee>
>         </employees>;
>

>
> Instead of using DOM-style APIs like firstChild, nextSibling,
etc., with
> E4X you just "dot down" to grab the node you want. Multiple nodes
are
> indexable with [n], similar to the elements of an Array:
>

>
>     trace(employees.employee[0].address.zip);
>
>     ---
>
>     98765
>

>
> To grab an attribute, you just use the .@ operator:
>

>
>     trace([EMAIL PROTECTED]);
>     ---
>
>     789-789-7890
>

>
> If you don't pick out a particular node, you get all of them, as an
> indexable list:
>

>
>     trace(employees.employee.name);
>
>     ---
>
>     <name first="John" last="Doe"/>
>
>     <name first="Mary" last="Roe"/>
>

>
> (And note that nodes even toString() themselves into formatted
XML!)
>

>
> A handy double-dot operator lets you omit the "path" down into the
XML
> _expression_, so you could shorten the previous three examples to
>

>
>     trace(employees..zip[0]);
>
>     trace([EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> ]);
>
>     trace(employees..name);
>

>
> You can use a * wildcard to get a list of multiple nodes or
attributes
> with various names, and the resulting list is indexable:
>

>
>     trace(employees.employee[0].address.*);
>
>     ---
>
>     <street>11 Main St.</street>
>
>     <city>San Francisco</city>
>
>     <state>CA</state>
>
>     <zip>98765</zip>
>
>     trace([EMAIL PROTECTED]);
>     ---
>
>     Doe
>

>
> You don't have to hard-code the identifiers for the nodes or
> attributes... they can themselves be variables:
>

>
>     var whichNode:String = "zip";
>     trace(employees.employee[0].address[whichNode]);
>
>     ---
>
>     98765
>

>
>     var whichAttribute:String = "ssn";
>     trace([EMAIL PROTECTED]);
>     ---
>
>     789-789-7890
>

>
> A new for-each loop lets you loop over multiple nodes or
attributes:
>

>
>     for each (var ssn:XML in [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> )
>
>     {
>
>         trace(ssn);
>
>     }
>
>     ---
>
>     123-123-1234
>     789-789-7890
>

>
> Most powerful of all, E4X supports "predicate filtering" using the
> syntax .(condition), which lets you pick out nodes or attributes
that
> meet a condition you specify using a Boolean _expression_. For
example,
> you can pick out the employee with a particular social security
number
> like this, and get her state:
>

>
>     var ssnToFind:String = "789-789-7890";
>     trace(employees.employee.(@ssn == ssnToFind)..state);
>     ---
>
>     MA
>

>
> Instead of using a simple conditional operator like ==, you can
also
> write a complicated predicate filtering function to pick out the
data
> you need.
>

>
> By the way, although none of my examples use XML namespaces, E4X
has
> complete support for them.
>

>
> Compared with the current XML support in the Flash Player, E4X
allows
> you to write less code and execute it faster because more
processing can
> be done at the native speed of C++.
>

>
> Since E4X is so powerful, we're working to make Flex 2.0 play
nicely
> with it. Components like List, ComboBox, and DataGrid will be able
to
> accept E4X expressions like employees..name as a dataProvider. The
> <mx:XML> tag will be able to declare an E4X-style XML object in
MXML.
> WebService and HTTPService will be able to deliver E4X-style XML
objects
> across the wire, and they'll use the speed of E4X to do their own
work
> (such as constructing and desconstrucing SOAP packets) faster.
>

>
> For backward compability, the new player will continue to support
the
> old-style XML and XMLNode objects, with the one change that the
old XML
> class will be renamed to XMLDocument. The renaming is necessary
because
> the E4X standard specifies that the new type be called XML. So if
you
> have XML code and you want to continue using, just use XMLDocument
> instead. But we'll be encouraging everyone to migrate to E4X
because it
> is so much simpler, faster, and more expressive.
>

>
> Please let us know whether you'll find E4X useful in your
particular
> applications.
>

>
> - Gordon
>
>

>
>

>

>

>
>   _____ 
>
> Yahoo! Groups Links
>
> * To visit your group on the web, go to:
> http://groups.yahoo.com/group/flexcoders/
>  
> * To unsubscribe from this group, send an email to:
> [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]
subject=Unsubscribe>
>  
> * Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> Service <http://docs.yahoo.com/info/terms/> .





Yahoo! Groups Links

Reply via email to