XML урок за начинаещи

⚡ Умно обобщение

XML, разширяемият език за маркиране (Extensible Markup Language), структурира, съхранява и пренася данни между системи, използвайки самоописателни тагове, които сами дефинирате. Този урок обяснява XML синтаксиса, декларациите, таговете, атрибутите, обектите, DTD, DOM, схемите и пространствата от имена, и сравнява XML с HTML и JSON.

  • 📄 Какво е XML: XML е език за маркиране, който пренася данни, а не ги показва, използвайки персонализирани тагове, които описват съдържанието.
  • 🧱 Етикети и елементи: Елементът е отварящ таг, съдържание и затварящ таг; таговете са чувствителни към малки и големи букви и трябва да се влагат и затварят правилно.
  • ???? ️ Атрибути и обекти: Атрибутите добавят подробности вътре в начален таг, а обекти като < представляват безопасно резервирани символи.
  • 📏 DTD и схема: DTD или XSD схемата определя разрешената структура, а XSD добавя типове данни и поддръжка на пространства от имена, която липсва на DTD.
  • 🌳 DOM и парсери: DOM разглежда документа като дърво, докато парсери като DOM и SAX, базиран на събития, четат и валидират XML.
  • 🆚 XML срещу HTML срещу JSON: XML пренася данни със строги, разширяеми тагове, за разлика от HTML, фокусиран върху дисплея, и по-лекия, удобен за масиви JSON.
  • 🤖 AI Assist: Инструментите с изкуствен интелект могат да генерират или валидират XSD схема и бързо да конвертират XML в JSON или други формати.

Урок за XML

Какво е XML?

XML означава eXнапрегнато MArkupe Lезик. Това е език (не език за програмиране), който използва маркировката и може да се разширява. Той е производен на Standard Gгенерализиран MArkupe Lезик (SGML). XML също използва DTD (Dпрофесия Type Definitions), за да дефинирате структурата на XML документа.

XML не е за обработка на изчислителни операции и алгоритми. Следователно XML не е език за програмиране. Основната цел е да се транспортират данни, а не да се показва информация. XML преодолява пропастта между човешката и машинната четимост. За разлика от HTML таговете, XML таговете са самоописателни.

XML е отворен формат. Файловото разширение на XML е .xml

История на XML

XML започна през далечната 1996 г. и беше публикуван за първи път през 1998 г. Wсветовното WIDE Web Consortium (W3C) е разработчик на XML, и стана а Препоръка на W3C в 1998.

Има две версии на XML.

  1. XML 1.0
  2. XML 1.1

XML 1.1 е най-новата версия. все пак XML 1.0 е най-използваната версия.

Редактори на XML са:

  • Тим Брей,
  • Жан Паоли,
  • СМ Сперберг,
  • Ив Малер,
  • Франсоа Йерго.

XML функции

Ето някои важни характеристики на XML:

  • Той е разширим и четим от хора.
  • Той е независим от платформата и езика.
  • Запазва бялото пространство.
  • Цялостна простота.
  • Самоописателна природа.
  • Той разделя данните от HTML.
  • XML таговете не са предварително дефинирани. Трябва да дефинирате вашите персонализирани тагове.
  • XML е проектиран да пренася данни, а не да показва тези данни.
  • Кодът за маркиране на XML е лесен за разбиране от човек.
  • Добре структуриран формат е лесен за четене и писане от програми.
  • XML е разширяем език за маркиране като HTML.

XML кодиране

Кодирането е преобразуването на Unicode символи в тяхното двоично представяне. UTF се използва за XML кодиране. UTF стойки за UCS (SCU стойки за Uниверсал Cхарактер Sет) Tпреобразуване Format.

Основно има два вида UTF кодиране.

  1. UTF-8 : UTF-8 използва 8 бита за представяне на знаците.
  2. Пример:

    <?xml version="1.0" encoding="UTF-8"?>
    
  3. UTF-16

Той използва 16 бита за представяне на знаците.

