• Nie Znaleziono Wyników

Technologie Internetu

N/A
N/A
Protected

Academic year: 2021

Share "Technologie Internetu"

Copied!
34
0
0

Pełen tekst

(1)

Technologie Internetu

wykład 7: XML - wprowadzenie Piotr Habela

Polsko-Japońska Wyższa Szkoła

Technik Komputerowych

(2)

W poprzednich wykładach…

• Koncepcja znaczników w dokumentach tekstowych poznana na przykładzie HTML;

• Konieczność bezpośredniej interpretacji przez przeglądarkę wymaga standaryzacji znaczników HTML => brak

rozszerzalności;

• Przemieszanie znaczników struktury i formatu wyświetlania stanowi słabość HTML, częściowo kompensowaną przez definicji stylów (CSS); nie wszędzie jednak są stosowane…

• HTML posiada dość swobodne reguły składniowe:

– Nie wymaga cudzysłowów wokół wartości atrybutów;

– Dopuszcza pomijanie tagów zamykających;

– Swoboda w zastosowaniu małych i wielkich liter;

… czyniące dokument trudniejszym w obróbce.

(3)

Plan wykładu

• Geneza XML – koncepcja i możliwości języka SGML;

• Powstanie języka HTML;

• Konsorcjum W3C: organizacja i inicjatywy;

• Składnia języka XML;

• Możliwości definiowania typów dokumentów dla XML;

(4)

Języki znaczników – motywacja i rozwój

• Pojęcie znacznika, jeszcze w tekstach nie elektronicznych wiązało się przede wszystkim ze sposobem wyróżnienia w tekście informacji o zadanej docelowej formie wydruku danego fragmentu

(np. naniesione ręcznie w maszynopisie znaki nakazujące zastosowanie dla danego fragmentu pochylonej czcionki).

• Bezpośrednią motywacją wprowadzenia języków

znaczników było umożliwienie formatowania treści w

postaci przetwarzalnej maszynowo: wsparcie w tworzeniu dużej skali publikacji elektronicznych.

• Pierwsze przedsięwzięcia: powstałe w latach 60-tych języki GML (IBM) oraz GenCode (GCA).

• Legły one u podstaw standardu ISO 8879:1986:

Standard Generalized Markup Language (SGML):

– Standard grupy: Information processing -- Text and office systems .

– Zatwierdzony standard międzynarodowy; 155 stron.

(5)

SGML - charakterystyka

• Język znaczników (markup language) – zbiór konwencji znaczników stosowanych do opisywania (kodowania) tekstu. Określa:

– znaczniki dozwolone i wymagane;

– zapewnia niezawodny sposób ich wyróżniania ze zwykłego tekstu;

– [definiuje znaczenie poszczególnych znaczników].

• SGML = standard opisu tekstu za pomocą znaczników.

Określany jako metajęzyk (?)

(wrócimy jeszcze do tego pojęcia).

• Charakter opisowy a nie proceduralny: w tekście umieszczone są znaczniki określające interpretację

poszczególnych elementów, a ew. elementy proceduralne,

opisujące wymagane czynności np. sformatowania tekstu,

(6)

Typ dokumentu

• SGML wprowadza pojęcie typu dokumentu, specyfikując DTD (Dynamic Type Definitions).

• Typ dokumentu jest formalnie zdefiniowany w terminach jego składowych i ich struktury.

• Dla znanych typów dokumentów (tj. dla których istnieją definicje typu), można sprawdzić zgodność dokumentu ze specyfikacją typu. Program dokonujący takiego

sprawdzenia nazywamy parserem.

• Znając typ dokumentu można w bardziej efektywny i

wyspecjalizowany sposób przetwarzać wszelkie dokumenty zgodne z tym typem. Jeśli wykonywane jest przetwarzanie dokumentu, to odpowiedni program nazywamy z kolei

procesorem.

(7)

Niezależność od platformy

• Celem zapewnienia niezależności, język zdefiniowano jako oparty na zwykłym tekście.

• Deklaracja dokumentu SGML zawiera oprócz definicji typu dokumentu specyfikację sposobu kodowania znaków.

• Dla znaków nieprzenośnych można zastosować reguły zastępowania łańcuchów (string substitution).

• Dokumenty ani definicje ich typów nie określają sposobu

wizualizacji. W tym celu stworzono specyfikację DSSSL

