Код:
<?xml version=1.0><games>
<game>
<name>Need For Speed</name>
<company>Electornic Arts</company>
<type>racing</type>
</game>
<game>
<name>Quake</name>
<company>ID Software</company>
<type>3D action</type>
</game>
</games>
XML предоставя универсален начин за дефиниране на данните и за тяхното структуриране. XML предоставя и метод за дефиниране на синтаксиса на документа, което може да се използва от програмата за проверка валидно ли е съдържанието на документа. Можете сами да дефинирате както таговете, така и техните атрибути. Но XML езиците (наричани XML application) са истинската сила на XML - те предоставят универсален метод за дефиниране как XML документа да бъде изведен на екрана. Например използвайки XSL (Extensible Stylesheet Language) можете да дефинирате вида на всеки един таг. Нещо повече - можете да дефинирате кои тагове да се извеждат, да използвате циклични и условни оператори, както и да направите разлика между таг , който се намира между отварящия и затварящия таг , и такъв, който не се намира. Така можете да направите Web страница, която автоматично форматира XML съдържание за своите нужди, като по този начин тя остава независима от самото съдържание. Можете да използвате една и съща стилова дефиниция за целият сайт, като предоставяте различни .xml файлове. Бихте могли да стигнете и още по-далеч. Единственото ограничение в XML и XML езиците е вашето въображение. Можете лесно да промените цялостното оформление на сайта, променяйки един-единствен xsl файл или да дефинирате няколко различни стила на оформление - това често се използва за създаване на "кожи" (скинове) за сайтове, така че потребителя да може да си избере дизайна, който най-много му подхожда. Важно е да разберете, че XML позволява съдържанието да е отделно от дизайна.
Преди да премина към подробно описание на XML и как се реализира неговата обработка, ще кажа няколко думи за неговото настояще и бъдеще. На първо място, Microsoft ще го интегрира все повече в свойте продукти (най-вече самия Windows). Макар XML да е създаден с идеята да се използва в Web, превъзмогвайки всички ограничения на HTML, той е превъзходно средство за обмен на данни между програми или дори за използване на данните от самата програма. Добър пример за това е версия 3 на програмата Winamp - тя използва за скиновете си серия xml файлове и съответните изображения. По този начин за да създадете собствен скин не ви е необходим нито допълнителен софтуер, нито някакви познания за това как Winamp записва (и съответно чете) данните. Трябва да сте запознати с XML синтаксиса и да знаете само какви тагове ползва Winamp. Още по удобно е, ако решите да направите програма за създаване на скинове - не ви е необходимо да знаете вътрешната структура на файла, съдържащ скина, а само съответния набор тагове. За да илюстрирам това тук публикувам част от XML кода на скина Zygote, както и как се извежда този код в Microsoft Internet Explorer:
Код:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<WinampAbstractionLayer version="0.8">
<skininfo>
<version>1.1</version>
<name>zygote</name>
<comment>.enjoy.check the skin configuration windows.enjoy.</comment>
<author>Michael S. , Mathieu P.</author>
<email>michael_spano@hotmail.com, nirvn@hotmail.com</email>
<homepage>http://www.breedart.org</homepage>
<screenshot>skinshot.png</screenshot>
</skininfo>
<include file="system/wasabi.xml"/>
<include file="xml/player.xml"/>
<include file="xml/config.xml"/>
<include file="xml/pledit.xml"/>
<include file="xml/scripts.xml"/>
</WinampAbstractionLayer>
Този файл дефинира обща информация за скина, като версия, автор и т.н., а по-нататък поредица от XML документи, съдържащи описанието на различни части от скина. И тъй като за интерпретирането на този код е отговорен самия WinAmp, то Internet Explorer го извежда като дървовидна структура - така, както извежда всеки един XML файл.
Що се отнася за бъдещето, то XML навлиза навсякъде - в Web, в програмирането, в софтуера и дори в самата операционна система на Microsoft. Бъдещия стандарт за Web-страници не е HTML, a XHTML - разширението на HTML за XML. Това означава, че дори HTML ще спазва синтаксиса на XML.
Нека сега навлезем по-навътре в XML За разлика от HTML, XML е чувствителен към главни/редовни букви и има строг синтаксис. Ако сте запознати с HTML, лесно ще разберете XML; а ако не сте - първо трябва да разберете някои ключови понятия. XML, както и всеки от така наречените markup езици, не е език за програмиране, е за форматиране. Т.е. той съдържа команди за форматиране, наречени тагове. Тагът се дефинира чрез символите < и >, като всичко между тези два символа е един и същи таг. Непосредствено след отварящата скоба стои името на тага, а след това разделени с интервали - произволен брой атрибути. Атрибута се явява един вид параметър за тага. Атрибутите могат да имат (но могат и да нямат) стойности. Ако те имат стойности, то синтаксиса е атрибут=стойност. Ето един пример:
Код:<car name="dodge" model="viper" color="red" damaged>
Тагът тука е car, name, model, color и damaged са атрибути. Тук можете да видите, че атрибута damaged няма стойност - самото му присъствие указва, че колата е повредена. Всеки таг има свой затварящ таг, състоящ се от името на така, предхождано от "/". За тага в предишния пример затварящия таг ще е . Действието на тага е между отварящия и затварящия таг. Т.е. ако имате таг , дефиниращ червени букви, то в кода
това е <red>форматиран</red> текст
червени ще са само буквите на думата "форматиран".