Основни положения XML-схема за задаване на елементите

Използвайте, за да се определи структурата на XML-на XML-схемата вместо DTD

Ashvin Radiya. Президент и главен технически директор, AvantSoft, Inc.

Vibha Dixit. Изпълнителен директор, AvantSoft, Inc.

XML-схема има по-мощни функции от DTD. За да се илюстрира предимствата от използването на механизъм XML-схема през първите три потребители сравнява различни методи за представяне елементи. Обява 1 показва откъс от XML-документ. Обява 2 показва двата елемента, обявени в DTD синтаксис и Обява 3 показва синтаксиса, съответстваща на XML-схемата. Имайте предвид, че синтаксиса на Обява 3 е подобна на синтаксиса на XML. При използване на вериги валидиране анализатор може да провери дали елементът InvoiceNo положително цяло число, и дали ProductID състои от предварително определен набор от символи (шест цифри и писмо от А до Z). Синтактичен анализ, определяне DTD-механична обработка, може само да потвърди, че елементите на данните, са низове.

Обява 1: фрагмент на XML-документ
Обявата 2: DTD фрагмент описва елементи в Обявата 1
Обява 3: Подробности на XML-схема, описваща елементи в Обява 1

Използването на имена в XML-схема

ограничения DTD

Въпреки факта, че DTD са SGML и HTML разработчици, както и описание на механизма на структурирана информация, която продължава вече 20 години, DTD има някои ограничения в сравнение с XML-схеми.

Според DTD елемент може да бъде представена от един от следните три начина:

  • Текст, който
  • Текст, който се смесва с друго дете елемент
  • Набор от дъщерните елементи

DTD не разполага синтаксиса на XML и предлага само ограничена подкрепа за видове и именни пространства.

Работейки заедно, една страна може да се справи документи на други страни и различни страни могат да представят своите елементи на данните по различни начини. Освен това, в отделен документ, може да се наложи самостоятелно да се отнасят до елементи със същото име, от различни страни. Използването определение XML-схема позволява да се разграничат със същото име, чрез определяне на различни пространства от имена.

Обява 4: Целева и изходен именно пространство
Фигура 1: Namespaces за включване 4
Обява 5: настройте първоначалните пространства от имена, внос пространство от имена
Обява 6: Използване на набор от множеството схеми именно пространство
Фигура 2: Space имена за предложения от 5 и 6

Определяне на елементи

Определението на даден елемент е да се определят своето име и модел съдържание. Моделът на XML-схема на елемента съдържание се определя от неговия вид. Следователно елементите в XML-документ могат да имат само стойности, които отговарят на типовете, определени в неговата схема.

прости видове

Спецификация XML-Схема определя няколко прости видове за ценностите, както е показано в таблица 2 -predopredelennye прости стойностни типове.

Типът елемент може да бъде проста или сложна (трудно). прост тип елемент не може да съдържа други елементи или атрибути. Комплекс тип може да създаде ефект на вграждането на елементите в други елементи или характеристики могат да бъдат свързани с елемента. сме използвали само примери на прости типове, дефинирани от потребителя до този момент (вж. ProductCode). В спецификацията на XML-схема включва и предварително определени прости типове (вж. Вложката Простите типове). Типов прост тип ограничава ценностите на тяхната база тип. Например, предварително зададената стойност е прост тип ProductCode подгрупа от стойности база тип низ.

Обикновено, не вложени елементи са със семпъл вид

Елемент, който не съдържа други елементи или характеристики могат да бъдат причислени към обикновен тип, предварително определено или посочено от потребителя, като низ. число. десетични. време. ProductCode и т.н.

Обява 7: Някои прости типове елементи

Елементи с качества трябва да имат комплекс вид

Сега ние ще се опитаме да се добави към цената на обикновен елемент от Обява 7. атрибут валута. Вие не можете да направите това, защото на един прост тип елемент може да има атрибути. Ако искате да добавите атрибут, трябва да се определи цената като елемент на комплекс тип. В примера на Обява 8, ние определяме така наречения анонимен тип. в която интегриран вид не е дадено изрично име. С други думи, име complexType елемент не е определена.

Обява 8: комплекс тип елемент

Елементи, които съдържат вложени елементи трябва да имат комплексен тип

Таблица 1: Сравнение на сложни типове данни в DTD и XML-схема

XML-документ
Обява 9: Комплекс тип, състоящ се от глобалната прости видове
Обява 10: Скриване BookType както местни тип

Експресионните елементи за сложни ограничения

XML-схема предлага по-голяма гъвкавост от DTD при изразяване на ограничения върху модела на съдържание на елемента. В най-простия ниво, като в DTD, може да се асоциира с атрибутите на елементите, както и да се уточни, че тя може да се появи последователност от само един (1), нула или повече (*), или един или повече (+) клетки от дадена набор от елементи. В XML-схемата може да се изрази чрез допълнителни ограничения, като се използват за тази цел, например, на атрибути minOccurs и maxOccurs за елемент елемент, както и елементите на избор. група и всички.

Обява 11: Изразяване на ограничения за вида елементи

Обява 11 Заглавие етикет е незадължителен по отношение на книгата (същото правило може да се зададе в DTD). Въпреки това, той също така се посочва, че в елемент на книги трябва да е най-малко един и най-много два елемента Автор. По подразбиране атрибути minOccurs и maxOccurs елемент таг е 1. избор елемент показва, че може да получи само една от посочените дъщерни елементи. Друг елемент на всички уточнява, че всички дъщерни елементи могат да се показват само веднъж в произволен ред, или не може да се появи изобщо. В Обява 12, той обяви, че заглавието на два маркера и автора трябва да се появи в книгата в произволен ред, или да не се появи изобщо. Тези ограничения са трудни да се изрази с помощта на DTD.

Обява 12: Указател към факта, че елемента трябва да бъдат дефинирани всички видове

резюмиране

В този документ, ние сме разкрити с помощта на прости примери за най-основните понятия, необходими за определяне на конструктивните елементи с помощта на XML-схема. Също така на разположение са и много други мощни механизми:

За да се получи повече информация за XML-схеми от W3C онлайн документация (Виж ресурси. На темата) и DW XML зона. Сега, когато спецификацията на XML-схема е била потвърдена като кандидат относно препоръката на W3C, вие със сигурност може да го използвате за най-голяма.