(Document Style Semantics and Specification Language).

(8)

Struktura dokumentu SGML

• Zawiera jednostki tekstowe zwane elementami (element).

• Poszczególne rodzaje elementów posiadają identyfikujące je nazwy, jednakże znaczenie może być nakreślone jedynie

jako współzależności z innymi elementami. Standard nie zajmuje się semantyką poszczególnych rodzajów

elementów.

• Nazwy elementów, określane poprzez Generic Identifier

(GI), powinny być znane oprogramowaniu i użytkownikom którzy przetwarzają stosujący je dokument.

• Tekst ze znacznikami = document instance, czyli wystąpienie dokumentu.

• Istnieją różne sposoby oznaczania elementów.

Najważniejszym z nich jest objęcie tekstu tagami

(znacznikami) otwierającym i zamykającym.

(9)

Definiowanie typów dokumentów SGML

• Notacja DTD (Document Type Definition) dla SGML pozwala określić następujące właściwości:

– określenie identyfikatora elementu, tj. nazwy;

– minimization rules, czyli obowiązkowość tagów otwierającego i zamykającego;

• Model zawartości – tj. jakie podelementy są dopuszczalne:

– Nazwy i liczności (? -> opcjonalna, * -> dowolna liczba powtórzeń, + -> jedno lub więcej);

– Możliwość kombinowania deklaracji (”,” -> sekwencja lub ”|” ->

jedna z wymienionych) oraz grupowania przy użyciu nawiasów.

