Компьютерные книги
Главное меню
Главная Поиск по сайту Добавить материал О нас Карта книг Карта сайта
Реклама
computersbooks.net -> Добавить материал -> Языки программирования -> Ватсон К. -> "С#" -> 236

С# - Ватсон К.

Ватсон К. С# — Лори, 2005 . — 879 c.
ISBN 1-861004-98-2
Скачать (прямая ссылка): vatsonc2005.pdf
Предыдущая << 1 .. 230 231 232 233 234 235 < 236 > 237 238 239 240 241 242 .. 404 >> Следующая


XDR-схемы

Чтобы привязать внешнюю XDR-схему к XML-документу, необходимо указать для документа пространство имен со значением 'х-schenia: <асйеявл*м#айла>':

<?xml version=“l,Q*7>

<books xmlns«*x-echeina:booke.xdr'>

</books>

Схема, приведенная ниже, представляет собой XDR-эквнвалент XSD-схемы, рассматривавшейся выше. Эти схемы существенно отличаются друг от друга:

<Schema xmlns="um:achemae-mucrosoft-com:xml-data">

<ElementType name="title" content="textOnly" />

^lementTYpe narae^"author" content="textOnly" />

<ElementType name="code" concent 'texcOnly' />

<ElementType name="book" concent *eltOnly>

<group order="seq">

«element type ="title" />

<element type3'author* />

<elemenc type=code" />

</group>
508

Глава 18

< / Е1 ementType>

<Elementiype пате="Ьоокв" content="eltOnly>

<element type=‘book" />

</ElementType>

</Schema>

В этом случае мы также задаем пространство имен, испсшьзуемое по умолчанию, чтобы сообщить анализатору, что все элементы, входящие в состав документа, относятся к определению схемы; в данном случае — это пространство имен 'urn:schemas-microsoft-com:xmi-data*. Обратите внимание на то, что (в отличие от XSD-схем) на этот раз используется свой собственный формат, который вообще не будет работать ни с какими продуктами, кроме созданных компанией Microsoft. На самом деле, XDR-схемы оказываются особенно полезными при работе с SQL Server — сервером базы данных компании Microsoft, поскольку у них имеется встроенная поддержка XDR.

На этот раз в качестве корневого элемента мы используем элемент <Schema>, начинающийся с заглавной буквы ‘S’. В данном случае корневой элемент также содержит в себе все описание схемы полностью (не забывайте о том, что XML-документы должны обладать единственным корневым документом). Однако далее все идет совсем по-другому — элементы, которые будут появляться в нашем документе, описаны в обратном порядке\ Причина такого расположения элементов заключается в том, что каждый элемент документа представляется в схеме элементом <EiementType>, в котором, в свою очередь, содержатся элементы <eiement> (обратите внимание, что в данном случае используется строчная буква ‘е’) для каждого дочернего элемента. Внутри тегов <eloment> нами задается атрибут type, который должен указывать на <Е1епшпьтуре>, следовательно, он должен быть к этому моменту уже определен. Если нужно наложить ограничения на то, каким образом могут располагаться дочерние элементы, то можно воспользоваться элементом <group>, располагающимся внутри элемента <EiementType>, и задать его атрибут order, В данном случае, ему присваивается значение *seq*; это означает, что в документе элементы должны располагаться в том же порядке, в котором они располагаются в схеме,— абсолютно аналогично тегу <sequence> в XSD-схеке.

Теперь можно приступить к созданию XML-документов. Выполнение большей части черной работы VS берет на себя, и мы даже сможем создать XSD-схему для нашего XML-документа, не написав ни единой строки кода!

I. Откройте VS и выберите пункт меню File | New | File... (при этом не требуется, чтобы уже был открыт какой-либо проект).

На экране появится окно, представленное на рисунке слева.

Практикум: создание XML-документа в VS

ЩШ ^1

MtivtT-.l-
Доступ к данным пользователя________________________________________________________509

2. В меню New File выберите пункт XML File и щелкните мышью на Open. VS создаст новый XML-документ. Обратите внимание на то, что в XML-декларацию, которая используется VS, включен атрибут encoding (кроме того, VS выводит атрибуты и элементы разными цветами, однако это не слишком хорошо заметно при черно-белой печати):

<?xml version="l. О" encoding='rutf-B" ?>

3. Сохраните файл, нажав клавиши С/г/ + 5, или выбрав

пункт меню File | Save XMLFilel. VS запросит вас, куда следует записать данный файл и какое имя ему присвоить; сохраните его

В папке BegCSharp\Chapterl8 ПОД именем GhostStories.xml.

4. Переведите курсор на следующую после XML-декларации строку и введите текст <stories>. Обратите внимание на то, что VS автоматически добавляет закрывающий тег непосредственно после того, как мы вводим знак “больше чем”, которым оканчивается открывающий тег:

<?xml version="l,0" encoding=,,utf-8'' ?> <stories>J</stot:ie3>

5. Введите следующий XML-текст:

<7мп1 verBion=*l.O* encodine="utf-8" ?> otoriesv

<ato*y> . .

<title>A House in Aungier Street</title> <author>

<name>Sheridan Le Fanu</name>

<nat ional i ty>Iriah</nationality> «/author»

<rating>eerie</rating>

</etory>

<etory>

<title>The Signalman</title>

<author>

¦cname>Cberles Dickens</name> <nationality>English</nationality> </author>

<rating>atmospheric</ratin3>

</etory>

<ntory> -

<title>The Turn of the Screw</title> <author>

<name>Henry James</name> <nationality>Araarican</nationality>

</author>

<rating>a bit dull</rating>

</story>

</stories>
510

Глава 18

Data For story
; .. *' 'V l№ !‘3tinr.
Предыдущая << 1 .. 230 231 232 233 234 235 < 236 > 237 238 239 240 241 242 .. 404 >> Следующая
Книги
Web-программирован-
ие
Аппаратное обеспечение Графика Руководство по П.О. Самоучитель Теория программирования Фотошоп Языки программирования
Новые книги
Вирт Н. "Систематическое программирование " (Теория программирования)

Эком "Microsoft Excel 2000 шаг за шагом Русская версия самоучитель " (Самоучитель)

Поляков А.Ю. "Методы и алгоритмы компьютерной графики в примерах Vizual C++" (Графика)

Баяковский Ю.М. "Графическая библиотека Open GL " (Графика)

Валиков А. "Технология " (Языки программирования)
Авторские права © 2013 ComputersBooks. Все права защищены.