Три основні правила мови розмітки xml. Основи XML – розмітка та структура XML документів. Побудова документа XML

markup languages) - це набір спеціальних інструкцій, які називаються тегами, призначених для формування в документах будь-якої структури та визначення відносин між різними елементами цієї структури. Тобто розмітка показує, яка частина документа є заголовком, яка підзаголовком, що слід вважати ім'ям автора і т. д. Розмітка поділяється на стилістичну розмітку, структурну та семантичну.

Стилістична розмітка

Стилістична розмітка відповідає за зовнішній вигляддокумента. Наприклад, в HTML до даного типу розмітки належать такі теги як (курсив), (жирний), (підкреслення), (перекреслений текст) тощо.

Структурна розмітка

Структурна розмітка визначає структуру документа. У HTML за цей тип розмітки відповідають, наприклад, теги (параграф), (назва),

(Секція) і т.д.

Семантична розмітка

Семантична розмітка інформує зміст даних. Прикладами цього типу розмітки є теги (ім'я документа), (код, використовується для лістингів коду), (Змінна),

(Адреса автора).

Основними поняттями будь-якої мови розмітки є теги, елементи та атрибути.

Теги та елементи.

Значення понять теги та елементи часто плутають.

Теги, або, як їх ще називають, керуючі дескриптори, служать як інструкції для програми, що робить показ вмісту документа на стороні клієнта як зробити з вмістом тега. Для того, щоб виділити тег щодо основного вмісту документа використовуються кутові дужки: тег починається зі знака "менше" (<) и завершается знаком "больше" (>), всередині яких розміщуються назва інструкцій та їх параметри. Наприклад, у мові HTML тег вказує на те, що наступний за ним текст має бути виведений курсивом.

Елемент - це теги разом із змістом. Наступна конструкція є прикладом елемента:

Цей текст виділено курсивом .

Елемент складається з тега, що відкриває (у нашому прикладі це тег ), вмісту тега (у прикладі це текст "Це текст, виділений курсивом") і закриває тега(), Правда іноді в HTML, що закриває тег можна опустити.

Атрибути

Для того, щоб при визначенні елемента задати будь-які параметри, уточнюючі характеристики даного елемента використовуються атрибути.

Атрибути складаються з пари "назва" = "значення", яку можна задавати щодо елемента в початковому тегу. Зліва та праворуч від символу рівності можна залишати прогалини. Значення атрибута вказується у вигляді рядка, укладеного в одинарні або подвійні лапки.

Будь-який тег може мати атрибут, якщо визначено цей атрибут.

У разі використання атрибуту елемент набуває наступної форми:

<имя_тега атрибут = "значение"> вміст тега

Текст вирівнюється центром

В одному тезі, що відкривається, може міститися кілька атрибутів, наприклад:

Вказано розмір та колір тексту

Історія розвитку мов розмітки.

Поняття гіпертексту було введено В.Бушем у 1945 році, починаючи з 60-х років, почали з'являтися перші додатки, які використовують гіпертекстові дані. Проте основний розвиток дана технологія отримала, коли виникла реальна потреба у механізмі об'єднання безлічі інформаційних ресурсів, забезпечення можливості створення, перегляду нелінійного тексту.

У 1986 році ISO було затверджено універсальну стандартизовану мову розмітки (Standardized Generalized Markup Language). Ця мова призначена для створення інших мов розмітки, вона визначає допустимий набір тегів, їх атрибути та внутрішню структуру документа. Таким чином, є можливість створювати свої власні теги, пов'язані зі змістом документа. Тепер стає очевидним, що такі документи важко інтерпретувати без визначення мови розмітки, що зберігається у визначенні типу документа (DTD - Document Type Definition). У DTD згруповані всі правила мови у стандарті SGML. Іншими словами в DTD описується зв'язок тегів між собою та правила їх застосування. Причому кожного класу документів визначається свій набір правил, що описують граматику відповідної мови розмітки. Таким чином, тільки за допомогою DTD можна перевірити правильність використання тегів, отже, його потрібно надсилати разом з SGML-документом або включати в документ.

У той час окрім SGML існували ще кілька конкуруючих між собою подібних мов, проте популярність (HTML, яка є одним із його нащадків) дала SGML незаперечну перевагу перед своїми побратимами.

За допомогою SGML можна описувати структуровані дані, організовувати інформацію, що міститься в документах, представляти цю інформацію у стандартному форматі. Але через свою складність, SGML використовувався, в основному, для опису синтаксису інших мов, і деякі програми працювали з SGML-документами безпосередньо. SGML зазвичай застосовується лише великих проектах, наприклад, до створення єдиної системи документообігу великої фірми.

Мова розмітки HTML набагато простіша і зручніша, ніж SGML, його інструкції в першу чергу призначені для управління процесом виведення вмісту документа на екрані. Мова HTML як спосіб розмітки технічних документів була створена Тімом Бернерсом-Лі (Tim Berners-Lee) в 1991 спеціально для наукового співтовариства. Спочатку він був лише одним з SGML-додатків.

Не дивлячись на те, що єдине, що вміє HTML – класифікувати частини документа та забезпечувати його правильне відображення у браузері, він є найпопулярнішою мовою розмітки. Це з тим, що HTML досить легкий вивчення. Все, що від вас вимагається, – вивчити команди HTML. DTD для HTML зберігається у браузері. До того ж слід зазначити, що HTML спроектований для роботи на різних платформах. Але він має низку істотних обмежень:

  1. HTML має фіксований набір тегів, і цей набір не можна розширити чи змінити;
  2. теги мови HTML показують лише як мають бути представлені дані, тобто зовнішній вигляд документа. HTML не несе інформації про значення змісту, укладеного в тегах, структуру документа.

Стандартом визначено два рівні правильності документа XML:

  • Правильно збудований(Well-Formed). Правильно побудований документ відповідає всім загальним правилам синтаксису XML, які застосовуються до будь-якого XML-документа. І якщо, наприклад, початковий тег немає відповідного йому кінцевого тега, це неправильно побудованийдокумент XML. Документ, який неправильно побудований, не може вважатися документом XML; XML-процесор (парсер) не повинен обробляти його звичайним чином і повинен класифікувати ситуацію як фатальна помилка.
  • Справжній(Valid). Цей документ додатково відповідає деяким семантичним правилам. Це суворіша додаткова перевіркакоректності документа на відповідність заздалегідь визначеним, але вже зовнішнім правилам, з метою мінімізації кількості помилок, наприклад, структури та складу цього, конкретного документа чи сімейства документів. Ці правила можуть бути розроблені як самим користувачем, так і сторонніми розробникаминаприклад, розробниками словників або стандартів обміну даними. Зазвичай такі правила зберігаються в спеціальних файлах - схемах, де докладно описана структура документа, всі допустимі назви елементів, атрибутів і багато іншого. І якщо документ, наприклад, містить заздалегідь не визначену в схемах назву елемента, то XML-документ вважається недійсним; перевіряючий XML-процесор (валідатор) під час перевірки на відповідність правилам і схемам зобов'язаний (на вибір користувача) повідомити про помилку.

Дані два поняття не мають стандартного перекладу на російську мову, що досить устоявся, особливо поняття valid, яке можна також перекласти, як має силу, правомірний, надійний, придатний, або навіть перевірений на відповідність правилам, стандартам, законам. Деякі програмісти застосовують у побуті усталену кальку. Валідний».

Синтаксис XML

У цьому розділі розглядається лише правильна побудовадокументів XML, тобто їх синтаксис.

XML – це ієрархічна структура, призначена для зберігання будь-яких даних, візуально структура може бути представлена ​​як дерево. Найважливіша обов'язкова синтаксична вимога - те, що документ має лише один кореневий елемент(root element) (альтернативно званий елементом документа). Це означає, що текст або інші дані всього документа повинні бути розташовані між єдиним початковим кореневим тегом та відповідним йому кінцевим тегом.

Наступний найпростіший приклад- Правильно побудований документ XML: Це книга: "Книжечка"Перший рядок XML-документа називається оголошенням XML(XML declaration) - це необов'язковий рядок, що вказує на версію стандарту XML (зазвичай це 1.0), також тут може бути вказано кодування символів та зовнішні залежності. Специфікація вимагає, щоб процесори XML обов'язково підтримували кодування Юнікод UTF-8 і UTF-16 (UTF-32 не обов'язковий). Визнаються допустимими, підтримуються та широко використовуються (але не обов'язкові) інші кодування, засновані на стандарті ISO/IEC 8859, також допустимі інші кодування, наприклад, російські Windows-1251, KOI-8.

Коментарможе бути розміщений будь-де дерева. XML коментарірозміщуються всередині пари тегів . Два знаки дефіс (--) не можуть бути застосовані в жодній частині всередині коментаря.

Нижче наведено приклад простого кулінарного рецепту, розміченого за допомогою XML:

Простий хліб Борошно Дріжджі Тепла вода Сіль

Структура

Решта цього XML-документа складається з вкладених елементів, деякі з яких мають атрибутиі вміст. Елементзазвичай складається з тега, що відкриває і закриває, що обрамляють текст та інші елементи. Відкриваючий тегскладається з імені елемента в кутових дужках, наприклад, « »; закриває тегскладається з того ж імені у кутових дужках, але перед ім'ям ще додається коса риса, наприклад, « ». Вміст елемента(content) називається все, що розташоване між відкриває і закриває тегами, включаючи текст та інші (вкладені) елементи. Нижче наведено приклад XML-елемента, який містить тег, що відкриває, закриває тег і вміст елемента:

Замісити ще раз, покласти на лист і поставити в духовку.

Борошно

У наведеному прикладі елемент «ingredient» має два атрибути: «amount», що має значення «3», і «unit», що має значення «стакан». З погляду XML-розмітки, наведені атрибути не несуть жодного сенсу, а просто набором символів.

Крім тексту елемент може містити інші елементи:

Змішати всі інгредієнти та ретельно замісити. Закрити тканиною та залишити на одну годину в теплому приміщенні. Замісити ще раз, покласти на лист і поставити в духовку.

В даному випадку елемент "Instructions" містить три елементи "step". XML не допускає елементів, що перекриваються. Наприклад, наведений нижче фрагмент некоректний, оскільки елементи em і strong перекриваються.

Звичайний акцентований виділений та акцентованийвиділений

Кожен XML-документ повинен містити точно один кореневий елемент(root element або document element), таким чином, наступний фрагмент не може вважатися коректним документом XML.

Сутність №1 Сутність №2

Для позначення елемента без змісту, що називається порожнім елементом, необхіднозастосовувати особливу формузаписи, що з одного тега, у якому після імені елемента ставиться коса риса. Якщо DTD елемент не оголошений порожнім, але в документі він не має змісту, для нього допускаєтьсязастосовувати таку форму запису. Наприклад:

У XML визначено два методи запису спеціальних символів: посилання на сутність та посилання за номером символу. Сутністю(entity) у XML називаються іменовані дані, зазвичай текстові, зокрема спецсимволи. Посилання на сутність(entity references) вказується в тому місці, де має бути сутність і складається з амперсанда («&»), імені сутності та крапки з комою («;»). У XML є кілька визначених сутностей, таких як «lt» (посилатися на неї можна написав «< ») для левой угловой скобки и « amp » (ссылка - « & ») для амперсанда, возможно также определять собственные сущности. Помимо записи с помощью сущностей окремих символів, їх можна використовувати для запису текстових блоків, що часто зустрічаються. Нижче наведено приклад використання певної сутності для запобігання використанню знака амперсанда в назві:

AT&T

Повний список визначених сутностей складається з & («&»),< («<»), >(«>»), "("")), і "("")) - останні дві корисні для запису роздільників усередині значень атрибутів. Визначити свої сутності можна у DTD-документі.

