close

Schemat XML

Przejdź do nawigacji Przejdź do wyszukiwania

XSD (XML Schema Definition) to język schematu używany do opisu struktury i ograniczeń treści dokumentów XML w bardzo precyzyjny sposób, wykraczający poza reguły składniowe narzucone przez sam język XML . W ten sposób uzyskuje się percepcję typu dokumentu na wysokim poziomie abstrakcji. Został opracowany przez World Wide Web Consortium (W3C) i osiągnął poziom rekomendacji w maju 2001 roku.

Terminologia

Termin „Schemat XML” jest używany w różnych znaczeniach w tym samym kontekście opisu dokumentu i należy wziąć pod uwagę następujące kwestie:

  1. „Schemat XML” to oficjalna nazwa nadana rekomendacji W3C, która stworzyła pierwszy język schematów oddzielony od XML (definicja typu dokumentu ( DTD ) jest częścią XML).
  2. Powszechnie nazywa się schematy ogólnie „schematem XML”, ale zaleca się używanie terminu „ dokument schematu ” lub „ definicja schematu ” i zarezerwowanie „Schematu XML” dla nazewnictwa tego konkretnego języka.
  3. Chociaż „schematy XML” są używane ogólnie, XSDL ( XML Schema Definition Language ) to techniczna nazwa języków schematów XML, takich jak:
  • Definicja typu dokumentu (DTD)
  • Schemat XML
  • RELAKS NG
  • Schematron
  • Język routingu przestrzeni nazw (NRL)
  • Języki definicji schematu dokumentów (DSDL)
  • Język znaczników definicji dokumentu (DDML)
  • Opis struktury dokumentu (DSD)
  • SGML
  • Schemat dla XML zorientowanego obiektowo (SOX)

XML schematu W3C

Konsorcjum World Wide Web (W3C) rozpoczęło prace nad schematem XML w 1998 roku. Pierwsza wersja stała się oficjalną rekomendacją w maju 2001 roku. Poprawione drugie wydanie jest dostępne od października 2004 roku.

To zalecenie składa się z trzech części:

  • XML Schema Part 0 Primer - jest nienormatywnym wprowadzeniem do języka, dostarczającym wielu przykładów i szczegółowych wyjaśnień pierwszego podejścia do XML Schema.
  • XML Schema Part 1 Structures : to obszerny opis komponentów języka.
  • XML Schema Part 2 Datatypes Uzupełnia część 1 o definicję wbudowanych typów danych XML Schema i ich ograniczeń.

(patrz Linki zewnętrzne )

Komponenty

XML Schema to język schematów napisany w XML , oparty na gramatyce i mający na celu zapewnienie większej mocy wyrazu niż DTD , które są mniej zdolne do opisywania dokumentów na poziomie formalnym.

Dokumenty schematu (zwykle z rozszerzeniem XML Schema Definition (XSD) .xsd) zostały pomyślane jako alternatywa dla bardziej złożonych DTD, próbując przezwyciężyć ich słabości i szukać nowych możliwości podczas definiowania struktur dokumentów XML. Głównym wkładem XML Schema jest duża liczba typów danych , które zawiera. W ten sposób XML Schema zwiększa możliwości i funkcjonalności aplikacji przetwarzających dane, w tym złożone typy danych, takie jak daty, liczby i ciągi.

Typy komponentów

Schematy XML Schema przezwyciężają wiele ograniczeń i słabości DTD. Został zaprojektowany całkowicie wokół przestrzeni nazw i obsługuje typowe typy danych języka programowania , a także proste i złożone typy niestandardowe. Schemat jest definiowany z myślą o jego końcowym zastosowaniu.

Przestrzenie nazw

Programowanie schematów XML opiera się na przestrzeniach nazw lub przestrzeniach nazw , między którymi możemy znaleźć analogię do tzw. pakietów w Javie . Każda przestrzeń nazw zawiera elementy i atrybuty, które są ściśle związane z przestrzenią nazw. Dlatego podczas definiowania elementu lub atrybutu przestrzeni nazw zawsze zostanie utworzone połączenie między jego różnymi polami. Ponadto ten sposób pracy pozwala nam powiązać elementy, które nie znajdują się w tej samej przestrzeni nazw.

Po napisaniu schematu XML możesz potwierdzić jego poprawność za pomocą walidacji schematu XML: walidacja XML .5623

Przykład

Przykładowa struktura pustego dokumentu schematu byłaby następująca:

 <?xml version="1.0" kodowanie="ISO-8859-1"?> 
 <xsd:schema  xmlns:xsd= "http://www.w3.org/2001/XMLSchema"  version= "0.1"  xml:lang = "jest" > 
 </xsd:schema>

Przykład definicji z XML Schema byłby następujący:

<?xml version="1.0" kodowanie="UTF-8"?>  
<xsd:schema  xmlns:xsd= "http://www.w3.org/2001/XMLSchema" > 
     <xsd:element  name= "Książka" > 
         <xsd:complexType> 
            <xsd:sequence> 
                 <xsd:element  name= "Tytuł"  type= "xsd:string" /> 
                 <xsd:element  name= "Autorzy"  type= "xsd:string"  maxOccurs= "10" /> 
                 <xsd:element  name= "Wydawca"  type= "xsd:string" /> 
            </xsd:sequence> 
            <xsd:attribute  name= "cena"  type= "xsd:double" /> 
        </xsd:complexType> 
   </xsd:element> 
</xsd:schema>

Możemy zobaczyć, jak w obu przypadkach rozpoczynają się deklaracje wskazujące wersję XML , która ma być użyta, i używane kodowanie . Te dwa pola są niezbędne do interpretacji schematu.

Poniższy wiersz kodu deklaruje element schematu , katalog główny dokumentu definicji schematu. Dodatkowo deklarowana jest przestrzeń nazw , w której deklarowane są nazwy elementów dokumentu live . Ta definicja schematu nakazuje, że każdy zgodny z nią dokument XML musi mieć element główny o nazwie „Książka”, który będzie miał trzy elementy podrzędne (elementy zagnieżdżone) i jeden atrybut. Dzieci to „Tytuł”, „Wydawca”, który musi pojawić się raz i „Autorzy”, który może pojawić się od jednego do dziesięciu razy. Fakt, że są pogrupowane w kolejności, wskazuje, że elementy muszą pojawiać się w kolejności, czyli najpierw „Tytuł”, potem „Autorzy”, a na końcu „Wydawca”. Wszystkie trzy elementy są typu string . Atrybut książki nosi nazwę „cena” i jest typu double .

Zobacz także

Poradniki

Linki zewnętrzne