Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум_Сетевые технологии.doc
Скачиваний:
6
Добавлен:
09.11.2018
Размер:
1.02 Mб
Скачать

Практикум 1_2. Использование dtd для описания xml-документа

Документ XML может быть правильным (well-formed) и действительным (valid). Правильный XML-документ подчиняется определенным грамматическим законам, прописанным в стандарте XML 1.0. Чтобы правильный XML документ был еще и действительным, он должен иметь связанное определение типа документа (DTD) и соответствовать ему. Рассмотрим XML-документ и сопровождающее его описание DTD:

  1. П

    <?xml version = '1.0' encoding = 'windows-1251'?>

    <!DOCTYPE ARTICLE SYSTEM 'example1.dtd'>

    <ARTICLE>

    <HEADLINE>

    <MAIN_HEAD>Тут находится заголовок статьи</MAIN_HEAD>

    <SUB_HEAD>Здесь расположен подзаголовок</SUB_HEAD>

    </HEADLINE>

    <BYLINE>

    <AUTHOR>Шилин Алексей</AUTHOR>

    <TITLE>Докладчик</TITLE>

    </BYLINE>

    <STORY_DATE>11 февраля 2003</STORY_DATE>

    <BODY>

    Содержимое статьи ...

    </BODY>

    </ARTICLE>

    ример оформления статьи реализованный в XML. Наберите следующую информацию в Notepad и сохраните ее на жестком диске под именем example1.xml

  2. С

    <!ELEMENT ARTICLE (HEADLINE, BYLINE, STORY_DATE, BODY)>

    <!ELEMENT HEAD_LINE (MAIN_HEAD, SUB_HEAD)>

    <!ELEMENT MAIN_HEAD (#PCDATA)>

    <!ELEMENT SUB_HEAD (#PCDATA)>

    <!ELEMENT BYLINE (AUTHOR, TITLE)>

    <!ELEMENT AUTHOR (#PCDATA)>

    <!ELEMENT TITLE (#PCDATA)>

    <!ELEMENT STORY_DATE (#PCDATA)>

    <!ELEMENT BODY (#PCDATA)>

    вяжем получившийся XML-документ с сопровождающим его определением типа документа (DTD). Наберите следующую информацию в Notepad и сохраните ее на жестком диске под именем example1.dtd

  3. Теперь откройте этот файл в IE. Если вы набрали все теги в точности, файл example1.xml будет выглядеть примерно так:

Э

<!ELEMENT ARTICLE (HEADLINE, BYLINE, STORY_DATE, BODY)>

лемент документа ARTICLE содержит четыре дочерних узла: HEADLINE, BYLINE, STORY_DATE и BODY. Они перечислены списком в скобках:

Н

<!ELEMENT HEAD_LINE (MAIN_HEAD, SUB_HEAD)>

екоторые из этих элементов содержать собственные дочерние узлы, например элемент HEADLINE:

Э

<!ELEMENT MAIN_HEAD (#PCDATA)>

лемент, содержащий данные XML, объявляется следующим образом:

Практикум 1_3. Атрибуты

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

  1. П

    Изменив элемент <student> на <student id> мы тем самым уточнили информацию о студенте, теперь каждый студент имеет свой идентификационный номер (id_student). А также для каждой фотографии создадим атрибут соответствующий идентификационному номеру студента.

    1. Наберите следующую информацию в Notepad и сохраните ее на жестком диске под именем students.xml

    остроим иерархическое дерево нового XML-документа будет выглядеть так:

  1. Теперь откройте этот файл в IE. Если вы набрали все теги в точности, файл students.xml будет выглядеть так:

    <?xml version = '1.0' encoding = 'windows-1251'?>

    <students>

    <student id="101">

    <lastName>Шилин</lastName>

    <firstName>Алексей</firstName>

    <middleName>Валерьевич</middleName>

    <faculty>УП-1</faculty>

    <grNub>1</grNub>

    <dateStarted>1-09-2000</dateStarted>

    <photo id="101" >images/101.jpg</photo>

    </student>

    <student id="102">

    <lastName>Петров</lastName>

    <firstName>Олег</firstName>

    <middleName>Михайлович</middleName>

    <faculty>УП-1</faculty>

    <grNub>2</grNub>

    <dateStarted>1-09-2000</dateStarted>

    <photo id="102" >images/102.jpg</photo>

    </student>

    <!-- more students, as required -->

    </students>