Пример:

<?xml version="1.0" encoding="UTF-16"?>

Можете да използвате кодиране вътре в XML декларацията. UTF-8 е стандартното кодиране в XML.

XML синтаксис

Кодовият сегмент по-долу показва основния XML синтаксис.

<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
<child>
<subchild>.....</subchild>
</child>
</root>

XML декларация

XML декларацията се състои от XML версия, кодиране на знаци и/или самостоятелен статус. Декларацията не е задължителна.

Синтаксис за XML декларация

Кодовият сегмент по-долу показва синтаксиса за XML декларация.

<?xml version="version_number," encoding="character_encoding" standalone="yes_or_no" ?>

Правила за XML деклариране

Следват правила за XML декларация.

  • Ако XML декларацията присъства, тя трябва да е първото нещо, което се появява.
  • XML декларацията е чувствителна към главни и малки букви и трябва да започва с малки букви <?xml.
  • Няма затварящ етикет.

Пример за XML декларация

Следващият кодов сегмент показва пример за XML декларация.

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>

XML коментари

Коментарите не са задължителни. Добавянето на коментари помага да се разбере съдържанието на документа.

Синтаксис за XML коментари

Коментарът започва с <!– и завършва с ->.

Следващият кодов сегмент показва синтаксиса за XML коментари.

<!-- Add your comment here -->

XML тагове и елементи

Етикетите работят като двойки, с изключение на декларациите. Всяка двойка тагове се състои от отварящ етикет (известен също като начален етикет) И затварящ етикет (известен също като краен етикет).

Имената на етикетите са оградени <>. За конкретна двойка тагове, началният и крайният тагове трябва да са идентични, с изключение на крайния таг / след <.

<name>...</name>

Всичко между отварящия и затварящия тагове се нарича съдържание.

Отварящият таг, съдържанието и затварящият таг, заедно, се наричат ​​an елемент.

Opening tag + content + closing tag = an element

Забележка: Елементите могат също да съдържат атрибути. Ще научите атрибутите много скоро.

Нека разгледаме елемента по-долу.

<age>20</age>

В горния елемент,

  • възраст е име на елемента.

Забележка: Име на етикет наричан още an елемент or име на елемент.

  • – отварящ етикет
  • 20 - съдържание
  • – затварящ етикет.

Ако няма съдържание между таговете, както е показано по-долу, това се нарича празни етикети.

<result></result>

Правила за XML етикети и елементи

Следващият списък показва правила за XML тагове и елементи.

  • Етикетите са чувствителни към главни и малки букви.

Пример:

Правилно:

<age>20</age>

Грешен:

<age>20</Age>

Забележка: ВЪЗРАСТ, Възраст, намлява възраст са три различни имена в XML.

  • Всички XML документи трябва да съдържат един основен елемент.
  • Всички елементи трябва да имат затварящ таг (с изключение на декларациите).
  • Името на етикет трябва да започва с буква или долна черта и не може да започва с XML.
  • Името на етикет може да съдържа букви, цифри, тирета, долна черта и точки. Тиретата подчертават, а точките са единствените разрешени препинателни знаци.
  • Името на етикет не може да съдържа интервали.
  • Всички елементи трябва да бъдат правилно вложени.

Пример:

Правилно:

<b><u>This text is bold and italic</u></b>

Грешен:

<b><u>This text is bold and italic.</b></u>

XML атрибути

Атрибутът за елемент се поставя след името на тага в началния таг. Можете да добавите повече от един атрибут за един елемент с различни имена на атрибути.

Нека разгледаме XML документа по-долу.

<company name="ABC Holdings" location="London">
<chairman>Mr. John</chairman>
<gm>Mr. Wood</gm>
</company>

Има два атрибута в компания елемент, т.е име намлява място.

Нека изучим име атрибут,

  • име=”ABC Holdings” – атрибут
  • име – име на атрибут
  • ABC Holdings – стойност на атрибута

Забележка: An име на атрибут е известен също като an атрибут.

