<meta name="author" content="Jakub & Jan Filipowscy">
<meta name="description" content="Serwis webmasterow. Znajdziesz tu kilka kursow popularnych internetowych jezykow programowania takich jak: HTML, CSS, WML, SGML, XML, PHP, Perl i Java. Zamiescilismy tu rowniez wiele skryptow JavaScript, PHP i CGI. Przeczytac mozna kilka artykulow i sciagnac kilka szablonow. Dla poczatkujacych jest dzial BeginnerZone. ">
ZasadΩ tworzenia dokument≤w zgodnych z SGML mo┐emy prze╢ledziµ na przyk│adzie. Przypu╢µmy, ┐e chcieliby╢my oznaczyµ antologiΩ wierszy Juliana Tuwima "Poezje". Na wstΩpie musimy rozpoznaµ, z jakich czΩ╢ci sk│ada siΩ ww. antologia.
<H4>3.1. Analiza dokumentu</H4>
Na najwy┐szym poziomie znajduje siΩ sama antologia, kt≤ra stanowi zbi≤r wierszy. One z kolei sk│adaj▒ siΩ z tytu│u (opcjonalnego) oraz jednej lub kilku strof. Te natomiast to jeden lub kilka wers≤w.
<A NAME="utworzenie"><H4>3.2. Utworzenie DTD</H4></A>
Znaj▒c ju┐ czΩ╢ci sk│adowe antologii mo┐emy pokusiµ siΩ o napisanie dla niego Definicji Typu Dokumentu (DTD). Typem dokumentu jest antologia, wiΩc pocz▒tek DTD bΩdzie wygl▒da│ nastΩpuj▒co:
<P>
<PRE>
<!DOCTYPE antologia [
NastΩpnie musimy dokonaµ deklaracji element≤w,
kt≤re chcemy oznaczyµ w dokumencie zasadniczym
<!ELEMENT antologia - - (wiersz+)>
<!ELEMENT wiersz - - (tytu│?, strofa+)>
<!ELEMENT tytu│ - O (#PCDATA)>
<!ELEMENT strofa - O (wers+)>
<!ELEMENT wers O O (#PCDATA)>
]>
</PRE>
Na wstΩpie musimy dokonaµ deklaracji elementu antologia, do kt≤rego nie mo┐emy zastosowaµ regu│ minimalizacyjnych, gdy┐ zar≤wno znacznik otwieraj▒cy, jak i zamykaj▒cy musi byµ wstawiony odpowiednio na pocz▒tku i na ko±cu elementu. Model zawarto╢ci elementu antologia (wiersz+) stanowi jeden lub wiΩcej element≤w wiersz. Antologia musi wiΩc zawieraµ przynajmniej jeden wiersz. W stosunku do elementu wiersz r≤wnie┐ nie zastosowano regu│ minimalizacyjnych. Ka┐dy z wierszy sk│ada siΩ z jednego tytu│u lub te┐ tytu│u nie posiada (tytu│?). Po tytule nastΩpuje jedna lub wiΩcej strof. Kolejno╢µ tytu│ (1), strofa (2) musi zostaµ zachowana. W przypadku elementu tytu│ znacznik zamykaj▒cy mo┐e zostaµ opuszczony. Jego wyst▒pienie mo┐na wywnioskowaµ z pojawienia siΩ znacznika otwieraj▒cego elementu strofa. Wstawienie znacznika zamykaj▒cego elementu tytu│ nie jest wiΩc konieczne. Tytu│ nie mo┐e zawieraµ ┐adnych dodatkowych element≤w, tylko parsowalne dane znakowe (#PCDATA).
Element strofa mo┐e byµ r≤wnie┐ pozbawiony znacznika zamykaj▒cego. Jego wyst▒pienie zostanie wywnioskowane z wyst▒pienia znacznika otwieraj▒cego nastΩpnej strofy lub znacznika zamykaj▒cego elementu wiersz. Model jego zawarto╢ci stanowi jeden lub wiΩcej wers≤w.
<P>
Ostatnim elementem zadeklarowanym w DTD jest wers. Znacznik zamykaj▒cy tego elementu mo┐e zostaµ opuszczony. Jego wyst▒pienie zostanie wywnioskowane z wyst▒pienia znacznika otwieraj▒cego elementu wers lub znacznika otwieraj▒cego znacznika strofa. Ka┐dy wers, podobnie jak tytu│, mo┐e zawieraµ tylko parsowalne dane znakowe (#PCDATA).
<td width="770" valign="top" colspan="3" align="right"><br><br><span class="m">All rights reserved by <a href="mailto:web-area@web-area.org">J&J Filipowscy Design & Code</a></td>