Помогни ни да направим Uroci.net по - богат! Добави урок

Въведение в XML

Stalik   трудност:    видян: 237454


XML в Web - за какво и как се използва

Тази статия не претендира за изчерпателност. Напротив. Тя разглежда някои вече остарели технологии, заменени от по-модерни стандарти. Целта й е да запознае читателите със стандартите, изграждащи основите на съвременните web-технологии

Много шум се вдигна около XML и въпреки това за съжаление е малко известно какво точно представлява той. Учудващо е колко много хора знаят за съществуването му и колко малко са запознати с неговата същност. Именно това е причината да напиша текущия материал. Много хора започват да изучават XML, сблъскват се с определението за XML - език, в който сам дефинираш таговете или метод, за създаване на езици за форматиране (така наречените markup languages) и не виждат смисъла да създават свой собствен HTML при наличието на вече съществуващия. И именно там грешат. Защото ако за XML се говори за стандарта на бъдещето, то това е напълно вярно. XML не е език - за него се говори като за мета език - т.е. език, с който могат да се създават нови езици. Но най-вече XML е стандарт - стандарт, в който се влюбих, откакто разбрах как се използва XML в Web. Аз лично съм привърженик на CSS и в XML виждам бъдещото поколения стилове. И вярвам, че XML не го харесват само тези, които не го познават.

След този своеобразен увод, ще започна с описание на това, какво представлява XML, какво е неговото приложение днес и за бъдещето на XML. След това ще продължа с подробно описание на синтаксиса на езика, на неговото приложение в Web и на XML-базираните езици. XML - Extensible Markup Language, формира един напълно нов стандарт за езиците за форматиране. Трудно е да се говори за XML като за език. Той няма определени тагове - вместо това потребителя сам ги дефинира. Програмата е отговорна за интерпретацията на тези тагове. Именно тук идва и силата на XML, както и неговия основен недостатък. Поради тази своя характеристика XML се превърна в много удобно средство за обмен на данни между програми. Вместо всяка програма да има собствен формат за данните, всички могат да използват един общ стандарт. Но ако две компании искат да обменят данни чрез XML (например за да две програми използват едни и същи файлове), то те трябва да се разберат за значението на всеки един таг. Без съответната програма, XML е само една дървовидна структура на данните. Всъщност предназначението на XML е именно да описва данни, оставяйки на друг работата по форматирането им и извеждането им на екрана. И все пак трябва да има причина именно XML да се наложи като такъв стандарт. Причината се крие в самия XML. Единственото му предназначение е да описва данни. И тъй като няма предварително дефинирани тагове, той може да опише по-най-добрия начин необходимите данни. Например следното е напълно валиден код:
 
Код:
<?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> текст

червени ще са само буквите на думата "форматиран".

 


Страници: 1 2 3 4 »

Регистрирайте се, за да добавите коментар


Калдейта ЕООД - © 2003-2010. Всички права запазени.
Препоръчваме: Национален Бизнес | Bomba.bg | IT Новини | Диплома.бг | TRAVEL туризъм | Реферати | AmAm.bg | Иде.ли | Курсови работи | Фото Форум | Spodeli.net | Фото-Култ | Atol.bg | Elmaz.com | MobileBulgaria.com | Казанлък.Com