Също така имайте предвид, че в горния пример, компания е корен елемент.

Правила за XML атрибути

Списъкът по-долу показва правила за XML атрибути.

  • Стойностите на атрибутите трябва да са в кавички.
  • Един елемент не може да съдържа няколко атрибута с едно и също име.

Атрибут срещу елемент

Все още ли сте объркани относно разликата между атрибут и елемент? Ето още един пример.

Нека разгледаме документите A и B, дадени по-долу.

Документ А:

<teacher subject="English">
<name>Mr. John</name>.
<qualification>Graduate</qualification>
</teacher>

Документ B:

<teacher>
<subject>English</subject>
<name>Mr. John</name>
<qualification>Graduate</qualification>
</teacher>

В документ А, предмет е атрибут.

В документ Б, предмет е елемент.

XML обекти

Какво представляват XML обектите?

С прости думи, обектите са начин за представяне на специални знаци. Субектите са известни още като единица препратки.

Защо имате нужда от XML обекти?

Някои знаци (като напр ", & <и т.н.) са запазени в XML. Те се наричат специални символи и не може да се използва директно за други цели.

Така например, < намлява > символите се използват за таговеНе можете директно да въведете по-малко от намлява по-голяма от знаци от клавиатурата за съдържание. Вместо това трябва да използвате обекти.

Следната таблица показва някои от популярните XML обекти.

Характер Descriptйон Име на обекта употреба
" Кавичка (двойна кавичка) quot "
& Знакът '&' amp &
" Апостроф (единични кавички) Г '
< Less отколкото знак lt <
> Знак по-голямо от gt >

Пример:

<friend>
<name>My friends are Alice & Jane.</name>
</friend>

HTML срещу XML

Прилики между HTML и XML

Следващият списък показва приликите между HTML и XML.

  • И двата са отворени формати.
  • И двата са езици за маркиране.
  • И двете използват тагове и атрибути, за да опишат съдържанието.

Разлики между HTML и XML

Въпреки че XML е като HTML, XML не е заместител на HTML. Има и някои значителни разлики между HTML и XML.

Следната таблица показва сравнение между HTML и XML.

HTML XML
Стойки за Език за маркиране на хипертекст Разширяем език за маркиране
Тип език Предварително дефиниран език за маркиране. Рамка за определяне на езици за маркиране.
Конструктивни детайли Не е предоставено. При условие.
Цел Използва се за показване на данни. Използва се за пренос на данни
Каран от Задвижван от формат. Управляван от съдържанието.
природа Има статичен характер. Има динамичен характер.
Тип маркер Предварително зададени тагове. Дефинирани от потребителя тагове.
Ограничение на етикета Налични са ограничен брой тагове. Етикетите са разширяеми.
Затварящи етикети Не е необходимо да използвате затварящи тагове (но се препоръчва използването на затварящи тагове). Затварящите тагове са задължителни.
Поддръжка на пространство от имена Не се поддържа. Поддържа се.
Чувствителност към случая Етикетите не са чувствителни към регистъра. Етикетите са чувствителни към регистъра.
Бяло пространство Бялото пространство не може да се запази (може да игнорира бялото пространство). Бялото пространство е запазено (не може да се игнорира бялото пространство).
Разбор в JavaСценарий Не е необходимо допълнително приложение. Нуждаете се от внедряване на DOM.
Code гнездене Не е задължително необходимо. Необходими.
грешки Може да игнорира малки грешки. Грешки не се допускат.
Разширение на името на файла . Html or . HTM . Xml
Размер Сравнително голям. Сравнително малък.
Кавички Кавичките не са необходими за стойностите на атрибутите. Изисква се за стойности на XML атрибут.
Обектна поддръжка Предлага поддръжка на собствен обект. Обектите трябва да бъдат изразени чрез конвенции.
Нулева поддръжка Естествено разпознава нулевата стойност. Трябва да използвате xsi:nil върху елементи.
Решения за форматиране Осигурява директна картаping за данни от приложението. Изискват по-значителни усилия.
Крива на обучение Less стръмна крива на обучение в сравнение с XML. Стръмна крива на обучение.
уебсайт https://html.spec.whatwg.org/ https://www.w3.org/TR/xml11/

Основен HTML синтаксис

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>

</body>
</html>

Основен XML синтаксис

<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
<child>
<subchild>.....</subchild>
</child>
</root>

Същият пример с HTML и XML

С HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<p>Book</p>
<p>Name: Anna Karenina</p>
<p>Author: Leo Tolstoy</p>
<p>Publisher: The Russian Messenger</p>
</body>
</html>

С XML

<?xml version = "1.0" encoding = "UTF-8" ?>
<book>
<name>Anna Karenina</name>
<author>Leo Tolstoy</author>
<publisher>The Russian Messenger</publisher>
</book>

JSON срещу XML

Прилики между JSON и XML

Списъкът по-долу показва приликите между JSON и XML.

  • И двата са отворени формати.
  • И двете се самоописват.
  • И двете имат йерархична структура.
  • И двете могат да бъдат анализирани и използвани от няколко езика за програмиране.

Разлики между JSON и XML

Има и няколко разлики между XML и JSON.

Таблицата по-долу показва сравнение между JSON и XML.

JSON XML
Стойки за JavaНотация на обект на скрипт Разширяем език за маркиране
Удължен от JavaСценарий SGML
Хранилище за данни Данните се съхраняват като двойки ключ-стойност. Данните се съхраняват като дървовидна структура.
Пространствата от имена Няма поддръжка за пространства от имена. Поддържа пространства от имена.
Коментари Добавянето на коментари не се поддържа. Може да добавя коментари.
Достъпност на данните Лесно достъпни като JSON обекти. Данните трябва да бъдат анализирани.
Metadata Добавянето на метаданни не се поддържа. Може да записва метаданни.
Видове JSON типове: низ, число, масив, булев. Всички XML данни трябва да бъдат струни.
Типове данни за поддръжка Поддържа текст намлява брой само типове данни. Поддържа много типове данни (текст, числа, изображения и т.н.)
Поддръжка на Array Повече поддръжка за масиви в сравнение с XML. Няма или по-малко поддръжка за масиви.
Поддръжка на обекта Вградена поддръжка за обект. Обектът трябва да бъде изразен чрез конвенции.
Поддръжка на AJAX инструментариум Поддържа се. Не се поддържа напълно.
Извличане на стойности Easy. Труден.
Десериализиране/сериализиране Напълно автоматизиран. Разработчиците трябва да пишат JavaКод на скрипта.
Поддръжка на браузъра Поддържа се от повечето браузъри. Разборът на XML между различни браузъри може да бъде труден.
Encoding Поддържа само UTF-8 кодиране. Поддържа различни кодировки.
Възможности на дисплея Няма възможности за показване. Предлагайте възможности за показване.
Размер на документа По-малък от XML. По-голям от JSON.
Разширение на името на файла .json . Xml
Охрана Less обезпечени. По-сигурен от JSON.
Лесно се чете Сравнително лесно. Сравнително трудно.
Крива на обучение Лесен за научаване. Стръмна крива на обучение.
уебсайт https://www.json.org/json-en.html https://www.w3.org/TR/xml11/

Основен JSON синтаксис

{string:value, .......}

Същият пример с JSON и XML

С JSON

{"books":[
{"name":"Anna Karenina", "author":"Leo Tolstoy"},
{"name":"One Hundred Years of Solitude", "author":"Gabriel Garcia Marquez"},
{"name":"The Great Gatsby", "author":"Scott Fitzgerald"},
{"name":"Invisible Man", "author":"Ralph Ellison"}
]}

С XML

<?xml version = "1.0" encoding = "UTF-8" ?>
<books>
<book>
<name>Anna Karenina</name>
<author>Leo Tolstoy</author>
</book>
<book>
<name>One Hundred Years of Solitude</name>
<author>Gabriel Garcia Marquez</author>
</book>
<book>
<name>The Great Gatsby</name>
<author>Scott Fitzgerald</author>
</book>
<book>
<name>Invisible Man</name>
<author>Ralph Ellison</author>
</book>
</books>

XML DTD

Какво е DTD?

DTD означава Dпрофесия Type Dдефиниция. Той дефинира структурата на XML документ, използвайки някои правни елементи. XML DTD не е задължителен.

Правила на DTD

Следващият списък показва правилата на DTD.

  • Ако има DTD, той трябва да се появи в началото на документа (само XML декларацията може да се появи над DTD).
  • Декларацията на елемента трябва да започва с an ! марка.
  • Името на DTD и типът на основния елемент трябва да са еднакви.

Примери за DTD

Пример за вътрешен DTD:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE student [
<!ELEMENT student (firstname,lastname,school)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT lastname (#PCDATA)>
<!ELEMENT school (#PCDATA)>
]>
<student>
<firstname>Mark</firstname>
<lastname>Wood</lastname>
<school>Hills College</school>
</student>

В горния пример,

  • !DOCTYPE студент показва началото на DTD декларацията. И на студент е основният елемент на XML документа.
  • !ELEMENT студент показва студент елементът трябва да съдържа име, фамилия намлява училище елементи.
  • !ELEMENT име показва FirstName елементът е от тип #PCDATA (Pарсиран Cхарактер Дата).
  • !ELEMENT фамилия показва фамилия елементът е от тип #PCDATA.
  • !ELEMENT училище показва училище елементът е от тип #PCDATA.

Пример за външен DTD:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE student SYSTEM "student.dtd">
<student>
<firstname>Mark</firstname>
<lastname>Wood</lastname>
<school>Hills College</school>
</student>

Съдържанието на DTD файл (student.dtd), както следва.

<!ELEMENT student (firstname,lastname,school)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT lastname (#PCDATA)>
<!ELEMENT school (#PCDATA)>

XML DOM

Какво е DOM?

DOM означава Dпрофесия Oобект Mодел. Той определя стандартен начин за достъп и манипулиране на XML документи. DOM има (йерархична) дървовидна структура.

Пример за DOM

Нека разгледаме XML документа по-долу.

<?xml version="1.0" encoding="UTF-8" ?>
<school>
<student>
<name>
<first_name>Alex</first_name>
<last_name>Clarke</last_name>
</name>
<age>14</age>
<address>No. 35, Flower Road, Leeds</address>
</student>
</school>

Дървовидната структура на горния XML файл ще изглежда като следното изображение.

XML DOM
Пример за XML DOM

XML валидиране

Какво представляват добре оформените XML документи?

Добре оформена XML документите са XML документи с правилен синтаксис.

Какво представляват валидните XML документи?

Валиден XML документите са добре оформени и отговарят на правилата на DTD.

XML пространства от имена

Защо пространства от имена?

Пространствата от имена помагат да се избегнат конфликти с имена на елементи.

Декларация на пространство от имена

Следното показва синтаксиса за декларацията на пространството от имена.

<element xmlns:name="URL">

В горната декларация,

  • - xmlns ключова дума показва началото на пространството от имена.
  • - име е префиксът на пространството от имена.
  • - URL е идентификаторът на пространството от имена.

Примери за пространства от имена

Следващият кодов сегмент показва пример за пространства от имена.

<?xml version="1.0" encoding="UTF-8" ?>
<abt:about xmlns:abt="https://www.guru99.com/about-us.html">
<abt:founder>Krishna</abt:founder>
<abt:vision>Fun and Free Education for ALL</abt:vision>
</abt:about>

XML редактори

Има няколко XML редактора. Всеки текстов редактор (като Notepad и т.н.) може да се използва като XML редактор.

Следният списък показва някои от популярните XML редактори.

1) XML Notepad

XML Notepad е редактор с отворен код за XML. Той има дървовиден изглед и XSL изход в левия панел и текст на възлите в десния. Има прозорец за отстраняване на грешки в долната част.

Ключова статистика:

  • Тип – XML редактор
  • Разработчик - Microsoft
  • Поддържана операционна система – Microsoft Windows.
  • Цена – безплатно

Връзка: http://microsoft.github.io/XmlNotepad/


2) Stylus Studio

Stylus Studio е IDE, написана на C++ за разширяем език за маркиране (XML). Той позволява на потребителя да редактира и трансформира XML документи и данни, като например електронен обмен на данни (EDI), CSV и релационни данни.

Ключова статистика:

  • Тип – Интегрирана среда за разработка (IDE) за XML
  • Разработчик – Progress Software Corporation
  • Поддържана операционна система – Microsoft Windows.
  • Цена – Платена (моля, вижте уебсайта, посочен по-долу, за най-актуалната цена), наличен е безплатен пробен период.

Връзка: http://www.stylusstudio.com/


3) Altova XMLSpy

XMLSpy се предлага предимно на пазара като JSON и XML редактор. Той има вграден дизайнер и редактор на схеми. Включва Visual Studio и Eclipse интеграция.

Ключова статистика:

  • Тип – XML редактор
  • Разработчик - Altova
  • Поддържана операционна система – Microsoft Windows.
  • Цена – Платена (моля, вижте уебсайта, посочен по-долу, за най-актуалната цена), наличен е безплатен пробен период.

Връзка: https://www.altova.com/xmlspy-xml-editor


4) Oxygen XML редактор

Oxygen XML е мултиплатформен редактор, разработен в Java. Помага за валидиране на схеми като DTD, W3C XML схема, RELAX NG, Schematron, NRL и NVDL схеми.

Ключова статистика:

  • Тип – XML редактор
  • Разработчик - SyncРО Софт ЕООД
  • Поддържана операционна система – Windows, Linux и Mac OS X
  • Цена – Платена (моля, вижте уебсайта, посочен по-долу, за най-актуалната цена)

Връзка: https://www.oxygenxml.com/


5) Xmplify

