Co to jest xml?
Autor: Redakcja Domeny.ForSale Opublikowano
W skrócie: XML to tekstowy format zapisu i wymiany danych, w którym znaczniki opisują znaczenie oraz strukturę informacji. Stosuje się go między innymi w integracjach systemów, plikach konfiguracyjnych i mapach witryn. Plik XML można przeczytać w edytorze tekstu, ale do jego prawidłowego wykorzystania potrzebna jest znajomość zasad przyjętych przez dany system.
Jak działa XML i co oznacza jego nazwa
XML to skrót od Extensible Markup Language, czyli rozszerzalnego języka znaczników. Znacznik jest etykietą zapisaną w nawiasach ostrych, na przykład <cena>. Pozwala określić, co oznacza umieszczona między znacznikami wartość.
„Rozszerzalny” oznacza, że XML nie narzuca jednej listy nazw znaczników. Autor formatu może zdefiniować elementy takie jak <produkt>, <zamowienie> czy <klient>. Systemy wymieniające dane muszą jednak uzgodnić nazwy i strukturę — samo użycie XML nie sprawi, że dowolny program zrozumie plik.
XML opisuje przede wszystkim dane, a nie ich wygląd. Plik zawierający cenę i nazwę produktu nie określa automatycznie, jak mają one wyglądać na stronie sklepu. Za prezentację odpowiada aplikacja albo dodatkowe reguły przetwarzania.
Jak czytać plik XML: prosty przykład
Tak może wyglądać zapis pojedynczego produktu:
<?xml version="1.0" encoding="UTF-8"?>
<produkt id="123">
<nazwa>Kubek ceramiczny</nazwa>
<cena waluta="PLN">39.90</cena>
<dostepny>true</dostepny>
</produkt>
Pierwszy wiersz to opcjonalna deklaracja XML. Wskazuje wersję języka oraz kodowanie znaków, czyli sposób zapisania liter i innych znaków w pliku. Jeśli deklaracja podaje UTF-8, rzeczywiste kodowanie pliku powinno być z nią zgodne.
<produkt> jest elementem głównym, który obejmuje pozostałe elementy. <nazwa>, <cena> i <dostepny> zawierają wartości. Z kolei id="123" oraz waluta="PLN" to atrybuty, czyli dodatkowe informacje umieszczone w znaczniku otwierającym.
Nazwy elementów sugerują znaczenie danych, ale nie definiują wszystkich zasad. XML sam nie rozstrzyga, czy cena musi mieć dwa miejsca po przecinku ani czy true oznacza dostępność w magazynie. Takie reguły wynikają z dokumentacji formatu lub schematu danych.
Jakie zasady musi spełniać poprawny XML
Dokument poprawny składniowo jest nazywany well-formed. Musi mieć jeden element główny, a elementy muszą być prawidłowo zamknięte i zagnieżdżone. Zapis <produkt><nazwa>Kubek</produkt></nazwa> jest błędny, ponieważ znaczniki zamykające występują w niewłaściwej kolejności.
Przy czytaniu lub poprawianiu pliku najważniejsze są następujące zasady:
- Wielkość liter ma znaczenie:
<Cena>i<cena>to różne nazwy. - Wartości atrybutów muszą być ujęte w pojedyncze lub podwójne cudzysłowy.
- Pusty element można zapisać jako
<uwagi/>zamiast<uwagi></uwagi>. - Niektóre znaki w treści wymagają specjalnego zapisu:
&jako&, a<jako<.
Poprawna składnia nie oznacza jeszcze zgodności z wymaganiami odbiorcy. Do kontroli struktury można użyć schematu XSD, czyli dokumentu opisującego dozwolone elementy, ich kolejność i typy wartości. Plik może być poprawnym XML-em, ale zostać odrzucony przez aplikację, na przykład z powodu brakującego numeru zamówienia.
W bardziej rozbudowanych dokumentach występują też przestrzenie nazw. Pozwalają odróżnić elementy o tej samej nazwie pochodzące z różnych formatów. Dlatego prefiksów takich jak abc: i deklaracji xmlns nie należy usuwać tylko dlatego, że wyglądają na zbędne.
Gdzie XML jest używany i czym różni się od HTML oraz JSON
XML spotkasz w wymianie danych między sklepem a hurtownią, integracjach systemów firmowych i niektórych usługach sieciowych. Jest też używany w RSS, czyli formacie udostępniania aktualizacji treści, oraz SVG, czyli formacie grafiki wektorowej. Pliki XML występują również wewnątrz dokumentów DOCX i XLSX.
Mapa witryny XML zawiera adresy stron i może przekazywać wyszukiwarkom dodatkowe informacje o nich. Nie jest jednak gwarancją indeksacji ani uzyskania określonej pozycji w wynikach wyszukiwania.
HTML służy do opisywania struktury stron internetowych przy użyciu ustalonych elementów, takich jak nagłówki i akapity. XML pozwala tworzyć własne nazwy elementów do zapisu danych. Z kolei JSON to inny tekstowy format wymiany danych, oparty głównie na parach nazwa–wartość i listach.
Przy prostej integracji aplikacji internetowych JSON często jest wygodniejszy i bardziej zwięzły. XML może być odpowiednim wyborem, gdy wymaga go odbiorca albo istniejący standard. Przykładowo, jeśli hurtownia udostępnia katalog w XML, sklep potrzebuje importera obsługującego konkretną strukturę tego katalogu, nie tylko dowolne pliki z rozszerzeniem .xml.
Jak otworzyć XML i bezpiecznie z niego korzystać
Do podejrzenia pliku wystarczy edytor tekstu. Edytor kodu dodatkowo wyróżni znaczniki i pomoże znaleźć błędy. Przeglądarka internetowa także może pokazać strukturę XML lub komunikat o niepoprawnej składni, lecz nie zastąpi sprawdzenia zgodności z wymaganiami aplikacji.
Przed importem wykonaj kopię pliku, sprawdź wymagany format w dokumentacji odbiorcy i przetestuj niewielką próbkę danych. Nie przesyłaj plików z danymi klientów, hasłami czy informacjami firmowymi do przypadkowych internetowych walidatorów.
Jeśli tworzysz aplikację odczytującą XML z nieznanego źródła, zadbaj o bezpieczną konfigurację parsera, czyli programu analizującego dokument. Ogranicz obsługę zewnętrznych encji i pobieranie zasobów zewnętrznych, aby plik nie mógł wymusić niepożądanego dostępu do plików lub sieci.
Praktyczny pierwszy krok: otwórz XML w edytorze, znajdź element główny i porównaj jego strukturę z dokumentacją systemu, do którego chcesz wprowadzić dane.
Zobacz też: Co to jest 2FA?
