De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

ECMAScript para XML ( E4X ) es la extensión del lenguaje de programación estándar ISO / IEC 22537: 2006 [1] que agrega soporte XML nativo a ECMAScript (que incluye ActionScript , JavaScript y JScript ). El objetivo es proporcionar una alternativa a las interfaces DOM que utiliza una sintaxis más simple para acceder a documentos XML. También ofrece una nueva forma de hacer que XML sea visible. Antes del lanzamiento de E4X, siempre se accedía a XML a nivel de objeto. En cambio, E4X trata XML como un elemento primitivo(como caracteres, enteros y booleanos). Esto implica un acceso más rápido, mejor soporte y aceptación como un bloque de construcción (estructura de datos) de un programa.

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

El estándar E4X fue obsoleto por la Fundación Mozilla en 2014. [1]

Soporte de navegador [ editar ]

E4X es compatible con Rhino de Mozilla , utilizado en OpenOffice.org y varios otros proyectos. También es compatible con Tamarin , el motor de JavaScript utilizado en la máquina virtual Flash . No es compatible con otros motores comunes como Nitro ( Safari ), V8 ( Google Chrome ), Carakan ( Opera ), Chakra ( Internet Explorer ) y Chakra ( Edge ). [2]

E4X también fue compatible con SpiderMonkey (utilizado en Firefox y Thunderbird ), pero se ha eliminado. En Firefox 10, la sintaxis E4X ya no se aceptaba en SpiderMonkey cuando el "modo estricto" de ECMAScript 5 estaba habilitado. [3] Según Brendan Eich , "Esto indica el inicio de la desaprobación de E4X en SpiderMonkey". [4] y "se ha desactivado de forma predeterminada para las páginas web (contenido) en Firefox 17, se ha desactivado de forma predeterminada para Chrome en Firefox 20 y se ha eliminado en Firefox 21" [5]

Ejemplo [ editar ]

var  sales  =  < sales  vendor = "John" >  < item  type = "peas"  price = "4"  amount = "6" />  < item  type = "carrot"  price = "3"  amount = "10" />  < tipo de artículo  = "chips" precio = "5" cantidad = "3" /> < / ventas>;   alerta (  venta . 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  = precio "naranjas" = "4" /> ; ventas . elemento . ( @ type  ==  "naranjas" ). @ cantidad  =  4 ;

Implementaciones [ editar ]

La primera implementación de E4X fue diseñado por Terry Lucas y John Schneider y apareció en BEA 's WebLogic Workshop 7.0 lanzado en febrero de 2002. aplicación de BEA se basó en Rhino y puesto en libertad antes de la especificación ECMAScript E4X se completó en junio de 2004. John Schneider escribió una artículo sobre las extensiones XML en el Workshop de BEA en ese momento.

  • E4X se implementó en SpiderMonkey ( motor JavaScript de Gecko ) desde la versión 1.6.0 [6] hasta la versión 20, y está en Rhino (el otro motor JavaScript de Mozilla escrito en Java en lugar de C) desde la versión 1.6R1. [7]
  • Como Mozilla Firefox se basa en Gecko, se podrían usar versiones anteriores para ejecutar scripts usando E4X. Pero esta función está obsoleta desde la versión 16 y se eliminó en la versión 18.
  • El lenguaje de secuencias de comandos ActionScript 3 de Adobe es totalmente compatible con E4X. Las primeras vistas previas de ActionScript 3 estuvieron disponibles por primera vez a finales de 2005. Adobe lanzó oficialmente el lenguaje 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 secuencias de comandos.
  • E4X también está disponible en Adobe Acrobat y Adobe Reader versiones 8.0 o superior (notablemente [8] Portado hacia adelante desde SpiderMonkey versión 17 [9] y sugerido puede ser eliminado en un futuro cercano).
  • E4X también está disponible en el servidor de aplicaciones Jaxer Ajax de Aptana , que utiliza el motor Mozilla del lado del servidor.
  • Desde el lanzamiento de Alfresco Community Edition 2.9B, E4X también está disponible en este sistema de gestión de documentos empresariales .
  • E4X está disponible como parte del motor de transformación de mensajes JavaScript de Mirth Connect .

Referencias [ editar ]

  1. ^ "E4X - Archivo de contenido obsoleto - MDN" . Mozilla . Consultado el 10 de septiembre de 2014 .
  2. ^ "Problema 30975: Implementar soporte E4X para scripts y extensiones" . Google . Consultado el 21 de mayo de 2012 .
  3. ^ "Firefox 10 para desarrolladores" . Mozilla. Archivado desde el original el 5 de mayo de 2012 . Consultado el 21 de mayo de 2012 .
  4. ^ "Error 695577: la sintaxis E4X no debe aceptarse en el modo estricto de ES5" . Mozilla . Consultado el 21 de mayo de 2012 .
  5. ^ "E4X" . Mozilla . Consultado el 12 de febrero de 2013 .
  6. ^ Notas de la versión de SpiderMonkey 1.6.0 Archivado el 15 de abril de 2009 en Wayback Machine.
  7. ^ Rhino 1.6R1 Cambio de registro
  8. ^ "Ayuda de Acrobat / Resumen de nuevas funciones" . Consultado el 16 de julio de 2015 .
  9. ^ "Actualización planificada 15.008.20082, 14 de julio de 2015" . Consultado el 16 de julio de 2015 .

Enlaces externos [ editar ]

  • ECMA-357 (retirada primera edición , segunda edición )
  • E4X en faqts.com (oa través de WayBack Machine )
  • Diapositivas de la presentación E4X 2005 de Brendan Eich, arquitecto jefe de Mozilla
  • E4X en el Centro de desarrolladores de Mozilla
  • Presentamos E4X en xml.com : compara E4X y json
  • Procesamiento de XML con E4X en Mozilla Developer Center
  • E4X: principiante a avanzado en Yahoo Developer Network
  • Producto que muestra E4X en acción en Script Scraper.

Ver también [ editar ]

  • JSX (JavaScript)