XML Schema Definition | |
---|---|
Дата появи | 28 жовтня 2004 |
Творці | World Wide Web (W3C) |
Основні реалізації | Допомога у відображені Вебсторінок і вебдодатків |
Операційна система | Windows,IOS,Android |
XML schema — спосіб описання типу XML документу, як правило, визначається шляхом введення обмежень на структуру та зміст документів заданого типу на додаток до базових синтаксичних обмежень самого форматуXML.
Такий підхід дозволяє об'єктно-орієнтованим мовам програмування легко створювати об'єкти в пам'яті, що, безсумнівно, зручніше, ніж розбирати XML як звичайний текстовий файл.
Крім того, XSD є розширюваним, і дозволяє підключати вже готові бібліотеки для опису типових задач, наприклад вебсервісів, таких якSOAP.
Варто також згадати про те, що в XSD є вбудовані засоби документування, що дозволяє створювати самодостатні документи, які не потребують додаткового опису.
XML Schema дає можливість представлення типу документа на досить високому рівні абстракції.
Для визначення схем XML були розроблені спеціальні мови. МоваDocument Type Definition (DTD), яка використовується в специфікації XML, є досить обмеженою мовою XML схем, але використовується в XML не тільки як мова схеми.
Ще двома поширеними мовами визначення схем єXML Schema (розроблена та підтримуєтьсяW3C), таRELAX NG.
XML Schema являє собою більш потужну альтернативуDocument Type Definition (DTD).
Версія 1.0 була схвалена як рекомендаціяконсорціуму W3C від 2 травня 2001 року. Таким чином, XML Schema стала першою специфікацією опису схеми XML-документа, що отримала статус рекомендаціїW3С.
28 жовтня 2004 року була опублікована друга редакція версії 1.0, у якій виправлили ряд помилок.
5 квітня 2012 року було затверджено Версію 1.1.
Переваги XML Schema передDocument Type Definition (DTD):
Процес перевірки того, чиXML-документ описаний схемою, називається валідацією. Всі XML-документи повинні бути well-formedness, але не обов'язково. Найчастіше використовуються валідатори DTD-перевірки, але деякі також підтримують XML Schema абоRELAX NG.
Простий приклад схеми на XML Schema, розташованої в файлі «country.xsd» яка описує дані про населення країни:
<?xml version="1.0" encoding="utf-8"?><xs:schemaxmlns:xs="http://www.w3.org/2001/XMLSchema"><xs:elementname="country"><xs:complexType><xs:sequence><xs:elementname="country_name"type="xs:string"/><xs:elementname="population"type="xs:decimal"/></xs:sequence></xs:complexType></xs:element></xs:schema>
Оголошення елемента:
<xs:elementname="lastname"><xs:elementname="age"><xs:elementname="dateborn">
Оголошення атрибута:
<xs:attributename="xxx"type="yyy"/>
Приклад XML документа, що відповідає цій схемі:
<?xml version="1.0" encoding="utf-8"?><country><country_name>France</country_name><population>59.7</population></country>
Правила синтаксису XML Schema:
XML Schema підтримує задання типів даних. Найпоширеніші типи:
Приклад:
<xs:elementname="lastname"type="xs:string"/><xs:elementname="age"type="xs:integer"/>