Xmplify XML Editor предоставя напълно XML-съвместима среда за редактиране с DTD и XML Schema-базирано автоматично довършване, автоматична проверка на документи и други.

Ключова статистика:

  • Тип – XML редактор
  • Разработчик – MOSO Corporation
  • Поддържана операционна система – Mac OS.
  • Цена – Платена (моля, вижте уебсайта, посочен по-долу, за най-актуалната цена)

Връзка: http://xmplifyapp.com/

XML анализатори

XML анализаторът е софтуерна библиотека, която предоставя интерфейс за работа с XML документи. Той проверява дали форматът на XML документа е правилен. Някои парсери могат също да валидират XML документите. Съвременните браузъри идват с XML анализатори.

SAX

SAX стойки за Sизпъл AПИ за XML. Това е aдни на приложение pрограма iинтерфейс (API) за парсиране на XML документи. Държи се подобно на обработчиците на събития в Java.

За разлика от DOM, SAX е пример за основан на събития XML анализатор.

Ето някои важни разлики между SAX и DOM.

SAX DOM
Стойки за Прост API за XML Обект модел на документ
Тип анализатор Въз основа на събития Обектно базиран
Четете и пишете XML Само за четене Хем чете, хем пише
Вмъкване/актуализиране/изтриване на възли Не може да вмъкне/актуализира/изтрие възли Може да вмъква/актуализира/изтрива възли
Ефективност на паметта Добра ефективност на паметта Варира
Скорост По-бавен от DOM Parser По-бързо от SAX Parser
Подходяща за Файлове с малък размер Файлове с голям размер

