Почему при использовании скриптов, приведенных в курсе Основы XML лекция Лекция 8: Отображение XML-документов с использованием связывания данных не происходит связывания XLM документа с HTML? Отображаются пустые поля. Браузер IE11 |
Знакомство с XML
SGML, HTML и XML
Обобщенный структурированный язык разметки (Structured Generalized Markup Language – SGML) является родоначальником всех языков разметки. Языки HTML и XML образованы из SGML (хотя и различными способами). SGML определяет базовый синтаксис, но дает вам возможность создавать собственные элементы (отсюда термин обобщенный в названии языка). Чтобы использовать SGML для описания определенного документа, вы должны продумать соответствующий набор элементов и структуру документа. Например, чтобы описать книгу, вы должны использовать созданные вами элементы с именами BOOK, PART, CHAPTER, INTRODUCTION, A-SECTION, B-SECTION, C-SECTION и т.д.
Набор наиболее употребительных элементов, используемых для описания документа определенного типа, называется SGML-приложением. (SGML-приложение также включает в себя правила, устанавливающие способы организации элементов, а также другие особенности их взаимодействия – о чем пойдет речь в "Создание валидных XML-документов" .) Вы можете определить ваше собственное SGML-приложение, чтобы описать тип документа, с которым вы работаете, либо в теле основной программы должно быть определено SGML-приложение для описания типовых документов. Наиболее известным примером последнего типа приложений является HTML, который представляет собой SGML-приложение, разработанное в 1991 г. для описания Web-страниц.
Казалось бы, язык SGML вполне подходит для описания Web-документов. Однако разработчики из консорциума W3C посчитали, что он является слишком сложным и фундаментальным, чтобы эффективно представлять информацию в Web. Гибкость и большое обилие средств, поддерживаемых SGML, затрудняет написание программного обеспечения, необходимого для обработки и отображения SGML-информации в Web-браузерах. Следовало бы приспособить часть языка SGML специально для помещения информации в Web. В 1996 г. группа XML Working Group разработала ветвь языка SGML, назвав его расширяемым языком разметки – Extensible Markup Language.
XML является упрощенной версией SGML, приспособленной для Web. Как и SGML, XML дает возможность разрабатывать собственные наборы элементов при описании определенного документа. Как и в SGML, в теле программы может быть определено XML-приложение (или словарь), которое содержит набор наиболее употребительных элементов общего назначения и структуру документа, которая может быть использована для описания документа определенного типа (например, документов, содержащих математические формулы или векторную графику). Об XML-приложениях вы подробнее узнаете далее в этой лекции.
Синтаксис XML более простой, чем SGML, что облегчает восприятие XML-документов, а также написание программ браузеров, кодов и Web-страниц для доступа и представления информации документа.
Заменит ли XML HTML?
На сегодняшний день ответ на этот вопрос отрицательный. HTML по-прежнему остается основным языком для сообщения браузеру, как отображать информацию в Web.
B Internet Explorer 5 вы можете открывать XML-документы с вложенными таблицами стилей непосредственно браузером, не используя HTML-страницы. Однако в двух других основных методах отображения XML-документов – связывании данных и DOM-сценариях – отображение XML-документов осуществляется через HTML Web-страницы. (Даже при применении метода таблиц стилей в случае, если вы используете язык XSL, вам потребуется воспользоваться HTML, чтобы сообщить браузеру, каким образом форматировать XML-данные.)
Не заменяя HTML, XML в настоящее время используется в сочетании с ним, существенно расширяя возможности Web-страниц для:
- виртуального представления документов любого типа;
- сортировки, фильтрации, упорядочения, поиска и манипулирования информацией иными способами;
- представления информации в структурированном виде.
Как заявляют сами разработчики, XML был создан для взаимодействия с HTML и совместного с ним использования.
Официальные концептуальные цели XML
Ниже представлено десять концепций предназначения и целей применения XML, заявленных в официальной спецификации W3C, которые содержатся на Web-сайте http://www.w3.org/TR/REC-xml.
-
XML должен стать языком прямого использования в Internet.
Как вы уже могли понять, XML был разработан главным образом для хранения и распространения информации в Web.
-
XML будет поддерживать большое количество приложений.
Хотя основным его назначением является распространение информации в Web через серверы и программы-браузеры, XML также разработан для использования его другими программами. Например, XML применяется для обмена информацией между финансовыми программами, для распространения и обновления программных продуктов, а также написания голосовых сценариев при доставке информации по телефону.
-
XML будет совместим с SGML.
XML является специализированной ветвью SGML. Преимущество здесь заключается в простоте адаптации программных средств SGML для работы с HTML.
-
Будет легче писать программы, обрабатывающие XML-документы.
Для практического использования XML необходимо, чтобы было достаточно просто писать браузеры и другие программы, обрабатывающие XML-документы. На деле основной причиной выделения XML из SGML была доступность написания программ для обработки XML-документов.
Все перечисленные далее свойства являются в той или иной степени производными этой основной концепции.
-
Количество дополнительных функций в XML должно быть минимальным, а в идеале – нулевым.
Минимальное число дополнительных функций в XML упрощает написание программ для обработки XML-документов. Изобилие дополнительных подключаемых функций в SGML стало основной причиной, обусловившей его практическую непригодность для представления Web-документов. Дополнительные функции SGML требуют переопределения символов-разделителей для тегов (обычно <and> ) и пропуск конечного тега с целью обнаружения процессором конца элемента. При строгом написании программы обработки SGML-документов необходимо учитывать возможность появления всех дополнительных функций, даже если они редко встречаются.
-
XML-документы должны быть понятными и ясными для пользователя.
XML призван стать lingua franca (универсальным языком) для обмена информацией среди пользователей и программ по всему миру. В соответствии с этой концепцией пользователи, а также специализированные программы, должны иметь возможность создавать и прочитывать XML-документы. Доступность и прозрачность для пользователя выделяют XML из большинства других форматов, применяемых при построении баз данных и текстовых документов.
Пользователь может легко прочесть XML-документ, поскольку он описан простым текстом и имеет логичную иерархическую структуру в виде дерева. Вы можете упростить XML-документы, назначив информативные имена для элементов, атрибутов и объектов, а также добавив полезные комментарии. (Об этом пойдет речь далее в данной лекции.)
-
Разработка XML должна быть завершена достаточно быстро.
XML станет общепринятым стандартом лишь в том случае, если программисты и пользователи примут его. Следует создать этот стандарт до того, как общество примет альтернативные стандарты, которые все быстрее создаются компаниями-разработчиками программного обеспечения.
-
Язык XML должен быть формальным и кратким.
Спецификация XML написана на формальном языке, используемом для представления компьютерных языков, с нотацией, известной как расширенная форма Бакус-Наура (Extended Backus-Naur Form (EBNF)). Этот формальный язык, хотя и достаточно сложен для восприятия, лишен двусмысленности и существенно облегчает написание XML-документов, а в особенности программ для их обработки.
-
XML-документы будет проще создавать.
При практическом использовании XML как языка разметки для Web-документов упрощается не только написание обрабатывающих программ, но и процесс создания самих XML-документов.
-
Сжатой форме при XML-разметке придается минимальное значение.
В соответствии с пунктом 6 (XML-документ должен быть ясным и понятным для пользователя), XML-разметка не должна быть излишне сжатой, чтобы не вступать в противоречие с указанной целью.