XML, XSD, GML jak się w tym wszystkim odnaleźć ? – część I

XML jest językiem, którego zasady zostały utworzone przez W3C (World Wide Web Consortium) konsorcjum, które ustanawia standardy sieciowe. Jego głównym zadaniem jest przechowywanie danych, w tym danych które posiadają hierarchię.

Model świata rzeczywistego, który chcemy opisać w XML.
Działka na której znajduje się budynek o numerze 56 i powierzchni 234.50, w którym to budynku znajdują się lokale: numer 1 o powierzchni 45.87 oraz lokal numer 2 o powierzchni 43.23. Na działce znajduje się również drzewo z gatunku wierzba które jest 34-letnie, oraz studnia betonowa o głębokości 15.

Plik XML – do pobrania tutaj:

widok pliku xml z działką
Plik XML zaczyna się od deklaracji pliku XML (kolor zielony).Deklaracja mówi komputerowi, że jest to plik XML. Encoding w deklaracji pliku służy ustawieniu odpowiedniego kodowania, aby mogły być poprawnie odczytywane np. polskie znaki.

Zawartość pliku składa się ze znaczników oraz wartości pomiędzy znacznikami. Znacznik kończy się za pomocą ukośnej kreski. Przykład: <powierzchnia>234.50</powierzchnia> – powierzchnia to znacznik, 234.50 to wartość znacznika.
Każdy plik XML musi posiadać znacznik główny, w którym mogą się mieścić znaczniki potomne – w tym przypadku jest to znacznik <dzialka>.

Znaczniki mogą mieć dowolną nazwę np. opisującą dane. Istnieje jednak kilka zasad nazewnictwa, które trzeba stosować:
– muszą zaczynać się od litery dużej lub małej, podkreślenia
– nie mogą zawierać białych znaków – czyli spacji, tabulatorów
– mogą składać się z liter, cyfr, podkreslenia, kresek
– nie powinno się w znacznikach stosować polskich znaków
– znacznik otwierający i zamykający powinien być identyczny włączając w to taką samą wielkość liter

Kolorem czerwonym zaznaczony jest atrybut budynku o id = 123. Jest to przykład alternatywnego przesłania danych za pomocą atrybutu, używany zazwyczaj do informacji jednostkowych charakteryzujących obiekt. Alternatywnie można użyć znacznika <id>123</id>.

Parsowanie struktury XML:
Jak najprościej sprawdzić wewnętrzną strukturę pliku XML czyli go sparsować ? Należy umieścić go w przeglądarce internetowej – jeśli zobaczycie treść pliku można założyć, że jest wewnętrznie poprawny, informacje o błędzie świadczą o tym że w podanej przez przeglądarkę linii pliku XML  jest coś nie tak.

No dobrze, ale jak sprawdzić czy wartości w pliku są poprawne – to znaczy czy powierzchnia to liczba, a gatunek drzewa to jeden z istniejących gatunków oraz czy cechy takie jak numer występują dla lokalu ?
Na przykład za pomocą schematów XSD. Ale o tym w następnym poście.

Ćwiczenie:
Opisz za pomocą XML pokój w którym siedzisz używając znaczników dla przynajmniej 3 przedmiotów się w nim znajdujących, z czego przynajmniej jeden powinien składać się z podelementów.

Zobacz także:

Część I – pliki XML

Część II – schematy XSD

Część III – walidacja XML

Część IV – BDOT500 i GML