Обвързване на XML данни

Свързването на XML данни е представянето на данни в XML документ като бизнес обект в паметта на компютър.

Има три подхода за обвързване на XML данни.

  • Обвързване на данни, базирано на XML схема: Съответстващите XML класове се създават на базата на схемата.
  • Обвързване на данни на базата на клас: Създава се съответна XML схема въз основа на класове.
  • Картаpingсвързване на данни, базирано на: Той описва как съществуваща XML схема се преобразува в набор от класове (и обратно).

Съществуват и рамки за обвързване на XML данни.

Примери:

Свързването на XML данни е лесно с рамки. Рамката за обвързване на данни генерира голямо количество код за вас. Трябва да подадете в DTD или XML схема.

XML схеми

XML схема (също известен като Дефиниция на XML схема or XSD) се използва за описание на структурата на XML документа. Това е алтернатива на DTD.

Защо схемата е важна?

DTD не е толкова мощна, колкото схемата, тъй като не е достатъчно разширяема и гъвкава. Така че може да не е подходяща за някои ситуации. В такава ситуация схемата е важна. Основната цел на използването на XML схемата е да се дефинират елементите и атрибутите на XML документ.

По какво XML схемата се различава от DTD?

Следното сравнение показва как XSD (XML Schema) се различава от DTD.