Іноді буває необхідно визначити нерозривну прогалину, яка дуже часто використовується в HTML і позначається як у XML такої певної сутності немає, його записують, а використання викликає помилку. Відсутність цієї дуже поширеної сутності у багатьох програмістів часто викликає подив і це створює деякі труднощі при міграції своїх HTML-розробок у XML.

Посилання за номером символу(numeric character reference) виглядає як посилання на сутність, але замість імені сутності вказується символ # і число (у десятковому або шістнадцятковому записі), що є номером символу в кодової таблиціЮнікод. Це зазвичай символи, які неможливо закодувати безпосередньо, наприклад, літера арабського алфавіту в ASCII-кодованому документі. Амперсанд може бути представлений наступним чином:

AT&T

Існує ще безліч правил щодо складання коректного XML-документа, але метою даного короткого огляду було лише показати основи, необхідні для розуміння структури XML-документа.

Історія

Роком народження XML можна вважати 1996 , наприкінці якого з'явився чорновий варіант специфікації мови, або коли ця специфікація була затверджена. А почалося все з появи 1986 року мови SGML.

SGML (Standard Generalized Markup Language- стандартний узагальнена моварозмітки) заявив про себе як гнучкий, комплексний і всеосяжний мета-мова для створення мов розмітки. Незважаючи на те, що поняття гіпертексту з'явилося в 1965 (а основоположні принципи сформульовані в 1945), SGML не має гіпертекстової моделі. Створення SGML можна з упевненістю назвати спробою осягнути неосяжне, оскільки він поєднує в собі такі можливості, які дуже рідко використовуються всі разом. У цьому полягає його головний недолік - складність і, як наслідок, дорожнеча цієї мови обмежує її використання тільки великими компаніями, які можуть дозволити собі купити відповідне програмне забезпечення та найняти високооплачуваних фахівців. Крім того, у невеликих компанійрідко виникають настільки складні завдання, щоб залучати до їх вирішення SGML.

