Protokoły komunikacyjne

Protokół jest zbiorem reguł normujących transmisję danych oraz formaty przesyłanych komunikatów. W celu wymiany danych, komputery podłączone do sieci muszą korzystać z protokołów komunikacyjnych. Przesył danych w sieci od bywa się w formie komunikatów zdefiniowanych przez protokół komunikacyjny. Opisuje on również sposoby postępowania z komunikatami zarówno w wypadku wystąpienia błędu, jak również wtedy, kiedy transmisja przebiega poprawnie. Wszystkie programy korzystające z Internetu współpracują z odpowiednimi protokołami.

SGML jest międzynarodowym standardem (ISO 8879:1986) definiującym metody reprezentacji tekstu w postaci elektronicznej, niezależnej od platformy sprzętowej i systemu operacyjnego.

Za twórców języka SGML uważa się Charlesa Goldfarba, Edwarda Moshera oraz Raymonda Loriego, którzy w 1969 roku opracowali dla IBM-u język GML (Generalized Markup Language – również akronim nazwisk twórców). GML był rezultatem projektu zintegrowanego systemu informacyjnego dla kancelarii prawniczych i pozwalał na edytowanie, formatowanie oraz przeszukiwanie danych tekstowych. Autorzy projektu w znacznej mierze opierali się na wcześniejszych propozycjach Tunnicliffe’a i Rice’a. W wyniku kontynuowania prac przez Goldfarba nad rozwojem GML, w 1980r. powstała pierwsza robocza wersja standardu SGML, a w 1986r. ukazała się międzynarodowa wersja robocza i przyjęto SGML, jako standard międzynarodowy.

SGML jest metajęzykiem, który określa zasady tworzenia języków opisujących klasy dokumentów. Takim językiem, opracowanym na bazie SGML, jest popularny w Internecie HTML (HyperText Markup Language). SGML pozwala na oznaczanie tekstu w sposób ogólny (ang. generic markup), zwany również oznaczaniem opisowym (ang. descriptive markup). Umieszczone w tekście znaczniki niosą informację znaczeniową i w przeciwieństwie do oznaczania proceduralnego (ang. procedural markup), nie informują systemu o wyglądzie dokumentu, rodzaju użytych czcionek, rozmieszczeniu elementów tekstu na stronie. SGML opisuje nie tylko zawartość dokumentu (tekst, zdjęcia, animacje), lecz również jego strukturę logiczną (słowo, akapit, rozdział, sekcja). Pozwala także na tworzenie dokumentów składających się z wielu plików, zachowując jego integralność. Obiektem opisującym tekst są znaczniki. Na początku i na końcu każdego z nich znajdują się znaki (ograniczniki), które pozwalają na wyraźne oddzielenie obiektów opisujących tekst od zasadniczej treści dokumentu.

Dokument zgodny z SGML składa się z dwóch podstawowych części:

  • prolog SGML (ang. SGML prolog),
  • dokument zasadniczy (ang. document instance).

Prolog zawiera deklarację SGML (ang. SGML declaration) oraz definicję typu dokumentu (ang. Document Type Definition – DTD). Dokument zasadniczy zawiera tekst, który jest oznaczony zgodnie z DTD umieszczonym w prologu.

Deklaracja SGML zawiera podstawowe dane o strukturze leksykalnej używanej w DTD oraz w dokumencie zasadniczym. Definiuje m.in. dozwolony zestaw znaków, maksymalną liczbę znaków w nazwach (elementów, atrybutów lub encji), maksymalną liczbę zadeklarowanych elementów w DTD, dozwolone ograniczniki (ang. delimiters). Definiuje również wykorzystanie cech dopuszczanych przez SGML, takich jak opuszczanie znaczników (OMITTAG) oraz skracanie znaczników (SHORTTAG). W wielu przypadkach deklaracja SGML może zostać opuszczona. Oznaczać to będzie, że do DTD oraz dokumentu zasadniczego zastosowane zostaną reguły zdefiniowane w Reference Concrete Syntax, dostarczane przez większość systemów SGML. Jeżeli jednak będziemy chcieli dokonać jakichkolwiek zmian (nowy zestaw znaków, polskie znaki diakrytyczne w nazwach, rozróżnianie małych i dużych liter w nazwach), wówczas deklaracja SGML musi pojawić się w całości. Przykładowa deklaracja SGML przedstawia się następująco:

Rysunek 10 Deklaracja SGML

  1. Opisowy nagłówek
  2. Zestaw znaków
  3. Zestaw pojemności
  4. Zakres Składni Konkretnej (ang. Concrete Syntax Scope).
  5. Składnia Konkretna (ang. Concrete Syntax).
  6. Użycie dodatkowych cech (ang. Features Use).
  7. Informacje dla aplikacji (ang. Application-Specific Information).

Definicja Typu Dokumentu (Document Type Definition; DTD) jest jednym z podstawowych pojęć związanych z SGML-em. DTD jest to sformalizowany opis struktury dokumentów pewnego typu, zawierający spis ich elementów składowych oraz hierarchię elementów właściwą dla danego typu dokumentu. Można powiedzieć, że dopiero DTD jest definicją języka (czy formatu) do opisywania struktury danej klasy dokumentów.

Do oznaczania elementów w dokumentach służą znaczniki (tags). Każdemu elementowi przypisany jest znacznik otwierający (nazwa) i znacznik zamykający (/nazwa). Oprócz definicji elementów i znaczników z nimi związanych DTD zawiera także reguły ich używania: np. czy możliwe jest opuszczenie znacznika zamykającego lub otwierającego dany element, jeśli z kontekstu możliwe jest wywnioskowanie faktu jego istnienia.

DTD tworzy się zgodnie z prostą składnią zdefiniowaną w standardzie. Jest to zbiór deklaracji, który rozpoczyna się deklaracj ą typu dokumentu DOCTYPE.

DTD może być również przedstawione w postaci systemowego lub publicznego identyfikatora (ang. system, public identifier). Identyfikator jest częścią deklaracji DOCTYPE i pozwala zlokalizować zasoby systemowi SGML przetwarzającemu dokumenty.

Identyfikator systemowy (ang. system identifier) odsyła do źródła w lokalnych zasobach:

<!DOCTYPE book SYSTEM ”book.dtd”>

<!DOCTYPE manual SYSTEM ”C:\sgml\dtd\manual.dtd”>

Identyfikator publiczny (ang. public identifier) jest najczęściej przedstawiany w postaci sformalizowanej jako formalny publiczny identyfikator (ang. formal public identifier). W tym przypadku tworzymy odsyłacz do tekstu publicznego (ang. public text). Tekstem publicznym może być DTD, jego fragment, zbiór encji, zestaw znaków, a nawet cały dokument SGML udostępniany do powszechnego użycia.

Formalny publiczny identyfikator składa się z dwóch zasadniczych części:

identyfikatora właściciela (ang. owner identifier),

identyfikatora tekstu (ang. text identifier).

Przykłady DTD z formalnym publicznym identyfikatorem:

<!DOCTYPE book PUBLIC ”-//USA/AAP//DTD BK-1//EN”>

<!DOCTYPE sd PUBLIC ”+//British Library//DTD Starter Document//EN”>

Znaki – oraz + wskazują, czy identyfikator właściciela został zarejestrowany.

Mamy wówczas pewność, że nie istniej ą różne DTD o tych samych nazwach. Do rejestracji uprawniona jest Registration Authority ustanowiona przez International Organisation for Standarisation (ISO). Przydziela ona nazwę, która powinna pojawić się na początku identyfikatora właściciela. Procedura rejestracyjna została dokładnie opisana w standardzie ISO 9070.[11]

5/5 - (2 votes)
image_pdf