Лекция: В листинге 11.1 содержится пример XML-файла, представляющий инвентарную опись книжного магазина.

XML состоит из структурированных иерархических дескрипторов. Мы видим два дескриптора <book>, каждый из которых имеет собственные атрибуты — жанр (genre) и стиль (style) и различные характеристики — название (title), автор (author), цена (price). Фактические данные заключены внутри них. Все множество данных ограничено дескриптором <bookstore>, описывающим этот набор данных. Такой тип представления данных называют деревом документа (document tree) или деревом данных (data tree).

ПРИМЕР и ТАБЛИЦУ ПЕРЕПИСАЛА!

1: <bookstore>

2: <book genre=«novel» style=«hardcover»>

3: <title>The Handmaid's Tale</title>

4: <price>19.95</price>

5: <author>

6: <first-name>Margaret</first-name>

7: <last-name>Atwood</last-name>

8: </author>

9: </book>

34: </bookstore>

Bookstore

Genre Style THIe AuFirstName Au LastName Price
novel hardcover The Handmaid's Tale Margaret Atwood 19.95
novel paperback The Poisonwood Bible Barbara Kingsolver 11.99

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

Схемы XML ЭТО ЕСТЬ!!!

формат данных собственных дескрипторов определяют XML схемы. Рассмотрим схему определений для листинга 11.1.

Схема XML

!!! ПРИМЕР ПЕРЕПИСАЛА!!!

1: <?xml version=«1.0»?>

2: <Schema xmln s=«urn:schemas-microsoft-com:xml-data»

3: xmlns:dt=l<urn:schemas-microsoft-com:datatypes">

4: <ElementType name=«first-name» content=«textOnlyl1/>

5: <ElementType name=»last-name" content=«textOnly»/>

6: <ElementType name=«name» content=«textOnly»/>

7: <ElementType name=«price» content=«textOnly»

8: dt:type=«fixed.l4.4»/>

9: <ElementType name=«author» content=«eltOnly» order=«one»>

10: <group order=«seq»>

11: <element type=«name»/>

12: </group>

13: <group order=«seq»>

14: <element type=«first-name»/>

15: <element type=Hlast-name"/>

16: </group>

17: </ElementType>

18: <ElementType name=«title» content=«textOnlylf/>

19: <AttributeType name=»genre" dt:type=«string»/>

20: <AttributeType name=«style» dt:type=«enumeration»

21: dt:values=«paperback hardcover»/>

22: <ElementType name=«book» content=«eltOnly»>

23: <attribute type=«genre» required=«yes»/>

24: <attribute type=«style» required=«yes»/>

25: <element type=«title»/>

26: <element type=«authorH/>

27: <element type=»price"/>

28: </ElementType>

29: <EleroentType name=Hbookstore" content=«eltOnly»>

30: <element type=nbook"/>

31: </ElementType>

32: </Schema>

В дескрипторах <element type> определяются форматы данньк. В строках 4—7 объявляются элементы first-name, last-name, name и price, использующиеся далее в схеме. Определения этих элементов аналогичны объявлению переменных в заголовках страниц.

Атрибут content задает тип данных, допустимых для данного дескриптора. Атрибут dt: type определяет дополнительные свойства данных (например, вид формата, как в строке 8).

Строки 9—17 определяют другой элемент — author. Этот элемент содержит внутри себя другие дескрипторы, определенные ранее в строках 4—7. Строки 18-21 описывают дополнительные элементы и атрибуты, которые можно использовать в схеме.

В заключение строки 22—28 определяют элемент book, который включает в себя все ранее определенные элементы. Он должен соответствовать формату XML-файла. И в 29 строке определяется элемент bookstore, состоящий только из элемента book.

 

еще рефераты
Еще работы по информатике