Опубликован: 24.01.2007 | Уровень: для всех | Доступ: платный
Лекция 2:

Создание и отображение вашего первого XML-документа

< Лекция 1 || Лекция 2: 1234 || Лекция 3 >
Аннотация: В этой лекции вы получите представление о процессе создания и отображения XML-документа в Web-браузере. Сначала вы создадите простой XML-документ, исследуете его структуру и познакомитесь с основными правилами создания корректно сформированного XML-документа. Затем вы узнаете, как отобразить этот документ в браузере Microsoft Internet Explorer 5 путем создания и присоединения простой стилевой таблицы, которая сообщает браузеру, как форматировать элементы в документе. Данная лекция содержит краткий обзор тем, которые будут обсуждены в курсе.

Создание XML-документа

Поскольку описание XML-документа представляет собой простой текст, вы можете создать его, используя ваш любимый текстовый редактор, например, редактор Notepad, входящий в состав Microsoft Windows. Еще лучше воспользоваться редактором, в котором предусмотрена возможность анализа исходных кодов, например, текстовым редактором Microsoft Visual Studio, рассчитанным на работу с Microsoft Visual C++, Microsoft Visual InterDev, Microsoft Visual J++ и другими приложениями Visual Studio.

Создайте XML-документ

  1. Откройте новый файл в вашем текстовом редакторе и введите текст XML-документа, листинг которого представлен ниже.

    При желании можно опустить некоторые элементы типа BOOK. Вам не обязательно набирать все восемь – достаточно будет трех или четырех. (Элемент BOOK включает в себя теги <BOOK> и </BOOK> и весь содержащийся между ними текст.)

  2. Воспользуйтесь командой Save (Сохранить) текстового редактора, для сохранения документа на вашем жестком диске, присвоив ему имя Inventory.xml.
<?xml version="1.0"?>
<!-- File Name: Inventory.xml -->
<INVENTORY>
   <BOOK>
      <TITLE>The Adventures of Huckleberry Finn</TITLE>
      <AUTHOR>Mark Twain</AUTHOR>
      <BINDING>mass market paperback</BINDING>
      <PAGES>298</PAGES>
      <PRICE>$5.49</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>Leaves of Grass</TITLE>
      <AUTHOR>Walt Whitman</AUTHOR>
      <BINDING>hardcover</BINDING>
      <PAGES>462</PAGES>
      <PRICE>$7.75</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>The Legend of Sleepy Hollow</TITLE>
      <AUTHOR>Washington Irving</AUTHOR>
      <BINDING>mass market paperback</BINDING>
      <PAGES>98</PAGES>
      <PRICE>$2.95</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>The Marble Faun</TITLE>
      <AUTHOR>Nathaniel Hawthorne</AUTHOR>
      <BINDING>trade paperback</BINDING>
      <PAGES>473</PAGES>
      <PRICE>$10.95</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>Moby-Dick</TITLE>
      <AUTHOR>Herman Melville</AUTHOR>
      <BINDING>hardcover</BINDING>
      <PAGES>724</PAGES>
      <PRICE>$9.95</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>The Portrait of a Lady</TITLE>
      <AUTHOR>Henry James</AUTHOR>
      <BINDING>mass market paperback</BINDING>
      <PAGES>256</PAGES>
      <PRICE>$4.95</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>The Scarlet Letter</TITLE>
      <AUTHOR>Nathaniel Hawthorne</AUTHOR>
      <BINDING>trade paperback</BINDING>
      <PAGES>253</PAGES>
      <PRICE>$4.25</PRICE>
   </BOOK>
   <BOOK>
      <TITLE>The Turn of the Screw</TITLE>
      <AUTHOR>Henry James</AUTHOR>
      <BINDING>trade paperback</BINDING>
      <PAGES>384</PAGES>
      <PRICE>$3.35</PRICE>
   </BOOK>
</INVENTORY>
Листинг 2.1. Inventory.xml

Анатомия XML-документа