Найбільш широко SGML застосовується до створення інших мов розмітки, саме з його допомогою було створено мову розмітки гіпертекстових документів - HTML , специфікація якого було затверджено 1992 року . Його поява була пов'язана з необхідністю організації масива документів, що стрімко збільшується, в мережі Інтернет. Бурхливе зростання кількості підключень до Інтернету і, відповідно, Web-серверів спричинило таку потребу в кодуванні електронних документів, з якою було справитися SGML внаслідок високої труднощі освоєння. Поява HTML – дуже простої мови розмітки – швидко вирішила цю проблему: легкість у вивченні та багатство засобів оформлення документів зробили його найпопулярнішою мовою для користувачів Інтернету. Але, у міру зростання кількості та зміни якості документів у Мережі, зростали вимоги, що висуваються до них, і простота HTML перетворилася на його головний недолік. Обмеженість кількості тегів і повна байдужість до структури документа спонукали розробників в особі консорціуму W3C до створення такої мови розмітки, яка була б не такою складною, як SGML, і не настільки примітивною, як HTML. В результаті, поєднуючи в собі простоту HTML, логіку розмітки SGML і задовольняючи вимогам Інтернет, з'явилася мова XML.

Сильні і слабкі сторони

Переваги

Недоліки

  • Неоднозначність моделювання.
  • XML не містить вбудованої в мову підтримки типів даних. У ньому немає суворої типізації, тобто понять «цілих чисел», «рядків», «дат», « булевих значень" і т.д.
  • Ієрархічна модель даних, запропонована XML, обмежена порівняно з реляційною моделлю та об'єктно-орієнтованими графами та мережевою моделлю даних.