Np.: <!ELEMENT refren - - (#PCDATA | line+)>

<!ELEMENT poemat - O (tytuł?,

( (wers+) | (refren?, (strofa, refren?)+ ) )) >

(10)

Zaawansowane możliwości

• Takie definicje pozwalają zdefiniować precyzyjną hierarchiczną strukturę dokumentu. Nie zawsze jest to wystarczające.

• Mogą istnieć elementy „pływające” (np. adnotacje), które

dopuszczalne są w różnych miejscach hierarchii. Ich wprowadzanie do definicji wszystkich elementów byłoby bardzo niewygodne. Stosuje się w tym celu dwa rodzaje „wyjątków” (exception). Definiuje się je na szczycie hierarchii, której dotyczą:

– inclusions – elementy, które mogą pojawić się w dowolnym miejscu;

– exclusions – elementy, które są w danym obszarze zabronione;

• Różne kryteria określania struktury dokumentu mogą współistnieć i nakładać się na siebie. Może to być struktura logiczna, typograficzna, językowa (np. formy zdań).

• Wzajemnie przeplatające się struktury można zdefiniować stosując tzw. współbieżne struktury dokumentów:

– tworzone są dwie deklaracje typów dokumentu;

– elementy występujące tylko w jednej strukturze są prefiksowane nazwą stosownej definicji typu;

(11)

Definicje atrybutów SGML

• Typ elementu jest definiowany przez dopuszczalną (i obowiązkową) jego zawartość (w postaci nazw

zagnieżdżanych podelementów).

• Drugim składnikiem definicji jest lista atrybutów właściwa danego typu elementowi. Specyfikacji podlega:

– Nazwa atrybutu;

– Typ wartości: identyfikator, referencja do identyfikatora, dane znakowe, wartość alfanumeryczna, wartość liczbowa albo

zdefiniowana wartość wyliczeniowa;

– Sposób określenia wartości: wymagana, opcjonalna, lub „jak poprzednio”.

(12)

Język czy metajęzyk?

• Pojęcie meta-poziomu oznacza zwykle definicję rozpatrywanego przez nas zbioru elementów, z którą ten ostatni jest związany relacją

„jest wystąpieniem”.

• Pojęcie dotyczy często danych i metadanych (schemat jest poziomem

„meta” w stosunku do danych gromadzonych w bazie) albo języków programowania (mechanizmu pozwalający kontrolować zachowanie rozpatrywanego przez nas poziomu; np. wołanie procedury).

Przykładem może być klasa, jako definicja narzucająca ograniczenie na strukturę jej obiektów oraz definiująca metody czy aktywne reguły dla tych obiektów. Zob. też – metamodel w UML.

• Pojęcie metajęzyka sugerowałoby zatem, że SGML oraz XML są językami służącymi definiowanie innych języków. Termin zatem

pasowałby raczej do DTD. Stąd określanie bez bliższego komentarza SGML oraz XML „metajęzykami” może być nieco mylące…

(13)

Związki HTML z SGML

• Z punktu widzenia założeń, jakie legły u podstaw koncepcji WWW, SGML uznano za zdecydowanie zbyt

skomplikowany.

• Powstały język HTML pozostał jednak silnie związany ze swym protoplastą:

– HTML stanowi istotnie okrojony podzbiór SGML;

– Składnia HTML zdefiniowana jest przy użyciu środków

definiowania struktury dokumentów SGML (istnieje definicja HTML w postaci DTD);

– Ponadto pierwotna postać HTML konsekwentnie pozostawała przy idei oznaczania jedynie struktury dokumentu, nie zaś sposobu jego wizualizacji.

• Zaistniały burzliwy rozwój Webu zmusił do

zweryfikowania tych założeń…

(14)

World Wide Web Consortium (W3C)

• Powstałe w 1994 roku (zał.: Tim Berners-Lee w

Massachusetts Institute of Technology, Laboratory for Computer Science [MIT/LCS] we współpracy z CERN, oraz DARPA i Komisją Europejską).

• Zakres działalności: rozwiązania wspierające organizację dostępu do zasobów Internetu.

• Zrzesza około 450 organizacji. Finansowane głownie przez członków, w mniejszej części ze środków publicznych.

• Specyfikacje W3C noszą nazwę rekomendacji (recommendations) i są publicznie dostępne.

• Główne zasady projektowe dla technologii Webu:

– współdziałanie (interoperability);

– zapewnienie możliwości ewolucji: modularność, prostota, rozszerzalność;

– decentralizacja (brak uzależnienia od scentralizowanego zasobu);

(15)

Działalność W3C

• W oparciu o opinie członków ustanawiane mogą być nowe obszary działań (activity). Są one sklasyfikowane pomiędzy 4 dziedzinami:

– Architektoniczna (technologie Webu);

– Interakcji (doskonalenie sposobów korzystania użytkownika z zasobów Webu - interfejsy);

– Technologia i Społeczeństwo;

– Dostępności (Web Accessibility Initiative) – poprawa dostępności Webu dla osób niepełnosprawnych;

• Niezależnie od tego podziału funkcjonują działania (activities):

Zapewnienia Jakości(QA) oraz Polityki Pantentów (Patent Policy).

• Zasady działania:

– neutralność względem producentów;

– koordynacja rozwiązań z innymi instutucjami (IETF, Unicode Consortium itp.)

– konsensus: dążenie do jednomyślności w przyjmowaniu rozwiązań;

(16)

Cykl życiowy specyfikacji W3C

Working Draft: Praca w toku; publikację WD zatwierdza kierownictwo konsorcjum, ale zawartość może być dopiero podstawą dla dalszych

dyskusji, tj. fakt opublikowania nie oznacza pełnej zgody co do treści ani stabilności rozwiązania.

Last Call Working Draft: Specyfikacja spełnia wszystkie

sformułowane wymogi, albo ewentualnie dokumentuje niezrealizowane zagadnienia. Formalnie odnosi się do wszystkich zgłoszonych wcześniej uwag i problemów. Stanowi publiczny raport techniczny, mogący być podstawą dalszych konsultacji.

Candidate Recommendation: Ustalone współzależności z innymi

specyfikacjami. Oczekiwanie na doświadczenia implementacyjne spoza grupy roboczej.

Proposed Recommendation: Istnieją doświadczenia z implementacją specyfikacji. Jest przedmiotem przeglądu przez komitet doradczy.

W3C Recommendation: Postać finalna. Raport techniczny spełniający wymagania, będący wynikiem uzgodnień. Uznany za nadający się do szerokiego zastosowania i realizujący misję W3C.

(17)

W3C: Koncepcja rozwoju standardów Webu

Źródło: www.w3c.org

(18)

Prace nad technologią XML w W3C

Prace na XML są realizowane przez 6 grup roboczych W3C:

1. XML Coordination Group: Koordynacja pomiędzy grupami

zajmującymi się XML oraz współdziałanie z innymi grupami. Nie tworzy własnych specyfikacji.

2. XML Core Working Group: Specyfikacja XML oraz najbliżej z

samym językiem związane: Namespaces, XML Information Set, oraz XInclude.

3. XSL Working Group: Definicje stylów i transformacje obiektów.

4. XML Linking Working Group: Łącza hipertekstowe dla XML.

Obecnie nie jest aktywna.

5. XML Query Working Group: Język zapytań dla XML.

6. XML Schema Working Group: Definicje i opis struktury, zawartości oraz w pewnym zakresie również semantyki dokumentów XML.

(19)

XML – założenia projektowe

• Cel: Stworzenie generycznego podzbioru SGML dostosowanego do udostępniania, odczytywania i

przetwarzania w środowisku Webu w sposób analogiczny jak w przypadku HTML.

• Założenia projektowe:

– Użyteczny bezpośrednio w Internecie.

– Uniwersalny wobec dziedzin zastosowań.

– Zgodny SGML.

– Zapewnienie wsparcia dla tworzenia programów przetwarzających dokumenty XML.

– Minimalizacja elementów opcjonalnych w specyfikacji.

– Klarowność i czytelność dla człowieka.

– Konieczność szybkiego zaprojektowania języka.

– Formalny i spójny styl projektu.

– Łatwość tworzenia dokumentów XML.

(20)

XML - charakterystyka

• Język tekstowy;

• Rozszerzalny: zestaw znaczników nie stanowi zamkniętej listy;

• Elastyczna struktura;

• Niezależność od platformy;

• Możliwość definiowania reguł poprawności dla struktury dokumentu (definicja typu dokumentu);

• Stosunkowo rygorystyczna składnia;

• Opisuje klasę obiektów danych, zwaną dokumentami XML;

• Częściowo określa zachowanie programów, które je przetwarzają;

• Zgodny z SGML: określany jako profil zastosowań SGML

albo ograniczony SGML.

(21)

Dokument XML

• Struktura fizyczna: złożenie jednostek zwanych encjami (?) (XML entities):

– Parsowalne: dane znakowe oraz znaczniki. Encje parsowalne zawierają tekst, czyli sekwencje znaków. Pojęcie znaku jest traktowane zgodnie ze standardem ISO/IEC 10646 (Universal Multiple-Octet Coded Character Set (UCS)). Za poprawne znaki są uznawane: tab, carriage return, line feed oraz wszystkie znaki Unicode i ISO/IEC 10646;

– Nieparsowalne.

• Struktura logiczna:

– Strukturę dokumentu wyznaczają znaczniki.

• Oprogramowanie pracujące z XML:

– Procesor XML – odczytuje i udostępnia strukturę i treść dokumentu.

(22)

Zawartość dokumentu XML

• Elementy:

– wyznaczane za pomocą znaczników;

– ograniczenia na nazwę – może zawierać większość

znaków, choć nie może zaczynać się od cyfry, myślnika ani kropki; dopuszczalne na początku są podkreślenia i dwukropki;

– dla nazw elementów rozróżnialna jest wielkość liter;

– element niepusty składa się obowiązkowo ze znacznika otwierającego i zamykającego:

<osoba>Jan Kowalski</osoba>

– element pusty może składać się z jednego tylko znacznika, zakończonego znakiem „/”:

<usunietyWpis />

(23)

Atrybuty XML

• Przybierają postać

nazwAtrybutu =”wartość atrybutu”

• Podobne ograniczenia na nazwę, jak w wypadku nazw elementów;

• Wartość może być typu: string, wyliczeniowego, nazwy, identyfikatora, nazwy encji, referencji do identyfikatora…

• Zawarte w znaczniku otwierającym (albo w znaczniku elementu pustego);

• Znacznik może zawierać tylko jeden atrybut o danej nazwie;

• Rozróżniana jest wielkość liter;

• Kolejność atrybutów nie jest wymagana standardem, choć zaleca się jej konsekwentne utrzymanie;

• Np. <opisZadania autor = ”Jan Kochanowski”

autor=”Anonim”> Tutaj zawartość </opisZadania>

(24)

XML – znaki specjalne

• Jak można wywnioskować z omówionej składni, znaki „<”,

„>” oraz cudzysłów, jak również apostrof – są traktowane specjalnie.

• Chcąc użyć ich jako zwykłych znaków w miejscach, gdzie byłoby to niejednoznaczne, należy użyć predefiniowanych symboli zastępczych: &gt;, &lt; oraz &quot; i &apos;.

• Te dwa ostatnie mogą być potrzebne w wartościach atrybutów, jednakże można ich uniknąć stosując jako ograniczniki wartości tekstowej symbole apostrofu i cudzysłowu zamiennie (tak, jak się to czyni np. w JavaScript).

• Symbole zastępcze rozwiązują problem, choć oczywiście mogą być niewygodne, np. przy formułowaniu w

dokumentach XML warunków, jak to ma miejsce np. w

językach zapytań.

(25)

Zawartość elementów XML

• Wyróżniamy:

– elementy puste (pojedynczy znacznik zakończony „/”);

– elementy zawierające tylko tekst;

– elementy złożone, tj. posiadające podelementy;

– elementy o zawartości mieszanej (tj. zarówno tekst jak i podelementy – mogą być na rożne sposoby przeplecione);

• Kolejność zawieranych podelementów jest istotna dla

właściwej interpretacji dokumentu; jest określona definicją typu dokumentu;

• Elementy złożone (i mieszane) muszą być poprawnie zagnieżdżone. W efekcie prawidłowy dokument XML posiada strukturę hierarchiczną.

• => Reguły składniowe znane z HTML. XML odróżnia się

jednak bardziej zdyscyplinowaną składnią.

(26)

Deklaracja XML

• Pierwszy składnik tzw. prologu dokumentu.

• Określa sposób interpretacji dokumentu.

• Specyfikuje:

– wersję użytego języka: parametr version;

– rodzaj kodowania znaków: parametr encoding (np. unicode, ISO, windows);

– określenie, czy dokument jest samodzielny: parametr standalone.

• Np. <?xml version=”1.0” encoding=”UTF-8”

standalone=”yes” ?>

(27)

Poprawność formy i poprawność strukturalna

• Dokument poprawny składniowo (well-formed):

– Zgodny z definicją produkcji „document” (tj. m.in. zawiera deklarację XML);

– Element główny („korzeń”) występuje raz w każdym z

dokumentów i nie jest zawarty w żadnym innym elemencie.

Pozostałe elementy muszą być poprawnie zagnieżdżone. W

oparciu o takie zagnieżdżenie mówi się o relacji rodzic-dziecko.

– Spełnienie wszystkich ograniczeń poprawnościowych ujętych w specyfikacji;

– Wszystkie parsowalne encje do których odwołuje się dokument spełniają warunek poprawności;

• Dokument poprawny strukturalnie (valid): zgodność z

definicją typu dokumentu (DTD).

(28)

Przetwarzanie dokumentu XML

• Poprawność składniowa jest warunkiem koniecznym dla dopuszczenia dalszego przetwarzania dokumentu XML przez oprogramowanie.

• Przykłady przetwarzania:

– wyświetlanie;

– przekształcenie w dokument HTML zbudowany według określonego stylu;

– wygenerowanie nowego dokumentu XML;

– zasilenie bazy danych danymi z dokumentu.

(29)

Deklaracje

• W przeciwieństwie do elementów, nie są bezpośrednio przetwarzane.

• Umieszczane w symbolach: <! … >

• Deklaracje podstawowe, obecne w zwykłych dokumentach XML to:

– komentarze: <!-- … -->

– sekcje danych znakowych: wyznaczają obszar, w którym można swobodnie używać znaków zastrzeżonych:

<![CDATA[Tutaj może się znaleźć dość dowolny tekst]]>

• O wiele szersze wykorzystanie deklaracji ma miejsce w

wypadku definicji DTD;

(30)

Instrukcje przetwarzania XML

• Instrukcje przetwarzania = Processing Instructions – PI;

• umieszczane pomiędzy znakami: <? … ?>

• Określają cel (PI Target) oraz instrukcję, która ma być wykonana.

• Cel jest słowem kluczowym (umieszczanym bezpośrednio po otwarciu znacznika), które identyfikuje aplikację mającą dokonać przetwarzania.

• Preferowany styl oznaczania kodu PHP tworzy właśnie instrukcję przetwarzania zgodną z notacją XML:

<?php tutaj kod PHP… ?>

• Niektóre instrukcje przetwarzania (np. związane ze

stosowaniem stylów) są określone standardem.

(31)

Encje XML (XML Entities)

• Jednostka fizycznego podziału dokumentu (umożliwia integrację treści z różnych plików);

• Posiada nazwę, która ją identyfikuje;

• Deklarowana słowem kluczowym ENTITY;

• Deklaracje jednostek występują w definicji typu dokumentu (DTD);

• Zastosowania:

– integrowanie zawartości różnych plików;

– substytucja tekstu (np. aby można było w jednym tylko miejscu wpisać często powtarzający się w dokumencie tekst);

– wyodrębnienie danych, które mają nie być przetwarzane przez XML;

(32)

Rodzaje encji XML

• Najprostsze warianty:

– Ogólna encja wewnętrzna (general internal entity). Zawiera wyłącznie tekst i służy przetwarzaniu tekstu;

np. <!ENTITY skrot ”Pełne rozwinięcie skrótu”>

– Ogólna encja zewnętrzna (general external entity); W tym wypadku deklaracja typu dokumentu definiuje encję jako odnośnik: <!ENTITY naszaEncja SYSTEM

”http://xyz.com/plik_naszej_encji.xml”>

– Encja predefiniowana. Jak sama nazwa wskazuje, nie wymaga definiowana; jest określona standardem. Zdefiniowano w ten sposób ww. symbole zastrzeżone, których użycie bezpośrednie zakłóciłoby składnię dokumentu: &lt, &gt, &amp, &apos, &quot.

Uwaga! Nie jest dozwolone podstawienie jako wartości atrybutu tekstu skutkującego umieszczeniem znaków „<” lub „>”, ani

umieszczenie w wartości atrybutu referencji do encji zewnętrznej.

• W treści dokumentu mogą wystąpić odwołania do danej

encji w postaci: &nazwaEncji;

(niezbędne jest zakończenie średnikiem)

(33)

Document Type Definitions (DTD)

• Definicje Typu Dokumentu stanowią cechę szczególną XML a zarazem integralną część specyfikacji języka.

• Definicja typu pozwala sprawdzić strukturalną poprawność dokumentu. Można je postrzegać jako język opisu

dokumentu.

• Definicje typu mogą występować w pliku dokumentu, lub w plikach zewnętrznych.

• W przeciwieństwie do SGML, obecność definicji typu nie

jest obowiązkowa.

(34)

XML a przetwarzanie danych

• Dzięki swej niezależności od platformy i rozszerzalności, XML stał się użyteczny we współpracy z technologiami baz danych.

• W tym wypadku nieistotna staje się czytelność pliku,

natomiast trzeba się zmierzyć z problemami np. różnic w kodowaniu znaków.

• Osobliwe możliwości daje struktura dokumentu:

właściwości danego obiektu mogą wystąpić w elemencie jako:

– Zawartość tekstowa;

– Podelementy;

– Atrybuty;

• Podstawowy dokument XML ma strukturę hierarchiczną, co może być kłopotliwe z punktu widzenia modelowania

danych. Skuteczne rozwiązanie mechanizmu referencji

pomiędzy elementami ma tu duże znaczenie.

Cytaty

Powiązane dokumenty

• Obydwa atrybuty należy zadeklarować w definicji typu elementu (możliwe, że jako stałe lub z wartością domyślną), którego będą

• Deklaracje elementów mogą występować globalnie, w ramach definicji typu złożonego albo w ramach definicji innego elementu.. • Definicje typów mogą wystąpić globalnie

element posiada atrybut typu ID, to można się doń odwołać poprzez wartość tego identyfikatora: xpointer(id(”a1234”)) albo z zewnątrz, następująco konstruując

– Umożliwia : tworzenie elementu, atrybutu, węzła tekstowego, komentarza, sekcji znakowej, instrukcji przetwarzania, referencji do encji zewnętrznej ; tworzenie fragmentu

– atrybuty danego bloku nagłówkowego określają, czy może oraz czy musi być przetworzony przez dany węzeł. – W wypadku przetworzenia bloku, jest on usuwany przed dalszym

• Przykładem formatowania może być przetwarzanie dokumentu przy wyświetlaniu przez przeglądarkę... Tworzenie i wykorzystanie dokumentu

• Typy danych używanych w opisywanych przez dokument WSDL interfejsach mogą być zdefiniowane w dowolnym systemie typów, choć domyślnie stosuje się właśnie XML Schema..

• Wyróżnikiem technologii metadanych jest to, że uwzględniają one w sposób jawny dwa meta-poziomy (metadanych i danych albo meta- metadanych i metadanych). • Służący wymianie