Opanowanie plików XML: struktura, zastosowania i kluczowe zalety

Plik XML przechowuje dane strukturyzowane w postaci zagnieżdżonych, czytelnych dla człowieka znaczników, a no nie wierszy i kolumn. Microsoft opisuje ten format jako „technologię zaprojektowaną do zarządzania danymi strukturyzowanymi i udostępniania ich w czytelnym dla człowieka pliku tekstowym”. Ten przewodnik wyjaśnia, jak budowane są te pliki, skąd pochodzą, jak radzą sobie z nimi arkusze kalkulacyjne i jak wydobyć z nich potrzebne informacje.
Co to jest plik XML
Jest to zwykły plik tekstowy, który zawiera zarówno dane, jak i nazwy opisywanych przez nie obiektów. Eksport rozdzielany przecinkami dostarcza wartości i opiera się na wierszu nagłówka w celu nadania im znaczenia. Plik ze znacznikami przenosi to znaczenie bezpośrednio wewnątrz tekstu, tuż obok każdej wartości.
Taka konstrukcja niesie za sobą jedną konsekwencję, którą warto zrozumieć przed przystąpieniem do dalszej pracy. Format ten jest hierarchiczny, więc rekord może zawierać inne rekordy na wielu poziomach zagnieżdżenia. Arkusz kalkulacyjny jest płaski i to właśnie w różnicy między tymi dwoma strukturami tkwi większość praktycznych trudności.
Przygotowany przez Microsoft przegląd podsumowuje ten cel w jednym zdaniu: format ten „znacznie ułatwia definiowanie, przesyłanie, walidację i interpretację danych między bazami danych, aplikacjami i organizacjami”.
Jak działa ta struktura
Elementy i zagnieżdżanie
Każda wartość znajduje się wewnątrz nazwanego elementu, a elementy mogą zawierać inne elementy. Faktura może zawierać blok danych klienta, listę pozycji oraz blok podsumowań, z których każdy ma własne elementy podrzędne.
Kluczem jest tutaj zagnieżdżanie. Rejestruje ono relacje, które płaska tabela może wyrazić jedynie poprzez powtarzanie wartości w kolejnych wierszach.
Niestandardowe znaczniki
Nazwy znaczników nie są narzucone przez format. Jak podaje oficjalny opis, „projektanci aplikacji mogą tworzyć własne, dostosowane znaczniki, struktury danych i schematy”.
Z tego powodu dwa pliki od dwóch różnych dostawców mogą opisywać tę samą fakturę i nie dzielić niemal żadnych wspólnych nazw pól. Każda analiza musi rozpocząć się od odczytania, co faktycznie oznaczają widoczne przed Tobą znaczniki.
Schematy i walidacja
Osobny plik schematu definiuje reguły. Microsoft opisuje to powiązanie bezpośrednio. Pliki danych „zawierają niestandardowe znaczniki i dane strukturyzowane”. Pliki schematów „zawierają znaczniki schematu, które wymuszają reguły, takie jak typ danych i walidacja”.
Schematy używają rozszerzenia .xsd. Standard definiuje również pliki transformacji z rozszerzeniem .xslt, opisywane jako pliki „używane do stosowania stylów i przekształcania danych XML do różnych formatów prezentacji”.
Do czego służą te pliki
Rzadko wybiera się ten format celowo. Zazwyczaj po prostu się go otrzymuje, najczęściej z systemu, który działa już od wielu lat.
- Finanse i bankowość. Formaty wyciągów i komunikatów płatniczych są powszechnie oznaczane znacznikami, a nie rozdzielane separatorami.
- E-fakturowanie. Wiele krajowych wymogów dotyczących e-faktur wskazuje dokument ze znacznikami jako oficjalny dokument prawny.
- Eksporty z systemów ERP i HR. Długo eksploatowane systemy przedsiębiorstw często domyślnie eksportują dane w tym formacie.
- Kanały produktów i treści. Kanały katalogów detalicznych i formaty syndykacji opierają się na znacznikach.
- Konfiguracja i dokumenty Office. Nowoczesne formaty plików Office to skompresowane (zip) zestawy części oznaczonych znacznikami.
Schemat we wszystkich pięciu przypadkach jest taki sam. Plik jest produktem wymiany danych stworzonym dla innej maszyny, a nie plikiem roboczym przygotowanym dla analityka.
W porównaniu z formatami płaskimi
| Pliki ze znacznikami (.xml) | CSV | Parquet | |
|---|---|---|---|
| Struktura | Zagnieżdżona, wiele poziomów | Płaskie wiersze i kolumny | Płaska, kolumnowa |
| Nazwy pól | Przenoszone wewnątrz tekstu przy każdej wartości | Tylko wiersz nagłówka | Przechowywane w metadanych pliku |
| Walidacja | Opcjonalny plik schematu wymusza typy | Brak wbudowanej | Typy przechowywane w schemacie |
| Czytelny w edytorze tekstu | Tak, choć mało zwięzły | Tak | Nie |
| Typowy rozmiar dla tych samych danych | Największy | Średni | Najmniejszy |
| Typowe źródło | Systemy korporacyjne i standardy wymiany danych | Eksporty i raporty | Platformy danych |
Jeśli wy regularnie pracujecie z tymi formatami, nasze dodatkowe artykuły wyjaśniające na temat plików TSV oraz plików Parquet opisują płaską stronę tej tabeli.
Jak Excel radzi sobie z tym formatem
To właśnie tutaj większość analityków po raz pierwszy styka się z tym formatem, a oficjalna dokumentacja wyjątkowo jasno wyjaśnia, co się wtedy dzieje.
Ścieżka importu nie znajduje się na głównej wstążce. Przygotowana przez Microsoft instrukcja importu brzmi: „Kliknij kartę Deweloper > Importuj”. Strona ta wskazuje również czytelnikom kroki niezbędne do wyświetlenia tej karty, ponieważ domyślnie jest ona ukryta.
Podstawowy proces pracy składa się, według słów firmy Microsoft, z „pięciu etapów”. Dodajesz plik schematu do skoroszytu, a następnie mapujesz jego elementy na komórki lub tabele. Importujesz plik danych i powiązujesz elementy z tymi zmapowanymi komórkami. Od tego momentu pracujesz w programie Excel i eksportujesz poprawione dane z powrotem.
Dwa zachowania programu mają większe znaczenie niż cała reszta.
Excel spróbuje odgadnąć schemat, jeśli go nie dostarczysz. Jeśli zaimportujesz dane bez uprzedniego dodania schematu, „program Excel spróbuje wywnioskować schemat”. To domniemanie opiera się „na znacznikach zdefiniowanych w pliku danych XML”.
Wywnioskowany schemat jest następnie zapisywany wraz ze skoroszytem. Na stronie zaznaczono również, że „nie można wyeksportować schematu wywnioskowanego przez program Excel jako oddzielnego pliku danych schematu XML (.xsd)”.
Zagnieżdżenie jest spłaszczane podczas importu. Microsoft opisuje wynik otwarcia pliku w trybie tylko do odczytu. Jest to „dwuwymiarowa tabela z wierszami i kolumnami, w której znaczniki XML są wyświetlane jako nagłówki kolumn”. Element główny jest „używany jako tytuł”.
To spłaszczenie jest dokładnie tym, czego potrzebujesz do analizy, i jednocześnie momentem, w którym tracone jest znaczenie. Trójpoziomowa hierarchia zamienia się w kolumny, a relacja między elementem nadrzędnym a podrzędnym przetrwa jedynie w sposobie nazwania znaczników.
Główne zalety
Dane same się objaśniają. Nazwy pól podróżują wraz z wartościami, więc plik oddzielony od swojej dokumentacji nadal nadaje się do interpretacji.
Walidacja jest częścią ekosystemu. Schemat może wymusić typy danych i wymagane pola, zanim dane do Ciebie trafią, czego nie zapewnia żaden zwykły eksport z separatorami.
Przekracza granice organizacyjne. Jak zauważono w oficjalnym opisie, format ten „jest zgodny z wytycznymi standardów branżowych i może być przetwarzany przez różne bazy danych i aplikacje”.
Hierarchia zostaje zachowana. Jedna faktura z dwunastoma pozycjami pozostaje jedną fakturą, a nie dwunastoma wierszami powtarzającymi wartości nagłówka.
Ograniczenia, o których warto wiedzieć
Mała zwięzłość (nadmiarowość). Powtarzanie nazw znaczników wokół każdej wartości sprawia, że pliki są duże w porównaniu z tymi samymi danymi zapisanymi w formacie płaskim.
Nazwy znaczników nie są standaryzowane u różnych dostawców. Niestandardowe znaczniki są cechą charakterystyczną tego formatu, a ceną za to jest konieczność interpretacji każdego nowego źródła.
Arkusze kalkulacyjne wymagają spłaszczenia hierarchii. Każda tabela przestawna, wykres czy formuła oczekuje struktury prostokątnej, więc przed rozpoczęciem analizy kształt danych musi ulec zmianie.
Import może zakończyć się niepowodzeniem podczas walidacji. Microsoft zauważa, że „program Excel wyświetla okno dialogowe Błąd importu XML, gdy nie może zweryfikować danych zgodnie z mapą XML”. To zmusza Cię do powrotu do schematu, zanim w ogóle zaczniesz pracę.
Jak uzyskać odpowiedź bez walki ze strukturą danych
Praktyczne pytanie rzadko brzmi: „jak otworzyć ten plik”. Zazwyczaj brzmi ono: „jak wygenerować z niego wykres do dzisiejszego popołudnia”.
Droga, która się sprawdza, to ta, którą sugeruje już sam Excel. Spłaszcz hierarchię do postaci prostokątnej tabeli, zdecyduj, który poziom hierarchii stanowi pojedynczy wiersz, i na tej podstawie przeprowadź analizę.
Powerdrill Bloom akceptuje przesyłanie plików Excel, CSV, PDF oraz dokumentów tekstowych, dlatego plik źródłowy ze znacznikami należy najpierw przekonwertować na format CSV lub skoroszyt. Otwarcie pliku w trybie tylko do odczytu w programie Excel tworzy dokładnie taką prostokątną strukturę, podobnie jak każdy krok konwersji w Twoich narzędziach do obróbki danych.
Gdy dane są już płaskie, analiza przebiega standardowo. Strona asystenta AI dla plików CSV opisuje tę ścieżkę. Strona z cennikiem podsumowuje rezultat: zadawaj pytania dotyczące swoich danych i „uzyskaj rzetelną odpowiedź wraz z wykresami, tabelami i opcjami eksportu”. Jeśli interesuje Cię konkretnie wykres, nasz poradnik krok po kroku na temat zamiany pliku CSV w wykres opisuje ten proces od początku do końca.
Przed konwersją warto dokładnie przemyśleć jedną decyzję. Świadomie wybierz poziom szczegółowości wiersza. Jeden wiersz na pozycję faktury i jeden wiersz na całą fakturę pozwalają odpowiedzieć na zupełnie inne pytania.
Podsumowanie
Format ten jest mało zwięzły (nadmiarowy), samoopisujący się i hierarchiczny, a te trzy cechy wyjaśniają wszystko inne, co wiąże się z pracą z nim. Doskonale nadaje się do przesyłania danych między organizacjami, ale jest niewygodny do analizowania danych wewnątrz jednej z nich.
Potraktuj konwersję jako świadomą decyzję, a nie przykry obowiązek. Wybierz poziom, który stanie się wierszem, i zachowaj nazwy znaczników jako nagłówki kolumn. Po tym kroku praca wygląda tak samo, jak w przypadku każdej innej analizy arkusza kalkulacyjnego.
Masz teraz taki plik w swoim folderze? Wypróbuj Powerdrill Bloom na spłaszczonym eksporcie i zobacz wykres, zanim zaczniesz inwestować w budowę całego procesu przetwarzania danych.
Najczęściej zadawane pytania
Do czego służy plik XML?
Służy do przesyłania danych strukturyzowanych między systemami i organizacjami. Typowe źródła obejmują komunikaty bankowe, e-faktury, eksporty z systemów ERP i HR, kanały produktów detalicznych oraz wewnętrzne elementy dokumentów Office.
Jaka jest różnica między XML a CSV?
Pierwszy z nich jest hierarchiczny i przenosi nazwy pól wewnątrz tekstu przy każdej wartości. Drugi jest płaski i opiera się na pojedynczym wierszu nagłówka. Format ze znacznikami może być również walidowany pod kątem pliku schematu, czego nie umożliwia eksport z separatorami.
Jak otworzyć plik XML w programie Excel?
Udokumentowana przez firmę Microsoft ścieżka to Deweloper > Importuj, przy czym karta Deweloper jest domyślnie ukryta. Możesz również otworzyć plik w trybie tylko do odczytu, co spowoduje utworzenie dwuwymiarowej tabeli, w której znaczniki posłużą jako nagłówki kolumn.
Czy potrzebuję pliku schematu, aby korzystać z danych?
Nie. Dokumentacja firmy Microsoft stwierdza, że program Excel próbuje wywnioskować schemat na podstawie znaczników, gdy nie zostanie on dostarczony. Wywnioskowany schemat jest przechowywany wraz ze skoroszytem i nie można go wyeksportować jako oddzielnego pliku .xsd.
Co to jest XSLT?
Microsoft opisuje go jako standard transformacji zdefiniowany wraz z formatem danych. Wykorzystuje on pliki .xslt „do stosowania stylów i przekształcania danych XML do różnych formatów prezentacji”.