IT Format danych

XML

Znany też jako:Extensible Markup Language

Definicja #

XML (Extensible Markup Language) to standard opracowany przez W3C w 1998 roku, będący uproszczonym podzbiorem SGML. Pozwala na definiowanie własnych znaczników (tagów) opisujących strukturę i semantykę danych.

Podstawowa struktura dokumentu XML:

  • Deklaracja XML<?xml version="1.0" encoding="UTF-8"?>
  • Element główny (root) — jeden obowiązkowy element okalający całą zawartość
  • Elementy i atrybuty — hierarchiczne znaczniki z opcjonalnymi atrybutami
  • Przestrzenie nazw (namespaces) — zapobiegają konfliktom nazw z różnych schematów

Walidacja dokumentu XML odbywa się przez:

  • DTD (Document Type Definition) — starszy mechanizm walidacji
  • XML Schema (XSD) — nowoczesny, bogaty schemat walidacji z typami danych

Choć XML był dominującym formatem wymiany danych w erze usług webowych SOAP i SOA, w aplikacjach webowych i REST API w dużej mierze zastąpił go JSON — lżejszy i wygodniejszy w JavaScript. XML pozostaje standardem w SOAP, konfiguracji (Maven pom.xml, Spring XML, Android layouts), EDI i systemach korporacyjnych.

Zastosowania #

XML stosuje się do:

  • Pliki konfiguracyjne — Maven pom.xml, Spring, Android layout XML, konfiguracje serwerów
  • Usługi webowe SOAP — XML jest natywnym formatem wiadomości protokołu SOAP i WSDL
  • Wymiana danych w systemach korporacyjnych — EDI, ERP (SAP iDocs), systemy finansowe i ubezpieczeniowe
  • Formaty dokumentów — Microsoft Office Open XML (.docx, .xlsx), SVG (grafika wektorowa), XHTML
  • Konfiguracja i metadane — RSS/Atom feeds, konfiguracja Ant, TestNG, NUnit

Ścieżka nauki #

XML jest stosunkowo prostą technologią do opanowania. Zacznij od:

  • Składnia XML — elementy, atrybuty, komentarze, CDATA, encje (&amp;, &lt;)
  • Walidacja przez XSD — definiowanie schematu dokumentu
  • Parsowanie w wybranym języku: DOM vs SAX vs StAX (Java), ElementTree (Python), XmlDocument (C#)

Następnie poznaj:

  • XPath — język zapytań do nawigacji po drzewie XML
  • XSLT — transformacja dokumentów XML do innego formatu (XML, HTML, tekst)
  • Namespace i integracja z SOAP/WSDL
  • Porównaj z JSON — zrozum kiedy XML jest lepszy (schemat, namespace, SOAP) a kiedy JSON (REST API, JavaScript)

FAQ #

Czy XML jest przestarzały?
XML nie jest przestarzały — jest nadal powszechnie używany w konfiguracjach, SOAP, formatach dokumentów (OOXML) i systemach korporacyjnych. W REST API i nowoczesnych aplikacjach webowych wyprzedził go JSON ze względu na mniejszy rozmiar i prostotę.
Czym różni się XML od JSON?
XML jest bardziej rozbudowany: obsługuje atrybuty, namespace, walidację przez XSD i transformacje XSLT. JSON jest lżejszy i bardziej naturalny dla JavaScript. JSON dominuje w REST API, XML w SOAP i systemach korporacyjnych.
Co to jest XSD?
XSD (XML Schema Definition) to język definiowania struktury i typów danych dokumentu XML. Umożliwia walidację — sprawdzenie, czy dokument XML jest zgodny z oczekiwanym formatem. Jest nowocześniejszy i bogatszy od starszego DTD.
Czy znajomość XML jest potrzebna programiście?
Podstawy XML są przydatne każdemu programiście — szczególnie w Javie (Maven, Spring, Java EE) i .NET (konfiguracje, SOAP). Dogłębna znajomość jest wymagana przy integracji systemów korporacyjnych i pracy z SOAP/WSDL.
Ostatnia aktualizacja:

Powiązane hasła

Technologie i biblioteki, które najczęściej pojawiają się razem z XML w ogłoszeniach.

Cały słownik IT

Przeglądaj słownik IT alfabetycznie

Wybierz literę, aby zobaczyć wszystkie hasła zaczynające się od niej.