Библиотека: XML: справочник

Приложение 2

Редакторы и утилиты XML

Интернет содержит непрерывно растущий объем программных ресурсов, включая доступные для загрузки из Сети бесплатные, условно-бесплатные и демонстрационные версии редакторов и утилит XML, а также описания программ.

n Коммерческие программы. Эти полнофункциональные программные продукты достаточно дороги, однако компании-разработчики часто могут позволить себе быть дружелюбными с пользователями. Поэтому часто вам предлагается возможность загрузить на свой компьютер тестовую или демонстрационную версию программы и опробовать ее в работе еще до того, как вы решите ее купить.

n Тестовые версии. Многие коммерческие разработчики программного обеспечения предлагают для ознакомления неполные версии программ, называемые демонстрационными программами (демо-версиями) . Такая тестовая версия может представлять собой одну из предыдущих версий программы, может иметь ограниченный срок пользования или попросту не иметь в своем составе всех функций, доступных в коммерческих версиях.

n Условно-бесплатные программы. В этих программах, как правило, имеются все инструменты и функции; предполагается, что после тестирования программы в течение определенного количества дней вы должны будете заплатить за ее дальнейшее использование. В ответ на это автор может выслать диски, лицензию, руководство пользователя, замечания о выявленных проблемах, исправленных ошибках или предоставить более свежую версию программы.

n Бесплатные программы. Как видно из названия, такие программные продукты распространяются без взимания какой-либо платы — либо разработчиками-альтруистами, либо для первоначального продвижения товара на рынок. Бесплатные программы, которые, бывает, представляют собой облегченные версии коммерческих или условно-бесплатных продуктов, могут оказаться ничуть не хуже, чем их полные версии.

В этом приложении находится информация о XML-редакторах и утилитах, используемых для создания и анализа XML-документов, а также для создания определений типа документа (DTD). Правомерно предположить, что их список пополняется по мере того, как все больше разработчиков посвящают себя работе с XML. В первом разделе приложения помещен перечень справочных ресурсов по программам для языка XML. За ним следует список отдельных программ. Каждая статья содержит краткое описание ресурса и адрес (URL) домашней страницы разработчика или самой программы.

Приложение 2. Редакторы и утилиты XML

  • Справочные ресурсы по программному обеспечению для языка XML
В этом разделе перечислены справочные ресурсы, содержащие ссылки на программы для языка XML. В некоторых из них также перечислены ресурсы по языку SGML. Не стоит забывать о том, что многие программы для SGML имеют встроенную поддержку языка XML.

