Пространства имен и схемы 70 Сегментация проблемы 71


Пространства имен и схемы



жүктеу 3,64 Mb.
бет2/150
Дата17.01.2022
өлшемі3,64 Mb.
#33337
түріПротокол
1   2   3   4   5   6   7   8   9   ...   150
Лекции 2

Пространства имен и схемы


Описанные в этой главе инструменты определения словарей XML — базовые правила оформления документов и DTD —содержатся в рекомендации W3C XML 1.0. Они являются основой XML и определяют основные возможности это­го языка, позволяющие разработчикам приложений создавать языки разметки, описывая ими домены интересующих их проблем. Но часто, осваивая эти техно­логии, особенно в области реальных приложений, мы испытываем потребность в дополнительной функциональности.

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

Ранее мы описали некоторые недостатки определений DTD. В основном, они были связаны с тем, что синтаксис этих определений отличается от синтак­сиса XML (конкретно, используется так называемая расширенная форма Бэкуса-Наура, Extended Backus Naur Form), и с тем, что эти определения выра­зительны не в достаточной степени. Итак, сначала мы еще раз исследуем эти не­достатки и рассмотрим способы их устранения. Это прольет свет и на другие проблемы, связанные с определением вашей собственной разметки.

Еще одна проблема, которая может быть поводом для беспокойства, — это то, что каждый пользователь может создавать свои собственные теги. Легко представить себе, что для обозначения различных вещей люди будут пользова­ться одними и теми же именами элементов. Например, такой элемент, как mo­nitor может иметь несколько значений, в зависимости от обстоятельств. Если вы пишете DTD для компьютерной периферии, то это понятие может означать экран, а в студии звукозаписи так часто называют микрофоны. В DTD для школы монитором можно назвать студента со специальными обязанностями, а на ядер­ной силовой станции мониторы будут сообщать о сбоях в работе. Даже если значения элементов одинаковы, их возможное содержание может изменяться в зависимости от определения. Таким образом, нам необходим способ, позволяющий определять конкретные виды использования элемента, особенно, если в одном документе мы смешиваем различные виды словарей. Для решения проблемы консорциум W3C выпустил спецификацию, называемую XML Namespaces (пространством имен XML), позволяющую определить контекст элемента в пространстве имен.

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

Такие проблемы особенно заслуживают внимания, учитывая перспективы, открываемые языком XML в мире электронной коммерции, где различные пользователи и компании хотят использовать для обмена информацией знакомые друг другу форматы. Но "совместить" документы, прочитав DTD из кода, - непростая задача. Таким образом, нам необходимы способы поиска различий и сходств в конкурирующих словарях, которые помогут установить связь между ними.

Трудности при создании документа XML из нескольких источнике; каждый из которых записан в соответствии с различными определениями DTD или различными схемами, использующими одни и те же имена элементов, связаны со словарями данных — их построением и правилами.

В данной главе вы познакомитесь с двумя инструментами — пространствами имен и схемами XML. Пространства имен позволяют разработчикам XML разбивать сложную проблему на небольшие фрагменты и объединять несколько словарей в одном документе для полного ее описания. С помощью схем проектировщики словарей создают более точные определения, чем это было возможно в DTD, причем делают это, используя синтаксис XML.

Эти два инструмента помогают решать сложные задачи, возникающие при использовании XML. Пространства имен и схемы позволяют проектировщикам и программистам XML:

• Лучше организовывать словари для решения сложных проблем

• Сохранять сильную типизацию данных при преобразованиях в XML и из него

• Более точно и гибко описывать словари, чем это было возможно в случае DTD

• "Читать" правила словаря на языке XML, осуществляя доступ к его определениям без усложнения анализатора


жүктеу 3,64 Mb.

Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   ...   150




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау