- update, bardziej współczesne, web-oriented
Pliki niezbędne do wykonania ćwiczeń znajdują się w archiwum: lab-xml.zip
Proszę stworzyc aplikację XML opisującą bibliotekę według poniższego opisu
(przykład podobnej aplikacji przechowującej informacje o kolekcji płyt cd można znaleźć w pliku cdcat-4.xml
):
Należy samemu podjąć decyzję co do wyboru nazw znaczników.
Proszę utworzyć przykładowe dane (dla minimum 3 książek i 4 czasopism) i umieścić w pliku biblio-4.xml
Proszę oglądnąć plik XML w Firefoxie i zwrócić uwagę jak wizualizowane są elementy.
Proszę dodać atrybuty udostępniające następujące informacje:
Przykładowe dane z w/w atrybutami prosze umieścic w pliku biblio-5.xml
Przykład opisujący kolekcję płyt dostępny jest w pliku cdcat-5.xml
Proszę oglądnąć strukturę przykłądowego dokumentu cdcat-5.xml
(korzystając z narzędzia XMLStarlet):
xmlstarlet el -v cdcat-5.xml
Proszę sprawdzić 'dobre sformułowanie' dokumentu:
xmlstarlet val -w -e cdcat-5.xml
Proszę powtórzyć powyższe ćwiczenie dla pliku biblio-4.xml
oraz biblio-5.xml
, usuwając ewentulalne błędy w dokumentach.
Proszę sprawdzić poprawność przykłądowych dokumentów:
xmlstarlet val -e -d cdcat-9.dtd cdcat-9.xml xmlstarlet val -e -d cdcat-9.dtd cdcat-9-e1.xml xmlstarlet val -e -d cdcat-9.dtd cdcat-9-e2.xml
Czy w dokumentach pojawiają się jakieś niezgodności? Czy są one związane z dobrym sformułowaniem, czy z poprawnością gramatyczną?
Proszę stworzyć opis gramatyczny dokumentu biblio-5.xml
w osobnym plku: biblio-5.dtd
.
Opis struktury DTD był przedstawiony na wykładzie, można też skorzystać z podręczników takich jak: http://www.w3schools.com/dtd http://www.rpbourret.com/xml/xmldtd.htm
Proszę skopiować zawartośc pliku biblio-5.xml
do biblio-11.xml
,
następnie należy dodać deklarację użycia arkusza stylów CSS, który ma znajdować się w pliku biblio-11.css
.
Proszę utworzyć plik biblio-11.css
zawierający odpowiednie dyrektywy CSS umożlwiające wizualizację danych bibliotecznych.
Po utworzeniu arkusza CSS należy sprawdzić jego poprawność przy pomocy walidatora CSS W3C.
Przykład CSS dla kolekcji płyt znajduje się w plikach: cdcat-11.xml
, cdcat-11.css
Proszę oglądnąć plik biblio-11.xml
w Firefoxie, w związku dostępnością stylu powinna być przeprowadzona wizualizacja.
Niniejszy przykład obrazuje prostą transformację pliku XML do formatu tekstowego.
Proszę zwrócić uwagę na element xsl:output
.
Przykład dla kolekcji płyt dostępny jest w plikach: cdcat-10-1.xml
, cdcat-10-1.xsl
Transformację najprościej przeprowadzić przy pomocy pakietu Sablotron, albo xsltproc:
sabcmd cdcat-10-1.xsl cdcat-10-1.xml > cdcat-10-1.txt xsltproc cdcat-10-1.xsl cdcat-10-1.xml > cdcat-10-1.txt
Można sprawdzić, że plik XSL jest poprawnym plikiem XML:
xmlstarlet val cdcat-10-1.xsl
Jak zostanie zwizualizowany plik cdcat-10-1.xml w Firefoksie?
Proszę zwrócić uwagę na element <?xml-stylesheet …>
Zadanie dodatkowe (dla zainteresowanych): Proszę napisać podobną transformację dla biblioteki tworząc plik biblio-10-1.xml
oraz biblio-10-1.xsl
Poniższy przykład obrazuje prostą transformację pliku XML do formatu XHTML, co pozwala (w tym przypadku na wizualizację przy pomocy tabeli).
Przykład dla kolekcji płyt dostępny jest w plikach: cdcat-10-2.xml
, cdcat-10-2.xsl
Transformację najprościej przeprowadzić przy pomocy pakietu Sablotron albo xsltproc, na poziomie plików:
sabcmd cdcat-10-2.xsl cdcat-10-2.xml > cdcat-10-2.html xsltproc cdcat-10-2.xsl cdcat-10-2.xml > cdcat-10-2.html
Jaki zostanie zwizualizowany plik cdcat-10-2.xml w Firefoksie? Prosze zobaczyć źródło strony.
Zadanie dodatkowe (dla zainteresowanych): Proszę przeprowadzić podobną transformację dla biblioteki.