Відображення XML у Всесвітньому павутинні

Найбільш поширені три способи перетворення XML-документа у вид, що відображається користувачеві:

  1. Застосування стилів CSS;
  2. Застосування перетворення XSLT;
  3. Написання якоюсь мовою програмування обробника XML-документа.

Без використання CSS або XSL XML-документа відображається як простий текст у більшості Web-браузерів. Деякі браузери, такі як Internet Explorer , Mozilla та Mozilla Firefox, відображають структуру документа у вигляді дерева, дозволяючи згортати та розгортати вузли за допомогою натискання клавіші миші.

Застосування стилів CSS

Процес аналогічний застосуванню CSS до документа HTML для відображення.

Для застосування CSSПри відображенні в браузері XML документ повинен містити спеціальне посилання на таблицю стилів. Наприклад:

Це відрізняється від підходу HTML, де використовується елемент .

Застосування перетворення XSLT

XSL є технологією, яка описує, як форматувати або перетворювати дані XML-документа. Документ трансформується у формат, що підходить для відображення у браузері. Браузер – це найчастіше використання XSL, але не варто забувати, що за допомогою XSL можна трансформувати XML у будь-який формат, наприклад

Ми знову вивчаємо XML і в цій статті познайомимося з такими конструкціями XML, як процесингові інструкції, коментарі, атрибути та інші елементи XML. Ці елементи є базовими і дозволяють гнучко, у чіткій відповідності до стандарту розмічати документи абсолютно будь-якої складності.

Деякі моменти, такі як XML-теги, ми вже частково розглядали в попередній статті « ». Тепер ми ще раз торкнемося цієї теми і розберемо її докладніше. Це зроблено спеціально, щоб вам було простіше уявити всю картину конструкцій XML.

Елементи XML. Порожні та непусті елементи XML

