Expat

Expat
Тип Библиотека парсинга XML
Автор Джеймс Кларк[d]
Разработчик Джеймс Кларк[d]
Написана на C[1]
Операционная система Кроссплатформенный
Последняя версия
Репозиторий github.com/libexpat/libe…
Читаемые форматы файлов:
XML
Лицензия Лицензия MIT[1]
Сайт libexpat.github.io

Expat — свободная[1] потокоориентированная библиотека парсинга XML, написанная на C. Как один из наиболее доступных XML-парсеров, широко используется в открытом программном обеспечении. Среди проектов, использующих её: Apache, Mozilla Firefox, GNU Debugger, PureBasic, Perl, Python и PHP.

История

Разработчик Джеймс Кларк опубликовал версию 1.0 в 1998 году, будучи лидером XML Working Group на консорциуме Всемирной паутины. Он выпустил еще две версии, 1.1 и 1.2, до передачи проекта группе под руководством Кларка Купера и Фреда Дрейка в 2000 году. Новая команда выпустила версию 1.95.0 в сентябре 2000 года и продолжает выпускать новые версии, исправляющие баги и добавляющие улучшения.

Размещение

Проект имеет хостинг на GitHub. Доступны версии для наиболее популярных операционных систем.

Использование

Для использования Expat, в программе сначала нужно установить функции-обработчики для определённых событий. Когда Expat разбирает XML-файл, он вызывает установленные функции в соответствующих случаях (например, начало тега, конец тега, текст внутри тега), передавая им необходимые параметры. Expat предоставляет возможность обрабатывать более сложные ситуации, такие как объявление пространств имён XML и сущности DTD.

События Expat напоминают события SAX, но, несмотря на это, Expat не является SAX парсером. Будучи потокоориентированным парсером, Expat позволяет приостанавливать разбор и возобновлять разбор в произвольный момент времени.

Примечания

  1. 1 2 3 SourceForge.net: Expat XML Parser — Develop  (неопр.). Дата обращения: 11 апреля 2010. Архивировано 10 января 2010 года.
  2. Release 2.6.2

Ссылки

  • Официальный сайт Expat (англ.)
  • Сайт проекта на SourceForge (англ.)
  • Страница разработки (англ.)
  • Использование Expat (вводная статья), Кларк Купер, 1999 (англ.)