Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #52, МАРТ 2005 г.

БД и XML

Ижевский Виталий Григорьевич

Спецвыпуск: Хакер, номер #052, стр. 052-066-1


(moyavital@mail.ru) - инженер-программист Хмельницкого БТИ (Украина)

Пример интеграции возможностей XML

Довольно много воды утекло с момента объявления миру XML (Extensible Markup Language). Наперебой появляются основанные на нем новые технологии, которые обещают сделать программирование проще, понятнее, быстрее. Производители СУБД тоже хотят воспользоваться преимуществами супермодного новшества, XML уже интегрирован в Oracle, MS SQL и т.д.

XML - язык разметки. Прообразом XML был SGML (Standart Generalized Markup Language), назначение которого состоит в описании структуры языков разметки, определении их синтаксиса, элементов и атрибутов. Один из языков, описанный им, - HTML (HyperText Markup Language). То есть HTML – экземпляр SGML. XML – это язык SGML, сильно урезанный и максимально упрощенный. XML определяет синтаксис языков. В XML вполне можно создать HTML, а также множество других языков. XML был создан специально для того, чтобы служить основой для последующих модификаций. В отличие от HTML, XML не имеет фиксированного набора атрибутов. Его центральный принцип – самостоятельное определение разработчиком допустимого набора элементов исходя из поставленных задач. XML - это только спецификация, описывающая набор правил, ограничений и рекомендаций, публикуемых консорциумом W3C (World Wide Web Consortium). А документ, написанный на нем, есть не что иное, как текстовый файл, подобный HTML, но намного проще. Чтобы понять его простоту, нужно знать правила описания:

- можно писать абсолютно любые теги на любом языке;

- открывающемуся тегу должен обязательно соответствовать закрывающий;

- значение атрибута должно быть заключено в кавычки;

- регистр символов имеет значение.

Программист также использует специальные теги, которые начинаются и заканчиваются знаком вопроса, где указывается, как именно обрабатывать данные. Каждый файл должен содержать в первой строке специальный тег, в котором указывается версия стандарта и кодировка описываемых данных. Например:

Обрабатывать XML можно с помощью специальных программных комплексов, называемых парсерами. Можно пользоваться уже готовыми парсерами (MicroSoft XML, LibXML, Sablotron, Xalan, Xerces) или написать свой. Как правило, парсеры оформлены в виде библиотек .dll для Windows или .so для Unix. Они также входят в состав многих интернет-браузеров (MSIE, Opera, Firefox).

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

Насильственная интеграция XML

Работа с XML интегрирована во многие СУБД, например, в MS SQL Server. Oracle пошел еще дальше, объявив XML отдельным типом данных. Одна из немногих СУБД, которая осталась без поддержки XML, - это InterBase. Разработчики посчитали нецелесообразным добавлять новые особенности программе и занялись исправлением старых багов.

Содержание  Вперед на стр. 052-066-2