Zapoznaj się z DTD ( dokument type definition) na stronie
W3schools
a) Napisz przykładowy
dokument xml ls.xml opisujący wynik działania komendy ls -l w katalogu
bieżącym. Następnie napisz jego wewnętrzne (znajdujące się w pliku xml) DTD.
Sprawdź zgodność pliku XML z jego DTD wpisując xmllint --valid ls.xml
Wskazówka: root powinien mieć nazwę pliki,
jednym z elementów powinien być plik, o atrybucie typ i wartości f
gdy chodzi o zwykły plik zaś o wartosci d gdy chodzi o katalog
pozostałe elementy dotyczą m.in. praw dostępu i wielkości pliku
b) Jak zmieni się DTD jeśli zażądamy aby atrybut nie miał białych znaków
w środku wartości atrybutu (wsk. zobacz typ NMTOKEN, porównaj z NMTOKENS),
a jak, gdy zażądamy aby każdy plik miał atrybut o unikalnej wartości (wsk. zobacz typ ID)?
Artykuł o białych znakach
a) Utwórz DTD dla dokumentu XML plik autorstwa mgr Madejskiego.
Pracownicy mają mieć atrybut typu IDREF dzial którego wartość jest równa numerowi
działu w którym pracują (skorzystaj z ID oraz IDREF definiując DTD)
Sprawdź jego poprawność z krótkim plikiem xml o treści zgodnej z opisem
ćwiczenia.
b) Sprawdź, że jeśli wprowadzisz inną wartość dział dla pracownika
niż zgodna z atrybutem numer działu, plik będzie niepoprawny (działanie IDREF)
Utwórz przykładowy dokument XML oraz jego DTD zgodnie z opisem
w ćwiczeniu "Zadanie do oddania: Zamówienie na książki, CD DVD"
dr Ł. Pankowskiego
Zadbaj o następujące kwestie:
1) atrybut nr elementu zamowienie powinien być wymagany (#REQUIRED)
2) atrybut kraj elementu kraj powninen być ustawiony 'na sztywno' jako POLSKA (#FIXED)
3) atrybut termin elementu adr_dost nie musi być wymagany (#IMPLIED)
4) liczba elementów artykul powinna być większa lub równa 0