Cофт для работы с XML. Редакторы, утилиты

В настоящее время готовится обзор редакторов и утилит XML, с которыми удалось поработать авторам проекта. А пока воспользуйтесь приведенным ниже линк-листом либо поищите программы на сервере Download.com (в поиске укажите "XML")

Источник:

Сандра Э. Эдди
XML. Справочник
Издательство "Питер", С-Петербург, 1999

перевод с английского
Sandra E.Eddy
XML in Plain English
IDG Book Worldwide, Inc, N-Y, 1998

Справочные ресурсы по программному обеспечению для языка XML

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

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

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

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

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

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

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

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

Public SGML/XML Software (http://www.sil.org/sgml/publicSW.html) -
это одна из наиболее известных и наиболее полных страниц Робина Кавера (Robin Cover). Основной акцент сделан на бесплатном программном обес- печении и на SGML. Но не стоит забывать, что многие SGML-инструменты в Настоящее время поддерживают XML. Каждая программа на этом сервере очень аккуратно и детально описана.

Технологии для Web-узлов

В этом разделе перечислены XML-приложения для создания и сопровождения Web-узлов.

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

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.k/vsms/java/jumbo)
представляет собой XML-броуэер, написанный на Java, в настоящее время распространяется условно-бесплатно. Его можно использовать либо как самостоятельную программу, либо как набор апплетов, работающих с Netscape Navigator или Internet Explorer. JUMBO может использоваться в качестве XML-анализатора. Броузер также поддерживает таблицы Стилей XSL.

Microsoft Internet Explorer (http://www.microsoft.corn/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 МО (раздел "XML Suites"). В состав XML Development Kit включены анализатор DXP Parser, генератор Data-Channel XML Generator и интерфейс DataChannel DOM Builder.

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.

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/xnil/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).

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 использует интерфейс Staple 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

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.html)
представляет собой коммерческий пакет для управления содержанием структурированных документов - в особенности технического характера, - предназначенных для частных лиц или рабочих групп. Astoria поддерживает как SGML, так и 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 (DХР) (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 анализатором с проверкой на состоятельность. Предназначен для проверки хорошо оформленных документов и при необходимости состоятельных документов.

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/fornuila/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 анализатор, предназначенный для тестирования хорошо оформленных документов. ХР, работающий под JDK I. I (или более поздней версией), поддерживает стандарты UTF-8, UTF-16 и ISO-8859-1.

XParse (http://www.jeremie.com/Dev/XML/)
- это основанный нa 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 WebKTool.

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 и совместимую c JDK I. I (или более поздней). 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, который может быть запущен как самостоятельное приложение, см. на указанной странице Заметьте, что можно выгрузить OmniMark LE для оценки программ OmniMark.

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

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

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

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

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)
представляет собой процессор таблиц стилей XSL, для работы которого требуется броузер, совместимый c 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.