Списание за дизайн, визуална култура и Новата медия.
XML (Extensible Markup Language) е Евродоларът при разработването на уеб сайтове. Както XML, така и Еврото превръщат хаоса в ред; те предлагат неоспорими и разнообразни предимства; и двете имат за цел, през 2002, да променят начина, по който работим. Честно казано - и двете плашат хората до смърт.
За уеб разработчиците 2002 година е моментът да победят страховете си и за пръв път да започнат да се запознават с XML. Време е да се оцени XML и да се осъзнаят практическите преимущества, които той може да осигури на уеб проектите днес.
Ако искате чрез аналогия да опишете на някой какво представлява XML не споменавайте HTML. Макар XML да изглежда доста като HTML, създаването на един добър XML файл повече прилича на проектиране на база данни, а не - на уеб страница.
И базите данни, и XML документите се използват като средства за организиране на данни. В резултат, между тях има доста прилики. В една база данни таблица, съдържаща новини, ще изглежда горе-долу така:
Table Name: News |
Table Columns: |
|
Един прост XML документ съдържащ същата информация може да изглежда така:
<?xml
version="1.0"?> |
В допълнение към тези прилики както базите данни, така и XML представляват гигантска стъпка напред във възможността да се публикува и поддържа информация в Мрежата.
Във всички други случаи освен при малките, лични странички, сайтовете разчитащи на бази данни са неоспоримо по-лесни за управление, поддържане и подновяване на съдържание, отколкото HTML сайтовете. Нещо, което всеки ще открие през 2002 година е това, че сайтовете с XML бази данни ще докажат своето превъзходство пред обикновенните сайтове движени от бази данни. XML ще бъде навсякъде.
И като уеб разразботчици обезателно ще го харесате.
XML е обречен да премахне повече главоболия отколкото цяла опаковка Аналгин, да повиши произодителността повече от стек Red Bull и да увеличи печалбата повече отколкото ще искаме нашите клиенти да знаят.
Как? Две думи: Контент мениджмънт (бел. прев. буквално се превежда управление на съдържанието, но както в много случаи английският термин звучи по-добре).
Понякога дори още клиентът да пусне в действие даден проект, подготвеният уеб сайт достига етап, в който е или вече остарял, или трябва да бъде пуснат незабавно, или се обърква напълно. Уеб проектите са големи проекти, които трябва да заработят в кратки срокове. Ето защо не е учудващо, че един от най-важните фактори, влияещи върху печалбата и успеха им е способността да се управлява ефективно съдържанието.
Възможността да се разположат отделно съдържанието, програмирането и дизайна на един сайт и след това да се смесят незабележимо, при нужда, е изкуството в нашия занаят. Всеки път, когато си спестяваме допълнителната работа и повторението на нещо, кето вече сме свършили, ние слагаме още пари в джобовете си. Същото време можем да използваме, за да добавим нови възможности към сайта, вместо да преработваме, пренаписваме и “Search & Replace”.
Вече разрешихме голяма част от проблемите с базите данни, темплейтите, стиловете и server-side includes. Останалите могат да се решат чрез XML. Той е най-доброто средство за контент мениджмънт - самото съдържание, а не начинът, по който се показва текстът върху екрана. XML се използва, за да структурира, съхранява и изпраща информация във формат независим от платформата, обектно ориентиран и чисто текстов.
Силата на XML се демонстрира най-добре, когато е в ръцете на контент провайдърите (бел. прев. тези, които създават съдържание и го предоставят за ползване). Понеже копирайтърите (бел. прев. професионалисти, които се занимават със създаване на текст за конкретни цели) и клиентите са свикнали да пишат във формат чисто текстови, независим от платформата и обектно-ориентиран, то това означава, че им помагаме неусетно. Партизанските тактики за контент мениджмънт - като например миграцията на MS Word към XML - могат да бъдат доста успешни.
Лесен начин за миграция към XML е в текстов редактор (като MS Word) да се започне нов документ, който после може директно да се конвертира в XML (или през RTF, използвайки допълнителен софтуер). След конверсията в XML, документите могат да бъдат използвани от XML сървър или да се конвертират в HTML чрез друг допълнителен софтуер.
Преди да започне разработката на сайта трябва да се осигури един Microsoft Word темплейт и набор от основни стилове на хората, които създават съдържание. Темплейтът трябва да съдържа стандартните стилови тагове - в зависимост от организацията на бъдещия сайт.
Когато използва темплейта, създателят на съдържание трябва да избягва употребата на възможностите за форматиране на текста в MS Word, които отсъстват в стандартните стилови тагове. Ако тези основни тагове са недостатъчни, трябва да бъдат добавени допълнителни тагове в съответствие със съдържанието, за което ще се използват.
Макар процесът да изглежда труден, с достатъчно практика, вече ще ви отнема значително по-малко време да обновявате съдържанието на сайта, отколкото ако работите без XML. Валидирането (бел. прев. валидирането е процесът за проверка на валидността на един документ. Валиден е документ, който отговаря на определени изисквания и правила. В уеб езиците - HTML, XML, XHTML - тези изисквания и правила се съдържата в Document Type Definition, за които става въпрос по-долу) на XML ви дава дори още повече възможности.
Сайтовете или се развиват, или умират бавно и мъчително в забвение. Трябва да се добавя ново съдържание. Старото съдържание трябва да се маха. Липсващото съдържание трябва да се открие. Клиентите се изнервят, защото не могат да поддържат и управляват съдържанието на сайтовете си. Разработчиците се изнервят заради последствията от всичко това. XML може да помогне.
Документите използващи XML улесняват намирането на остарялото и липсващо съдържание - става само с един поглед. Това се постига чрез използването на XML Document Type Definition (DTD), за да се индентифицират времевите рамки на информацията и за да се определят ценните “части” в съдържанието.
Както и базите данни, XML документите ви позволяват да валидирате информацията преди да я използвате, за да сте сигурни, че съдържанието се появява навреме, уместно е и е цялостно. И понеже говорим за валидация, отнасяща се до базите данни, нека разгледаме по-внимателно таблицата, която създадохме по-горе. В реалността, една база данни трябва да съдържа описания на всяка една колона:
News Table: | |||
Колона |
Тип |
Необходима ли е? |
Забележки |
Headline |
varchar |
Да |
Max 50 знака |
Author |
varchar |
Не |
|
Category |
Varchar |
Да |
Избира се от drop-down меню |
Date |
date/time |
Да |
Дата добавяна към таблицата |
Abstract |
varchar |
Да |
Въведение от 250 знака |
Body |
text |
Да |
Позволява форамтирането на текста |
Status |
varchar |
Да |
предварителен - не се публикува |
Валидирайки полетата на таблицата, която съдържа данните ние се уверяваме, че всяка новина съдържа цялата необходима информация. И така, с правилна интеграция и уеб интерфейс, таблицата съдържаща данни може да бъде ефективно средство за публикуване на новини в Мрежата.
Съответно XML документът с прост, валидиран DTD може да изглежда така:
<?xml version="1.0"?> <News begins="7/1/02" ends="7/5/02"
> |
XML документът - в сравнение с базите данни - подпомага в значителна степен публикуването. XML дава възможност данните да бъдат валидирани чрез DTD включен в самия документ (бел. прев. обикновенно DTD са предварително зададени от W3C. В XML всеки може да създава свой DTD според нуждите), чрез XML таговете и атрибутите. Това означава, че нужното ни съдържание може да се извлече директно от XML документа, без да има нужда от междинна база данни, без да има нужда от търсене в базата данни и без да има нужда да бъде отделяна от изходния документ.
Използвайки свои DTD, XML документите внезапно стават независими.
XML има поддръжници и сред двете страни на спора “съдържание” срещу “оформление”.
XSL (eXtensible Stylesheet Language), стиловете за XML, затапва всички. Той е много по-мощен от Cascading Style Sheets (CSS). Вместо да използва разлчини правила (rules), за да форматира съдържанието, XSL използва (.xsl) темплейти, за да опише трансформацията на един XML документ в други видове документи. Когато създавате един XML сайт, XML не замества HTML. Звучи малко объркващо. ето защо:
Когато имате работа с XSL, не всичко е както изглежда:
Показвайки XML в браузъра, части от документа могат да останат скрити или да се показват в зависимост от нуждите ни.
Уеб разработчиците казваха на другите, че чакат XML да стане достатъчно достъпен, за да почнат да се занимават с него.
Истаната е, че той е широко достъпен от няколко месеца:
Director включва и XML Parser Xtra от Director 7.0, който позволява на Shockwave файловете да четат, обработват и използват съдържанието на XML документи.
Flash 5 ActionScript поддържа XML трансфер на данни от и към сървъра.
Internet Explorer 5 има XML engine който напълно поддържа XML 1.0 както изискват препоръките на World Wide Web Consortium (W3C) . Това е голямо подобре ни в сравнение с енджина в IE4.
Netscape 6.0/Mozilla напълно поддържа XML .
IIS съсрвърите предлагат интеграция с XML чрез Microsoft XML Parser. Неговата четвърта версия поддържа XML 1.0.
SQL Server 2000 предлага вградена XML поддръжка.
XML technology preview на Майкрософт върви с всяка версия на SQL Server. Въпреки че резултатите се различават малко в някои случаи, това е солидна XML среда за хората, които още не използват SQL Server 2000.
Версия 2 на Apache Cocoon XML дава широки възможности за XML интеграция.
Xepat XML 1.0 parser може да бъде използван съвместно с XML parser function за PHP. Този инструмент ви дава възможнсот да обработвате, но не и да валидирате XML документи.
XMLRPC е едно експериментално PHP разширение, което обещава по-добра интеграция между XML и PHP.
Това означава, че нямаме повече извинения да пренебрегваме XML. Днес предимставата на XML са невъобразими. Но за сметка на това са достижими.
Статия в категория Код
Ключови думи: xml, html, бази данни, xsl, стандарти, DTD, markup
Източник: What the hell is XML?
A List Apart, http://www.alistapart.com
Все още не можете да намерите онова, което търсите? Защо не пробвате с това малко поленце отдолу (подсказки: въвеждайте повече думи; пишете на кирилица; използвайте по-конкретни понятия.)