DTD XSD
Стойки за Определение на типа документ Определение на XML схема
разтегаемост Не е разтегателен Extensible
Контрол на XML структура Less контрол Повече контрол
Типове данни за поддръжка Не се поддържа Подкрепа
Поддръжка на пространство от имена Не се поддържа Подкрепа

Следният сегмент от код показва пример на XML схема.

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name = "employee">
<xs:complexType>
<xs:sequence>
<xs:element name = "firstname" type = "xs:string" />
<xs:element name = "lastname" type = "xs:string" />
<xs:element name = "phone" type = "xs:int" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

Предимства на XML

Ето плюсовете/ползите от XML:

  • Това улеснява пренасянето и споделянето на данни.
  • XML подобрява обмена на данни между различни платформи.
  • Това е език за маркиране, който е набор от знаци и/или символи, поставени в текстов документ.
  • XML показва как трябва да изглежда XML документът, след като бъде показан.
  • Това опростява процеса на промяна на платформата.
  • Подобрява наличността на данни.
  • Поддържа многоезични документи и Unicode.
  • Сравнително лесно е да се учи и кодира.
  • Той извършва валидиране с помощта на DTD и схема.
  • Това прави документите преносими между системи и приложения. С помощта на XML можете бързо да обменяте данни между различни платформи.
  • XML разделя данните от HTML.