Як уже говорилося в попередній статті, теги в XML не просто розмічають текст, як це буває в HTML, а виділяють окремі елементи (об'єкти). У свою чергу, елементи ієрархічно організують інформацію в документі, що в свою чергу і зробило їх основними структурними одиницями мови XML.

У XML елементи може бути двох типів – порожні і непусті. Порожні елементи не містять жодних даних, таких як текст або інші конструкції. На відміну від порожніх елементів, непусті можуть містити будь-які дані, такі як текст або інші елементи та конструкції мови XML. Щоб зрозуміти суть сказаного вище, давайте розглянемо приклади порожніх і непустих елементів XML.

Порожній елемент XML

Непустий елемент XML

Вміст елемента...

Як бачимо з прикладу вище, головною відмінністю порожніх елементів від непустих і те, що вони складаються лише з одного тега. Крім того, варто також помітити, що в XML всі імена реєстрозалежні. Це означає, що імена myElement, MyElement, MYELEMENT і т.д. різняться між собою, тому Наразіварто відразу запам'ятати, щоб уникнути помилок у майбутньому.
Отже, із елементами ми розібралися. Тепер давайте перейдемо до наступного моменту, такого як логічна організація XML документів.

Логічна організація XML-документів. Деревоподібна структура даних XML

Як ви пам'ятаєте, основною конструкцією мови XML є елементи, які можуть містити інші вкладені конструкції і тим самим формувати ієрархічну структуруу вигляді дерева. У цьому випадку батьківський елемент буде коренем, а решта дочірні елементибудуть гілками та листям дерева XML.

Щоб було простіше зрозуміти суть сказаного вище, давайте розглянемо наступне зображення з прикладом.

Як бачимо, організація XML-документа як дерева є досить простою структурою обробки. При цьому виразна складність дерева досить велика. Саме деревоподібна вистава є найбільш оптимальним способом опису об'єктів у XML.

Атрибути XML. Правила запису атрибутів у XML

У XML елементи можуть містити також і атрибути з наданими їм значеннями, які поміщаються в одинарні або подвійні лапки. Атрибут для елемента визначається наступним чином:

В даному випадку використовувався атрибут з ім'ям "attribute" та значенням "value". Тут варто відразу помітити, що атрибут XML обов'язково має містити якесь значення і не може бути пустим. В іншому випадку, код буде некоректним з точки зору XML.

Також варто звернути увагу на використання лапок. Значення атрибутів може полягати як в одинарні, так і подвійні лапки. Крім того, можливе також використання одних лапок усередині інших. Для демонстрації розглянемо такі приклади.

Перш ніж приступити до розгляду інших конструкцій XML варто також помітити, що при створенні атрибутів як значення не можуть використовуватися такі спеціальні символи, як амперсанд «&» або кутові дужки «<>». Ці символи зарезервовані як керуючі («&» — сутність, а «<» и «>» відкривають та закривають тег елемента) і не можуть бути використані в « чистому вигляді». Для їх використання потрібно вдаватися до заміни спецсимволів.

Інструкції щодо обробки XML (процесингові інструкції). XML-декларація

У мові XML є можливість увімкнення в документі інструкцій, які несуть певну інформацію для додатків, які будуть обробляти той чи інший документ. Інструкції з обробки в XML створюються в такий спосіб.

Як видно з прикладу вище, XML інструкціїпо обробці полягають у кутові лапки зі знаком питання. Це трохи нагадує звичайний , який ми розглядали на перших уроках з PHP. У першій частині процесингової інструкції визначається програма або система, якій призначена друга частина цієї інструкції або її вміст. При цьому інструкції з обробки дійсні лише для тих програм, яким вони адресовані. Прикладом процесингової інструкції може бути інструкція.

Варто зауважити, що у XML є особлива конструкція, яка дуже схожа на інструкцію з обробки, але сама вона такою не є. Мова йдепро XML-декларацію, яка передає обробному програмному забезпеченню деяку інформацію про властивості XML-документа, такі як кодування, версія мови відповідно до якої написаний цей документ і т.д.

Як видно з прикладу, XML-декларація містить так звані псевдоатрибути, які дуже схожі на звичайні атрибути, про які ми говорили трохи вище. Справа в тому, що за визначенням XML-декларація та інструкції з обробки не можуть містити атрибутів, тому ці оголошення назвали псевдоатрибутами. Це варто запам'ятати на майбутнє, щоб уникнути різноманітних помилок.

Оскільки ми розібралися із псевдоатрибутами, то давайте розглянемо, що вони означають.

  • Encoding – відповідає за кодування документа XML. Зазвичай використовується кодування UTF8.
  • Version – версія мови XML, на якій написано цей документ. Зазвичай, це XML версії 1.0.

Ну а тепер перейдемо до частини статті і розглянемо такі конструкції XML як коментарі і секції CDATA.

У книзі містяться поради, алгоритми та готові прикладипрограм з різних областей: шифрування, файлові та мережеві операції, XML, ASP.NET, взаємодія з MS Office та Internet Explorer та ін. програмування мовою С#. Розглядаються приклади найчастіше використовуваних регулярних виразів. Окрема глава присвячена роботі з апаратурою.
Архів містить саму книгу та CD з вихідним кодом.

Посібник призначений для програмістів, які починають і продовжують вивчення технологій Java SE, JEE та інших. У його першій частині розглядаються основи мови Javaта концепції об'єктно-орієнтованого програмування. У другій частині викладено аспекти застосування бібліотек класів мови Java, включаючи файли, колекції, мережеві та багатопотокові програми, а також взаємодію з ХМL. У третій частині наведено основи програмування розподілених інформаційних систем із застосуванням сервлетів, JSP та власних тегів розробника. У четвертій частині дано основи практичного застосуванняпроектування шаблонів.
Наприкінці кожного розділу даються тестові питання щодо матеріалу глави та завдання для виконання.
У додатках наведено додаткові матеріали, що стосуються використання UML, SQL, Ant, XML, а також короткий опис популярних технологій Log4J, JUnit, JPA та Hibernate.

Опис книги Open XML коротко та доступно:
Ця книга містить докладний огляд трьох основних мов розмітки стандарту Open XML. Книга розрахована на читачів, знайомих із XML або HTML. Архітектори та розробники програмного забезпечення, які створюють орієнтовані на документи рішення, дізнаються, як побудувати ці рішення на платформі Open XML.

Ця книга буде корисна як новачкам у мовах розмітки, так і фахівцям у цій галузі, не знайомим із Open XML.

Опис книги Advanced Applications and Structures in Xml Processing: Label Streams, Semantics Utilization and Data Query Technologies:
Applications and Structures in XML Processing: Label Streams, Semantics Utilization and Data Query Technology reflects the significant research results and latest findings of scholars' worldwide, working to explore and expand the role of XML. Ця колекція включає в себе підписання XML-процесорних технологій у зв'язку з великими пристосуваннями та останніми XML-процесорними технологіями, що є важливим значенням. Це надає можливість докладних топиків в деталях і описі XML-ресурсів на сприятливому рівні.

Опис книги XML: розробка Web-додатків:
У книзі пропонується повний описмови XML разом із мовами XSLT і XPath, представлене у першій частині. Друга частина книги містить практичний посібникщодо застосування матеріалу, викладеного у першій частині книги. Крім XML порушуються питання, що виникають під час побудови реальних Web-додатків, саме передача параметрів HTTP-запроса серверу, проектування форм, представлення даних з допомогою каскадних стильових таблиць, обробка дій користувача з допомогою JavaScript.

Частина I. XML від А до Я

  • Мова XML
  • Мова XSLT
  • Мова XPath
  • Комплексний приклад
  • Необхідні доповнення

Частина ІІ. Практична розробка web-додатків

  • Засоби створення Web-додатку
  • Каскадні стильові таблиці
  • Методика обробки даних
  • Подання даних

Опис книги Python & XML:
Якщо ви є Python programmer, які намагаються включити XML у свій skill set, це є книга для вас. Python має зайнято широке різноманіття розвитку, що використовується ним, щоб бути connect to critical programming tasks together, або як повністю cross-platform application development language. Yet, because it is object-oriented and has powerful text manipulation abilities, Python is an ideal language for manipulating XML.

Python & XML дає вам достатню інформацію для використання цих двох мовних повідомлень. Loaded with practical examples, цей новий volume highlights common application tasks, so that you can learn by doing. Book starts with basics then quickly progress to complex topics, як transforming XML with XSLT, querying XML with XPath, and working with XML dialects and validation. Це також розкриває більше поширених питань: використовуючи Python з SOAP і distributed web services, а також використовуючи Python для створення швидких streams між distributed applications (like databases and web servers).

Книжка забезпечує ефективні практичні застосування, при тому, що подібні до багатьох інструментів впроваджуються в XML-процесорі і Python, і високих ліжках cross-platform issues along with tasks relevant to enterprise computing. Ви будете вивчити широку версію XML flow analysis and details on ways in which you can transport XML through your network.

Будь-який використовує Python як application language, або як administrative or middleware scripting language, ви думаєте про benefit from this book. Якщо ви збираєтеся використовувати Python для XML, це використовується.

Опис книги XML Bible:
Утилізація XML є величезною діяльністю на Web development, і шпильки освітлення curve of this new technology is priority for many developers. XML Biblia offers superb введення до предмета і земної кулі до підданих XML"s future developments.

Author Elliotte Rusty Harold використовує пацієнта, step-by-step discussion, що чітко оцінювали потенційний XML без високих його повідомлень з відтінками SGML spec-speak. Harold opens quickly with a "Hello World" example to get the reader coding early, and follows that with a simple but powerful example of XML"s data management benefits-presenting baseball statistics. Once you"ve coded your first XML documents, You"ll be hooked on the technology and motivated to learn other more sophisticated topics.

Стиль аркушів символів, як правило, пов'язаний з ілюстрацією творів можливостей і pitfalls. У незвичайно тривалому розділі реального життя XML applications as shows how XML is already be used, and there is in-depth coverage of Resource Description Framework, Channel Definition Format, and Vector Markup Language. Book wraps up with section that helps you design your own XML application from scratch.

Опис книги XSLT. Збірник рецептів:
Мова XSLT (Extensible Stylesheet Language Transformation) стала основним інструментом обробки XML-документів, але багато розробників все ще не освоїли його повною мірою і тому вважають, що простіше модифікувати наявний код, ніж писати новий з нуля. У версії 2.0 багато проблем вирішено, але з'явилася низка нових можливостей, які ще треба вивчити. До того ж вона поки що недостатньо підтримана.

У другому виданні цієї книги наведено сотні розв'язків задач, з якими регулярно стикаються програмісти. Надаються варіанти для обох версій XSLT. Діапазон рецептів надзвичайно широкий: від операцій з рядками та математичних обчислень до таких складних тем, як розширення XSLT, тестування та налагодження таблиць стилів та створення графіки у форматі SVG. У кожному рецепті обґрунтовується вибір рішення та пояснюється застосована техніка. Для багатьох завдань наводяться альтернативні рішенняіз зауваженнями щодо зручності користування та продуктивності.

Пропонуючи рецепти, розраховані на різні рівнікваліфікації, ця книга стане ідеальним супутником програміста, котрий любить вчитися на прикладах. Неважливо, примірюєтеся ви до XSLT вперше або вже знайомі з цією мовою і хочете мати добірку готових рецептів для вирішення складних завдань, в ній ви знайдете найбільше різні способизастосування XSLT.

Опис книги Вивчаємо XML:
Дане видання присвячене мові розмітки XML, що розширюється, — перспективному і потужному інструменту, що забезпечує гнучкий спосіб створення документів, що самодокументуються, і спільного використанняяк формату, так і даних в Інтернеті. Розглянуто історію, сучасний станта завдання XML, фундаментальні питання. Для розробників-початківців викладаються основи техніки створення документів XML, поняття елементів, атрибутів, сутностей і просторів імен XML. Професіоналам адресовані складні питання - трансформації, моделювання документів, тонка настройкашаблонів, XML-програмування, використання посилань та каскадних таблиць стилів.

У книзі на прикладах показано, як ефективно використовувати XML шляхом форматування та перетворення XML-документів для того, щоб вони могли оброблятися броузерами, базами даних і т.д. Матеріал супроводжується посиланнями реальні проекти. У додатках описано ресурси Інтернету, книги та стандарти, що стосуються XML. До книги включено глосарій.

Опис книги XML. Довідник:
"XML. Довідник" - це джерело інформації для розробників у світі XML, що швидко розвивається. Читачі, зрозумівши суть базового стандарту XML, зможуть швидко розібратися в тонкощах DTD, просторів імен, дотримання коректності документів XML та підтримки Unicode.

Одним із найбільш несподіваних напрямів розвитку XML стало його активне прийняття для роботи зі структурованими документами: електронними та математичними таблицями, статистичними та фінансовими звітами та файлами з програмним забезпеченням.

Огляд ключових технологій, що використовуються в основному для оповідальних XML-документів, таких як веб-сторінки, книги та статті, допоможе вам отримати практичні знання з XSLT, XPath, XLink, XPointer, CSS та XSL-FO. Напевно, багато хто зацікавиться застосуванням XML для інтенсивної обробки даних.

Декілька розділів присвячені утилітам та API, необхідним для написання програм обробки XML, таким як SAX - простому API для XML, і DOM - об'єктної моделі документів консорціуму W3C.

У книгу також включено матеріал, що утворює основу будь-якого довідника видавництва O"Reilly. У цих розділах наведені докладні синтаксичні правила (супроводжувані прикладами) основних технологій XML, у тому числі DTD, XPath, XSLT, SAX і DOM. У цьому довіднику описані правила, яких повинні дотримуватися автори всіх документів XML — як веб-дизайнери, що створюють анімації за допомогою SMIL, так і програмісти C++, які використовують SOAP для серіалізації об'єктів у віддалену базу даних.

Сьогодні приступимо до розгляду дуже популярного та зручного мови розмітки XML. Так як даний формат подання даних дуже гнучкий і універсальний, і його можна використовувати практично скрізь, мається на увазі з чимось. Тому програмісту-початківцю рано чи пізно доведеться зіткнутися з цією мовою, і неважливо чим конкретно Ви займаєтеся, будь то web-програмуванням або адмініструванням баз даних, тому що XML використовують усі, і Ви його також використовуватимете в реалізації потрібних Вам завдань.

Починатимемо як завжди з теорії, давайте розглянемо, що ж це за мова, чим вона хороша, як ним користуватися і де її використовують.

Визначення мови XML

XML (eXtensible Markup Language) – універсальна та розширювана мова розмітки даних, яка не залежить від операційної системи та середовища обробки. Xml служить для представлення деяких даних у вигляді структури, і цю структуру Ви можете самі розробити або підлаштувати під ту чи іншу програму чи сервіс. Саме тому дана мованазивають розширюваний, і в цьому є його головна перевага, за яку його так цінують.

Як Ви знаєте, мов розмітки існує досить багато, наприклад, мова HTML, але всі вони, так чи інакше, залежать від обробника, наприклад, той же html, код якого парсить браузер, є стандартизованим і не розширюється, там є чіткі теги, синтаксис який не можна порушувати, а xml Ви можете самі створювати свої теги, тобто. свою розмітку. Головною відмінністю HTML і XML є те, що html лише описує розмітку для відображення даних, а xml - це абстрактна структура даних, яку можна обробити і відобразити як завгодно і де завгодно і тому порівнювати ці мови не потрібно, у них абсолютно різне призначення.

Як вже відзначилося вище xml дуже поширений і універсальна мова, За допомогою якого практично всі додатки, як web, так і просто для комп'ютера використовують його як обмін інформації, так як за допомогою нього можна дуже легко обмінюватися даними між додатками або сервісами, які навіть написані на різних мовах. У зв'язку з чим, кожен програміст-початківець, який займається абсолютно будь-яким програмуванням, повинен мати уявлення про XML. Якщо Ви хочете стати web-майстром, то Ви просто повинні знати XML, а як стати WEB Майстром і що для цього потрібно знати, ми з Вами вже розглядали.

Наприклад, у мене одного разу постало завдання написати якийсь сервіс, який повинен на запит повертати дані у вигляді xml, тобто. свого роду розробити серверну частинупрограми, а я навіть поняття не мав, на чому написаний клієнт, який оброблятиме ці дані, і що, я написав сервіс, який повертав дані у вигляді xml і все, додаток працював відмінно. І це тільки приклад, з яким мені довелося зіткнутися, а тепер уявіть, скільки різних організацій співпрацює і соромно розробляють програмне забезпечення та обмінюються даними, і я не здивуюся, що ці дані будуть у вигляді xml.

Наприклад, у мене одного разу було завдання написати якийсь сервіс, який повинен на запит повертати дані у вигляді xml, тобто. свого роду розробити серверну частину програми, а я навіть поняття не мав, на чому написаний клієнт, який оброблятиме ці дані, і що, я написав сервіс, який повертав дані у вигляді xml і все, додаток працював відмінно. І це тільки приклад, з яким мені довелося зіткнутися, а тепер уявіть, скільки різних організацій співпрацює і соромно розробляють програмне забезпечення та обмінюються даними, і я не здивуюся, що ці дані будуть у вигляді xml.

Також мені один раз довелося зберігати дані xmlв базі MS SQL 2008, для того щоб краще представляти ці дані і обмінюватися ними між сервером і клієнтською частиною програми, це ми розглядали в статті - Transact-sql - робота з xml .

Сама по собі мова XML дуже проста, і заплутатися в ній просто не можна, вся складність виникає саме в обробці та взаємодії xml з іншими додатками, технологіями, тобто. всім тим, що оточує xml, у чому саме можна легко заплутатися.

Сьогодні ми з Вами розмовляємо поки що лише про основи XML, і загострювати увагу на технологіях обробки та взаємодії з цією мовою ми не будемо, оскільки це правда, дуже об'ємний матеріал, але я думаю, надалі ми продовжимо знайомитись із супутніми технологіями.

Переходимо до практики. І всі приклади, які ми розглядатимемо, я писатиму в Notepad++ тільки тому, що він дуже зручний, але зараз не будемо про це розмовляти, тому що ми вже це розглядали в статті - Чим хороший Notepad++ для розробника-початківця.

XML теги

Мова XML для розмітки використовує теги ( теги реєстрозалежні), але не такі теги як у html, а ті, які Ви придумаєте самі, але xml документ має також чітку структуру, тобто. є тег, що відкриває і закриває, є вкладені теги і є, звичайно ж, значення, які розташовані в цих тегах. Іншими словами, все, що потрібно для початкових знань xml - це просто дотримуватись цих правил. Все разом відкриває, що закриває тег і значення називається елементом і весь XML документ складається саме з елементів, які утворюють структуру даних. У XML документа може бути тільки один кореневий елемент, це запам'ятайте, оскільки якщо Ви напишите два кореневих елементи, то це буде помилка.

І настав час привести приклад xmlрозмітки, і перший приклад поки що для синтаксису:

<Начало элемента> <Начало вложенного элемента>Значення вкладеного елемента

Як бачите все досить просто, і таких вкладених один в одного елементів може бути дуже багато.

Тепер давайте наведемо приклад справжнього xml документа:

Як бачите, я просто навів приклад свого роду каталогу книг, але не оголошував цей документ, тобто. не писав XML декларацію, яка говорить додатку, який оброблятиме ці дані, що тут розташовані дані саме xml і в якому кодуванні вони представлені. Також можна писати коментарі та атрибути, так давайте наведемо приклад такого документа:

Книга 1 Іван Просто книга 1 Книга 2 Сергій Просто книга 2 Книга 3 Роман Просто книга 3

Де перший рядок є оголошення декларації про те, що це документ XML і його необхідно читати в кодуванні UTF-8.

Ці дані без обробки будуть виглядати, наприклад, у браузері (Mozilla Firefox) таким чином:

Сподіваюся, Ви розумієте, що тут catalog - це кореневий елемент, який складається з елементів book, який у свою чергу складається з елементів name, author і comment, також для прикладу я поставив кілька атрибутів елемента catalog і елемента book.

Для основ я думаю достатньо, тому що якщо ми будемо все глибше і глибше занурюватися в XML, і у всі технології, пов'язані з цією мовою, тоді ця стаття ніколи не закінчиться. Тож на сьогодні це все. Бувай!