XML-документ, подобный только что набранному вами, состоит из двух основных частей: пролога и элемента Документ (его также называют корневым элементом), как показано на рисунке 2.1.

Пролог

В данном примере документа пролог состоит из следующих строк:

<?xml version="1.0"?>

<!-- File Name: Inventory.xml -->

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

Вторая строка пролога состоит из пробела. С целью улучшения внешнего вида документа вы можете вставлять любое количество пустых строк между элементами пролога. При обработке они будут игнорироваться.

Третья строка пролога представляет собой комментарий. Добавление комментариев в XML-документ не обязательно, но позволяет сделать его более понятным. Комментарий начинается с символов <!-- и заканчивается символами -->. Между этими двумя группами символов вы можете поместить любой текст (за исключением двойного тире -- ); XML-процессор проигнорирует его.

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

Пролог может также содержать следующие необязательные компоненты:

  • объявление типа документа, определяющее тип и структуру документа. Объявление типа документа должно следовать после XML-объявления;
  • одна или несколько инструкций по обработке, содержащих информацию о порядке проходов при обработке приложения XML-процессором. Далее в этой лекции вы познакомитесь с инструкцией по обработке для связывания таблицы стиля с XML-документом.

Примечание. XML-процессор – это программный модуль, считывающий XML-документ и обеспечивающий доступ к его содержимому. Он также предоставляет этот доступ другим программным модулям, или приложениям, которые манипулируют и отображают содержимое документа. Если вы отображаете XML-документ в Internet Explorer 5, браузер включает в себя как XML-процессор, так и приложение. (Если для отображения XML-документа вы используете HTML и сценарий (скрипт-код), то при этом самостоятельно создаете часть приложения.) Обратите внимание, что термин приложение в данном случае отличен от термина, применяемого для обозначения XML-приложения (или словаря) как целевого набора элементов и структуры документа, которые используются для описания документов определенного типа (см. "Знакомство с XML" ).

Элемент Документ

Второй основной частью XML-документа является единый элемент Документ, или корневой элемент, который в свою очередь содержит дополнительные элементы.

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

В рассматриваемом примере элемент Документ – INVENTORY. Его начальный тег<INVENTORY>, конечный тег</INVENTORY>, а содержимое – восемь вложенных элементов BOOK.

Примечание. Текст в XML-документе представляет собой перемежающиеся символьные данные и данные, относящиеся к разметке. Разметка – это текст, ограниченный разделителями и описывающий структуру документа. А именно, начальный и конечный теги элемента, теги пустого элемента, объявления типа документа, инструкции по обработке, ограничители раздела CDATA, символьные ссылки, ссылки на примитивы (entity). (Об элементах разметки вы узнаете в последующих лекциях.) Остальной текст представляет собой символьные данные – реальное информационное содержимое документа (в нашем примере это названия, фамилии авторов, цена и другая информация о книге).

Примечание. Элемент Документ в XML-документе похож на элемент BODY на HTML-странице, за исключением того, что вы можете присвоить ему любое допустимое имя.

В свою очередь, каждый элемент BOOK содержит ряд вложенных элементов, как показано на рисунке 2.2.


Рис. 2.2.

Примечание. Имя, которое содержится в начальном и конечном теге, есть тип элемента.

Каждый из элементов, вложенных в элемент BOOK, например, элемент TITLE, содержит только символьные данные, как показано на рисунке 2.3.


Рис. 2.3.

Во 2 части вы узнаете о дополнительных элементах XML-документа и о включении атрибутов в начальный тег элемента.

< Лекция 1 || Лекция 2: 1234 || Лекция 3 >
Максим Попов
Максим Попов

Почему при использовании скриптов, приведенных в курсе Основы XML

лекция Лекция 8: 

Отображение XML-документов с использованием связывания данных

не происходит связывания XLM документа с HTML?

Отображаются пустые поля. Браузер IE11

Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Максим Самсоненко
Максим Самсоненко
Россия
Алексей Шибаев
Алексей Шибаев
Россия, г. Новошахтинск