ECMAScript для XML

Из Википедии, бесплатной энциклопедии

ECMAScript для XML ( E4X ) был стандартным ISO/IEC 22537:2006, расширением языка программирования которое добавляет встроенную XML поддержку в ECMAScript (который включает ActionScript , JavaScript и JScript ). Целью было предоставить альтернативу интерфейсам DOM , которая использует более простой синтаксис для доступа к XML-документам. Он также предложил новый способ сделать XML видимым. До выпуска E4X доступ к XML всегда осуществлялся на уровне объектов. Вместо этого E4X рассматривал XML как примитив (например, символы, целые числа и логические значения). Это подразумевало более быстрый доступ, лучшую поддержку и принятие в качестве строительного блока (структуры данных) программы.

E4X был стандартизирован компанией Ecma International в стандарте ECMA-357 . Первое издание вышло в июне 2004 года, второе издание — в декабре 2005 года.

Стандарт E4X был признан устаревшим Mozilla Foundation в 2014 году. [1]

Он был отозван ISO/IEC. [2]

Поддержка браузера [ править ]

E4X поддерживается Rhino от Mozilla , используемым в OpenOffice.org и ряде других проектов. Он также поддерживается Tamarin , движком JavaScript, используемым в виртуальной машине Flash . Он не поддерживается другими распространенными движками, такими как Nitro ( Safari ), V8 ( Google Chrome ), Carakan ( Opera ), Chakra ( Internet Explorer и до Chromium Edge ). [3]

E4X также поддерживался SpiderMonkey (используется в Firefox и Thunderbird ), но был удален. В Firefox 10 синтаксис E4X больше не принимался в SpiderMonkey, когда «строгий режим» ECMAScript 5 . включен [4] По словам Брендана Эйха , «это означает начало прекращения поддержки E4X в SpiderMonkey». [5] и «по умолчанию отключено для веб-страниц (контента) в Firefox 17, отключено по умолчанию для Chrome в Firefox 20 и удалено в Firefox 21» [6]

Пример [ править ]

var   sales   =   <  продавец   =  <  "Джон"  < 
     тип  =   товара  "  горошек"   цена  =  "4"   количество  =  "6"  /> 
     >  товара   тип  =  "морковь"   цена  =  "3"   количество  =  "10"  /> 
     <  товара   тип  =  «фишки»   цена  =  «5»   количество  =  «3»  /> 
   </  продажи  >; 

  оповещение  (   продажи  .  товар  .(  @  тип   ==   "морковь"  .  @  количество   ); 
  оповещение  (   продажи  .  @  поставщик   ); 
  для   каждого  (   вар   цена   в   продажах  ..  @  цена   )   { 
   alert  (   цена   ); 
  } 
 удалить   продажи  .   элемент  [  0  ]; 
  продажи  .   item   +=   <  предмета   тип  =  "апельсины"   цена  =  "4"  />; 
  продажи  .   элемент  .(  @type  ==   )   "апельсины"  .   @  количество   =   4  ; 

Реализации [ править ]

Первая реализация E4X была разработана Терри Лукасом и Джоном Шнайдером и появилась в Weblogic Workshop 7.0 компании BEA , выпущенном в феврале 2002 года. Реализация BEA была основана на Rhino и выпущена до того, как в июне 2004 года была завершена спецификация ECMAScript E4X. Джон Шнайдер написал статья о расширениях XML в BEA's Workshop в то время.

  • E4X был реализован в SpiderMonkey ( . движок JavaScript Gecko) начиная с версии 1.6.0 [7] до версии 20 и находится в Rhino (другой движок JavaScript Mozilla, написанный на Java вместо C) с версии 1.6R1. [8]
  • Поскольку Mozilla Firefox основан на Gecko, более старые версии можно использовать для запуска сценариев с использованием E4X. Но эта функция устарела с версии 16 и удалена в версии 18.
  • Язык сценариев Adobe ActionScript 3 полностью поддерживает E4X. Ранние предварительные версии ActionScript 3 впервые стали доступны в конце 2005 года. Adobe официально выпустила этот язык вместе с Flash Player 9 28 июня 2006 года.
  • E4X доступен во Flash CS3 , Adobe AIR и Adobe Flex, поскольку они используют ActionScript 3 в качестве языка сценариев.
  • E4X также доступен в Adobe Acrobat и Adobe Reader версии 8.0 или выше (особенно [9] Вперед портировано из SpiderMonkey версии 17 [10] и от него предлагается отказаться в ближайшем будущем).
  • E4X также доступен на сервере приложений Aptana Jaxer Ajax, который использует серверную часть движка Mozilla.
  • С момента выпуска Alfresco Community Edition 2.9B E4X также доступен в этой корпоративной системе управления документами .
  • E4X доступен как часть Mirth Connect . механизма преобразования сообщений JavaScript

См. также [ править ]

  • JSX — разметка на основе XML специально для манипулирования DOM.

Ссылки [ править ]

  1. ^ «E4X — Архив устаревшего контента — MDN» . Мозилла. Архивировано из оригинала 24 июля 2014 года . Проверено 10 сентября 2014 г.
  2. ^ «ISO/IEC 22537:2006 — Информационные технологии. Спецификация ECMAScript для XML (E4X). Статус: Отозван» .
  3. ^ «Проблема 30975: реализация поддержки E4X для скриптов и расширений» . Google . Проверено 21 мая 2012 г.
  4. ^ «Firefox 10 для разработчиков» . Мозилла. Архивировано из оригинала 5 мая 2012 года . Проверено 21 мая 2012 г.
  5. ^ «Ошибка 695577 — синтаксис E4X не должен приниматься в строгом режиме ES5» . Мозилла . Проверено 21 мая 2012 г.
  6. ^ «Е4Х» . Мозилла. Архивировано из оригинала 30 сентября 2013 года . Проверено 12 февраля 2013 г.
  7. ^ Примечания к выпуску SpiderMonkey 1.6.0. Архивировано 15 апреля 2009 г. на Wayback Machine.
  8. ^ Rhino 1.6R1 Журнал изменений
  9. ^ «Справка по Acrobat / Обзор новых функций» . Проверено 16 июля 2015 г.
  10. ^ «15.008.20082 Плановое обновление, 14 июля 2015 г.» . Проверено 16 июля 2015 г.

Внешние ссылки [ править ]