The Whirlwind Guide to SGML & XML Tools and Vendors (http://www.infotek.no/ sgmltool/guide.htm) является домашней страницей, имеющей ссылки на страницы, посвященные SGML- и XML-инструментам, в том числе перечислен ные ниже.

n SGML & XML Tools—Parsers and Engines (http://www.infotek.no/sgmltool/sdk.htm) содержит список библиотек и утилит для создания и анализа SGML- и XML-документов. Для каждого пункта списка указано, является ли программа коммерческой или бесплатной и на какой платформе работает данная программа.

n SGML & XML Tools—By Tool Category (http://www.infotek.no/sgmltool/products.htm) представляет собой список инструментов, упорядоченных по категориям. Имеются ссылки на каждую из них: «Редактирование и составление», «Электронная доставка», «Преобразование», «Хранение и управление документами», «Разработка управляющей информации», «Анализато ры и механизмы» (см. предыдущую статью) и «Ресурсы».

n James Tauber's XML INFORMATION:Software (http://www.xmlinfo.com/) содержит список программного обеспечения и ассоциированные ссылки по следующим категориям: «XML-процессоры», «Интерфейсы API», «Программное обеспечение для XML» и «Поддержка языка XML в других программах». Также полезно ознакомиться со статьей «Сравнительная таблица XML-процессоров и анализаторов», которой посвящена отдельная страница того же сервера. Этот весьма привлекательный сервер сейчас находится в процессе реорганизации.

n XML Tools (http://www.microsoft.com/xml/xmltools.asp) предлагает список в основном коммерческих программ. Каждая программа сопровождается кратким описанием.

n Software (http://www.megginson.com/Software/software.html) представляет собой небольшую страничку с перечнем программ, «заплаток», утилит и классов.

n Parser Central (http://www.finetuning.com/parse.html) содержит обширный список XML-программ всех типов: анализаторы, средства разработки программного обеспечения, проекты, средства создания сценариев, средства разработки и броузеры. Каждая программа имеет детальное описание.

n Public SGML/XML Software (http://www.sil.org/sgml/publicSW.html) — это одна из наиболее известных и наиболее полных страниц Робина Кавера (Robin Cover). Основной акцент сделан на бесплатном программном обес

Средства разработки XML

печении и на SGML. Но не стоит забывать, что многие SGML-инструмен ты в настоящее время поддерживают XML. Каждая программа на этом сервере очень аккуратно и детально описана.
  • Технологии для Web-узлов
В этом разделе перечислены XML-приложения для создания и сопровождения Web-узлов.

Balise Software Development Kit (http://www.balise.com/hpbody.htm) является коммерческой программой Web-разработки, совместимой с С и С++.

Interaction (http://interaction.in-progress.com/) позволяет участвовать в телеконференциях и показывает информацию о состоянии Web-узла в реальном времени. Эта условно-бесплатная программа работает на платформе Macintosh.

Web Automation Toolkit (http://www.webmethods.com/products/automation_ toolkit.html) преобразует бизнес-системы в формат, позволяющий размещать их на Web-узлах, язык XML используется для обмена данными. Эта программа имеет в своем составе HTML/XML-анализатор. После создания Web-приложения его можно опубликовать на сервере Web Automation Server (http://www.webmethods.com/products/server/).

  • XML-броузеры
В этом разделе перечислены броузеры, которые в настоящее время поддерживают язык XML или будут его поддерживать в ближайшее время.

JUMBO (Java Universal Molecular or Markup Browser for Objects) (http://www.vsms.nottingham.ac.uk/vsms/java/jumbo) представляет собой XML-броузер, написанный на Java, в настоящее время распространяется условно-бесплатно. Его можно использовать либо как самостоятельную программу, либо как набор апплетов, работающих с Netscape Navigator или Internet Explorer. JUMBO может использоваться в качестве XML-анализатора. Броузер также поддерживает таблицы стилей XSL.

Microsoft Internet Explorer (http://www.microsoft.com/ie/) имеет поддержку XML в 5 версии.

Netscape Navigator (http://home.Netscape.com/) будет поддерживать XML в следующей версии.

  • Средства разработки XML
Инструменты, перечисленные в этом разделе, служат для разработки или поддержки XML-приложений.

DataChannel XML Development Kit (http://www.datachannel.com/products/xdk/ xml_dk.html) является частью DataChannel RIO (раздел «XML Suites»). В состав XML Development Kit включены анализатор DXP Parser, генератор DataChannel XML Generator и интерфейс DataChannel DOM Builder.

Приложение 2. Редакторы и утилиты XML

Dual Prism (http://www.balise.com/products/dualp/dualp.htm) представляет собой пакет приложений для систем управления документами и средств их разработки . Этот программный продукт используется для преобразования XML- или SGML-документов в HTML- или XML-документы.

Java Development Kit (http://www.javasoft.com/products/jdk/1.1/) представляет собой программный пакет для компиляции, отладки и запуска Java-апплетов и приложений. Некоторые программы XML не будут работать, если предварительно не установлен пакет Java Development Kit.

ПРИМЕЧАНИЕ Java, равно как и XML, поддерживает набор символов Unicode. Сейчас широко предлагается множество анализаторов Java, которые можно использовать для дальнейшей разработки XML-документов.

Proto (http://www.pierlou.com/prototype/body.htm) читает состоятельный XML-документ и показывает, как он будет выглядеть на экране. Proto является приложением на основе Java, программируемое средствами ECMAScript или Tel.

Python (http://www.python.org/) представляет собой язык программирования, используемый при разработке на XML (например, с такими программами, как XED, PyPointers, xmlproc, XML Toolkit — все они упоминаются в этом приложении).

SAX 1.0 (A Simple API for XML) (http://www.megginson.com/SAX/index.html или http://www.microstar.com/XML/Sax/sax.html) представляет собой бесплатное программное обеспечение API на базе Java для написания приложений, в которых используются XML-анализаторы.

SAX for Python (http://www.stud.ifi.uio.no/~larsga/download/python/xml/index ) SAX для Python.

XML Toolkit (http://csmctmto.interpoint.net/didx/xml.html) является программой, основанной на Python и предназначенной для разработки XML-приложений. Набор включает в себя XML-анализатор (технология «клиент-сервер»), не производящий проверку на состоятельность и использующий язык определения Web-интерфейса (Web Interface Definition Language — WIDL). Разработчик утверждает, что программный пакет будет постоянно совершенствоваться.

XPublish (http://interaction.in-progress.com/) представляет собой систему XML-публикаций для платформы Macintosh.

  • Инструменты и приложения для XML DOM
В этом разделе перечислены приложения, использующие интерфейс модели объекта документа Интернет-консорциума DOM (Document Object Model).

ПРИМЕЧАНИЕ На момент написания этого раздела DOM находится в стадии разработки. Чтобы быть в курсе событий, периодически посещайте страницу http://www.w3.org/DOM/.

XML-редакторы

DataChannel DOM Builder (http://www.datachannel.com/products/xdk/DXP/dom_ builder.html) является коммерческим продуктом, предназначенным для создания XML-документов на основе DOM. На компьютере должен быть установлен программный продукт Java VirtualMachine Version 1.1.

FREE-DOM (http://www.docuverse.com/personal/freedom/index.html ) — это Java-библиотека, предназначенная для преобразования объектов DOM в XML. FREE-DOM использует интерфейс Simple API for XML (SAX) и XML-анализатор с поддержкой SAX 1.0. Необходимо загрузить обе программы перед тем, как приступать к работе с FREE-DOM.

PyPointers (http://www.stud.ifi.uio.no/~larsga/download/python/xml/index ) является основанной на Python реализацией языка XPointer, которая отыскивает заданные указатели в XML- и HTML-документах, используя указатель DOM. В составе программы имеется также анализатор общего назначения.

  • Создание определений типов документов DTD
В этом разделе перечислены приложения, предназначенные для создания определений типа документа (DTD).

Document Architect (http://www.arbortext.com/docarch.html) — коммерческий редактор DTD языка SGML и таблиц стилей, использующий редактор ADEPT Editor.

Near and Far Designer (http://www.microstar.com/Products-And-Technologies/products- and-technologies.html) — визуальный инструмент DTD для новичков и не только. Пользуясь программой Near and Far Designer, можно создать собственное DTD или импортировать и отредактировать уже существующее DTD.

Visual XML (http://www.pierlou.com/visxml/body.htm) представляет собой написанный на Java редактор DTD и XML. Его автор является также создателем Proto (см. один из предыдущих разделов).

  • XML-редакторы
В этом разделе приведен перечень XML-редакторов.

ADEPT Editor (http://www.arbortext.com/editor.html) представляет собой коммерческий XML- и SGML-редактор, созданный по типу текстового процессора, со встроенной системой помощи для создания объемных документов.

ADEPT Publisher (http://www.arbortext.com/publisher.html) является коммерчес ким XML- и SGML-редактором для операционной системы UNIX со встроенной системой помощи и инструментами композиции для создания PostScript-документов.

Astoria (http://www.chrystal.com/products/astoria.htm) представляет собой коммерческий пакет для управления содержанием структурированных документов — в особенности технического характера, — предназначенных для частных лиц или рабочих групп. Astoria поддерживает как SGML, так и XML.

Приложение 2 Редакторы и утилиты XML

Balise (http://www.balise.com/hpbody.htm) является коммерческим приложени ем, предназначенным для управления и преобразования структурированных документов. Будучи SGML-приложением, Balise поддерживает XML и Rich Text Format (RTF). Пакет имеет анализатор, не проверяющий документы на состоятельность, и обеспечивает полную поддержку набора символов Unicode.

DynaText® Professional Publishing System (http://www.inso.com/dynatext/dtxtds.htm) является коммерческой программой для создания объемных документов, которые могут публиковаться на компакт-дисках, в локальных сетях, Интернете или корпоративной сети. В состав пакета входят компоненты DynaText CD/LAN Browser, DynaWeb® Web Publisher, DynaText Software Development Kit, а также инструменты для создания и публикации документов.

Visual XML (см. предыдущий раздел).

XED (http://www.cogsci.ed.ac.uk/~ht/xed.html) предназначен для редактирова ния небольших и среднего размера XML-документов и проверяет структуру документа прямо в процессе работы. В редакторе XED используются набор инструментов LT XML, Python и Tk.

XML Pro (http://www.vervet.com/release-pr.html) является редактором, предназначенным для создания состоятельных и хорошо оформленных XML-документов. В XML Pro имеются мастера, облегчающие процесс создания документа.

  • XML-анализаторы и процессоры
Инструменты, перечисленные в этом разделе, предназначены для разбора и обработки XML-документов.

AElfred (http://www.microstar.com/XML/Aelfred/aelfred.html) — это бесплатный анализатор с проверкой на состоятельность, предназначенный для программистов, пишущих на Java, служащий для дополнительной поддержки XML апплетами. В состав анализатора входит драйвер SAX.

DataChannel XML Parser (DXP) (http://www.datachannel.com/products/xml/DXP/) является коммерческим, основанным на Java анализатором с проверкой на состоятельность. Предназначен для работы с существующими программа ми на серверной стороне, в состав которых включаются элементы XML. DXP создан на основе NXP (см. следующий раздел).

expat (EXtensible markup language PArser Toolkit) (http://www.jclark.com/xml/expat.html) представляет собой основанный на языке С XML-броузер без проверки на состоятельность, который в будущем составит ядро проекта Netscape Mozilla XML.

Lark (http://www.textuality.com/Lark/) — это XML-анализатор без проверки на состоятельность. Написанный на Java, Lark является бесплатным продуктом, распознающим DTD.

Larval (http://www.textuality.com/Lark/) — это XML-анализатор с проверкой на состоятельность, обладающий всеми остальными свойствами анализатора Lark.

Microsoft XML Parser in Java (http://www.microsoft.com/xml/parser/jparser.asp) является основанным на Java анализатором с проверкой на состоятельность.

Язык XML-сценариев

Предназначен для проверки хорошо оформленных документов и при необходимости состоятельных документов.

NXP (http://www.edu.uni-klu.ac.at/~nmikula/NXP/) является основанным на Java общедоступным анализатором с проверкой на состоятельность.

PaxSyntactica (http://208.204.84.117/XMLTree-Viewer/) — это Xapi-J-совмести мый XML-анализатор.

SAXON (http://home.iclweb.com/icl2/mhkay/saxon.html) — это библиотека Java-класса, используемая для обработки XML-документов с целью преобразова ния в XML или HTML.

SP (http://www.jclark.com/sp/) является в первую очередь SGML-анализато ром, однако может использоваться для разбора хорошо оформленных XML-документов. SP написан на C++ и является бесплатным продуктом.

Tcl Support For XML (http://tcltk.anu.edu.au/XML/) представляет собой набор инструментов для разбора XML-документов и DTD. Пакету Tcl Toolkit требуется Tcl 8.0b1 (или выше).

XAF (http://www.megginson.com/XAF/home.html) предназначен для обработки XML-документов с SAX-совместимым анализатором на Java. XAF обрабатывает архитектурные формы, но не XML. XAF использует вывод SAX для чтения документа, разобранного другим анализатором, и выход SAX для передачи обработанного документа приложению.

XML for Java (http://www.alphaworks.IBM.com/formula/xml/) является XML-анализатором с проверкой на состоятельность, написанным на Java. Как указано на домашней странице, этот анализатор «имеет классы и методы разбора, генерации, манипуляции и проверки XML-документов на состоятельность».

xmlproc (http://www.stud.ifi.uio.no/~larsga/download/python/xml/index ) представляет собой XML-анализатор с проверкой на состоятельность на основе Python. На момент написания этого раздела анализатор находился в стадии разработки.

XP (http://www.jclark.com/xml/xp/index.html) — это написанный на Java анализатор, предназначенный для тестирования хорошо оформленных документов. XP, работающий под JDK 1.1 (или более поздней версией), поддерживает стандарты UTF-8, UTF-16 и ISO-88591.

XParse (http://www.jeremie.com/Dev/XML/) — это основанный на JavaScript анализатор, предназначенный для проверки хорошо оформленных документов.

  • Язык XML-сценариев
В этом разделе приводится только один язык сценариев, основанный на Java.

FESI (free ECMAScript Interpreter) (http://home.worldcom.ch/~jmlugrin/fesi/index.html) эквивалентен JavaScript. ECMAScript может использоваться как язык макрокоманд и как интерактивный интерпретатор для отладки программ. Так как FESI интегрирован с Java, он может использоваться для тестирования библиотек Java.

  • Программные XML-пакеты
Пакеты приложений и утилит, перечисленные в этом разделе, служат для выполнения самых разнообразных функций, связанных с XML.

DataChannel RIO (http://www.datachannel.com/rio/display_entry.html) — это коммерческий пакет для публикации документов в корпоративной сети, предназначенный для организации и распространения корпоративной информации. Для работы DataChannel RIO требуется сервер управления реляционной базой данных.

DynaBase (http://www.inso.com/dynabase/index.htm) представляет собой коммерческую систему управления содержанием и динамических Web-публикаций. В состав пакета входят такие компоненты, как DynaBase Web Manager, DynaBase Web Author, DynaBase Data Server, DynaBase Web Developer, DynaBase Web Server plug-in и DynaBase WebКTool.

Frontier (http://www.scripting.com/frontier5/default.html) является коммерчес ким пакетом управления содержанием для платформ Windows и Macintosh. В состав пакета входят XML-анализатор, XML-база данных, XML-вызовы удаленных процедур и язык сценариев.

LT XML (http://www.ltg.ed.ac.uk/software/xml/) состоит из наборов разнообраз ных XML-инструментов для разработчиков. Используется для разбора хорошо оформленных XML-документов. В состав LT XML входят XML-анализатор, язык запросов и интерфейс API на базе С.

ObjectStore PSE PRO (http://www.odi.com/content/products/pse/ppjds.html ) представляет собой систему управления базами данных, предназначенную для работы под Java и совместимую с JDK 1.1 (или более поздней). ObjectStore PSE Pro включает в себя интерфейс запросов, собственный менеджер памяти и улучшенную модель транзакций.

OmniMark® Konstructor (http://www.omnimark.com/summary/konst-info.html) является пакетом, предназначенным для управления содержанием и его доставкой. Включает в себя Konstructor Load Manager, Konstructor Developer Tools, Konstructor Connectivity и OmniMark Programming Language. Дополнительно о языке OmniMark Programming Language, который может быть запущен как самостоятельное приложение, см. страницу http://www.omnimark.com/summary/omni-info.html. Заметьте, что можно выгрузить OmniMark LE для оценки программ OmniMark.

POET Content Management Suite (http://www.poet.com/wildflower.htm) состоит из сервера POET Object Server, SGML-анализатора, интерпретатора, навигатора и объектно-ориентированного интерфейса API для С++. Более подробно см. страницу http://www.poet.com/CMSoverview/.

Tango Enterprise (http://www.everyware.com/products/Tango/WhatIsTango.html ) представляет собой инструмент визуального программирования, позволяющий вам или вашей рабочей группе создавать многослойные динамические Web-приложения. Tango Enterprise включает в себя Tango Development Studio и Tango Application Server.

Приложения для работы с таблицами стилей

  • Приложения для работы с таблицами стилей
В этом разделе приводится список редакторов и процессоров таблиц стилей.

ПРИМЕЧАНИЕ Стандарт XSL окончательно еще не разработан.

Cascade (http://interaction.in-progress.com/cascade/index?id =3PLNQ) является коммерческим редактором каскадных таблиц стилей для компьютеров Macintosh. Можно загрузить бесплатную копию Cascade Light или приобрести профессиональную условно-бесплатную версию.

Jade (http://www.jclark.com/jade/) — это инструмент для работы со стилями с помощью DSSSL. Jade использует SP (см. раздел «XML-анализаторы и процессоры» этого приложения) для разбора таблицы стилей. Jade может сохранять полученные результаты в форматах: RTF, TeX и двух видах SGML.

Sparse (http://www.jeremie.com/Dev/XSL/index.phtml) представляет собой процессор таблиц стилей XSL, для работы которого требуется броузер, совместимый с JavaScript.

Spice (http://www.w3.org/TR/1998/NOTE-spice-19980123.html ) предназначен для стилистического оформления XML-документов с использованием ECMAScript, а также инструкций каскадных таблиц стилей (CSS) и плавающих объектов, описанных сценариями. Следует отметить, что Spice находится в стадии разработки и пока не стал стандартом W3C.

XML Styler (http://www.arbortext.com/xmlstyler/) представляет собой процессор таблиц стилей XSL.

xslj (http://www.cogsci.ed.ac.uk/~ht/xslj.html) преобразует стили XSL в DSSSL.

Аудиокнига карр