Понякога е по-лесно да разберете как да напишете добре формулиран XML, като видите пример. Информационният бюлетин на Web Writer е написан с помощта на формуляр на XML - ние го наричаме AML или About Markup Language (вижте фигурата). Макар че това е работен документ, всъщност не е добре оформен или валиден XML документ.
Добре оформени
Има някои конкретни правила за създаване на добре оформен XML документ:
- Декларацията XML трябва да е на първо място във всеки документ.
- Коментарите не са валидни в маркер. Коментарите не могат да съдържат два тирета, различни от началото и края на коментара.
- Етикетите трябва да имат краен маркер или да бъдат затворени в самия единичен маркер например
. - Всички атрибути на маркерите трябва да бъдат цитирани, за предпочитане двойни цитати, освен ако самият атрибут съдържа двоен цитат.
- Всеки XML документ трябва да съдържа един елемент, който напълно съдържа всички останали елементи.
Има само два проблема с документа, които го правят не добре оформени:
Първото нещо, от което документът AML се нуждае, е изявление на XML декларация.
Другият проблем е, че няма нито един елемент, който да обхваща напълно всички останали елементи. За да коригираме това, ще добавим външен елемент на контейнера: Извършването на тези две прости промени (и гарантирането, че всички елементи съдържат само CDATA) ще превърне недобре формирания документ в добре оформен документ. Валиден XML документ е валидиран спрямо дефиниция на тип на документа (DTD) или XML Schema. Това са набор от правила, създадени от разработчика или от организация на стандарти, които определят семантиката на XML документа. Те разказват на компютъра какво да правят с маркирането. В случая на езика за маркиране, тъй като това не е стандартен XML език, като XHTML или SMIL, DTD ще бъде създаден от разработчика. Това DTD най-вероятно ще бъде на същия сървър като XML документа и ще бъде посочен в горната част на документа. Преди да започнете да разработвате DTD или Схема за документите си, трябва да осъзнаете, че просто чрез добре оформено XML документ се описва самостоятелно и по този начин не се нуждае от DTD. Например, с нашия добре оформен документ AML, съществуват следните маркери: Ако сте запознати с бюлетина на Web Writer, може да разпознаете различните секции на бюлетина. Това прави много лесно създаването на нови XML документи, използващи същия стандартен формат. Винаги ще поставяме пълното заглавие в маркера и URL адреса на първата секция в маркера. Ако се изисква да напишете валиден документ XML, за да използвате данните или да ги обработвате, бихте ги включили в документа с маркера. В този маркер дефинирате основния XML маркер в документа и местоположението на DTD (обикновено уеб URI). Например:
Едно хубаво нещо за декларациите на DTD е, че можете да декларирате, че DTD е локален за системата, където XML документът е със "SYSTEM". Можете да посочите и публичен DTD, например с документ HTML 4.0:
Когато използвате и двете, вие казвате на документа да се използва конкретен DTD (публичен идентификатор) и къде да го намерите (идентификатор на системата). И накрая, можете да включите вътрешен DTD директно в документа в рамките на маркера DOCTYPE. Например (това не е пълно DTD за документа AML):
> За да създадете валиден XML документ, можете също така да използвате XML Schema документ, за да дефинирате вашия XML. XML Schema е XML документ, който описва XML документи. Научете как да напишете схема. Самото насочване към схема на DTD или XML не е достатъчно. XML, който е в документа, трябва да следва правилата в DTD или Схемата. Използването на валидиращ анализатор е лесен начин да проверите дали вашият XML е в съответствие с правилата на DTD. Можете да намерите много такива съставители онлайн.
DTDs
XML Схема
Забележка