Недостатъци на XML

Ето са недостатъците/недостатъците на използването на XML:

  • XML изисква приложение за обработка.
  • Синтаксисът на XML е подобен на други алтернативни „текстови“ формати за предаване на данни, което понякога е объркващо.
  • Няма поддръжка за присъщи типове данни.
  • XML синтаксисът е излишен.
  • Не позволява на потребителя да създава свои собствени тагове.

Въпроси и Отговори

Да. Въпреки че JSON доминира в уеб API, XML остава широко използван в конфигурационни файлове, формати на документи като DOCX и SVG, SOAP уеб услуги, RSS емисии и корпоративен обмен на данни, където схемите и валидирането са от значение.

XSLT (Extensible Stylesheet Language Transformations) трансформира XML документ в друг формат, като например HTML, обикновен текст или различно структуриран XML. Той използва шаблонни правила за избор и преоформяне на възли за показване или обмен.

Да. Повечето браузъри представят XML файл като сгъваемо дърво, показващо неговите елементи и структура. Можете също да го отворите във всеки текстов редактор или специален XML редактор за редактиране и валидиране.

Да. Дайте на ИИ примерен XML документ и той може да създаде XSD, който описва елементите, атрибутите и типовете данни, или да провери съществуваща схема и да обясни защо даден документ не преминава валидацията. Revвижте ограниченията.

Да. Изкуственият интелект може да генерира код или директно да конвертира XML в JSON, CSV или структура от данни и да маркира части, които не съответстват ясно, като например атрибути или повтарящи се елементи. Проверете резултата спрямо вашите данни.

Обобщете тази публикация с: