ECMAScript para XML

ECMAScript para XML ( E4X ) es una extensión del lenguaje de programación que agrega compatibilidad nativa con XML al estándar del lenguaje ECMAScript . El objetivo es proporcionar una alternativa a las interfaces DOM para simplificar la sintaxis para acceder a documentos XML. También se propone una nueva forma de mostrar XML. Antes del lanzamiento de E4X, siempre se accedía a XML a nivel de objeto. En su lugar, E4X trata a XML como un tipo primitivo (como cadenas, enteros, booleanos). Esto proporciona un acceso más rápido, mejor mantenibilidad y facilidad de uso como estructura de datos del programa.

El E4X está estandarizado por Ecma International en el estándar ECMA-357 . La primera versión se publicó en junio de 2004, la segunda en diciembre de 2005.

Ejemplo

var ventas = < vendedor de ventas = "Juan" > < tipo de artículo = "guisantes" precio = "4" cantidad = "6" /> < tipo de artículo = "zanahoria" precio = "3" cantidad = "10" /> < tipo de artículo = "fichas" precio = "5" cantidad = "3" /> < /ventas>; alerta ( ventas . artículo .( @ tipo == "zanahoria" ). @ cantidad ); alerta ( ventas . @ vendedor ); para cada ( var precio en ventas .. @ precio ) { alerta ( precio ); } eliminar ventas . elemento [ 0 ]; ventas _ artículo += < tipo de artículo = "naranjas" precio = "4" /> ; ventas _ item .( @type == " naranjas " ). @ cantidad = 4 ;

Implementaciones

La primera implementación de E4X fue desarrollada por Terry Lucas y John Schneider y apareció en Weblogic Workshop 7.0 de BEA Systems , lanzado en febrero de 2002. La implementación de BEA se basó en Rhino y se lanzó antes de que se finalizaran las especificaciones de ECMAScript E4X (junio de 2004). John Schneider también escribió un artículo sobre extensiones XML en el "Taller" de BEA.

  • E4X se ha implementado en SpiderMonkey (un motor de JavaScript basado en Gecko ) desde la versión 1.6.0 [1] , y en Rhino (otro motor de JavaScript de Mozilla escrito en Java en lugar de C) desde la versión 1.6R1 [2] .
  • Dado que Mozilla Firefox se basa en Gecko, se puede usar para ejecutar scripts escritos con E4X. La especificación se mantiene en la versión 1.5 en adelante.
  • El lenguaje de secuencias de comandos ActionScript 3 de Adobe es totalmente compatible con E4X. Las primeras versiones preliminares de ActionScript 3 no estuvieron disponibles por primera vez hasta finales de 2005. Adobe lanzó oficialmente el lenguaje junto con Flash Player 9 el 28 de junio de 2006.
  • E4X está disponible en Flash CS3 , Adobe AIR y Adobe Flex , ya que utilizan ActionScript 3 como lenguaje de programación.
  • E4X también está disponible en las versiones 8.0 y superiores de Adobe Acrobat y Adobe Reader .
  • E4X está disponible en el servidor de aplicaciones Jaxer Ajax de Aptana , que utiliza el motor Mozilla en el lado del servidor.
  • A partir del lanzamiento de Alfresco Community Edition 2.9B, E4X también está disponible en este sistema de flujo de trabajo empresarial.
  • Mozilla Firefox 21 y versiones posteriores ya no son compatibles con E4X.

Notas

  1. Notas de la versión de SpiderMonkey 1.6.0 Archivado el 15 de abril de 2009.
  2. Registro de cambios de Rhino 1.6R1 . Consultado el 5 de mayo de 2010. Archivado desde el original el 6 de julio de 2010.

Enlaces