Post by artkrawPost by JarosÅaw SokoÅowskiPost by artkrawznaczniki w XML powinny wyglądać jak znak mniejszości lub większości
a nie jak nawias trójkątny
A to czemu? Znacznik XML jest parzystym znakiem obejmującym słowo lub
ciąg słów. Inaczej mówiąc -- nawiasem. Rozumiem, że ktoś może uznać,
że powinny wyglądać jak znaki mniejszości i większości. Ale od samego
wyglądania nie przestaną być nawiasami.
Zgadza się to są jak najbardziej nawiasy, bo taką funkcję pełnią,
ale nie powinny wyglądać jak nawiasy stosowane w matematyce -
Zaraz zaraz, to nie tak. XML to taki język, który umożliwia zapisanie
zestawem znaków ASCII treści dokumentu oraz jego formy. Dobrze mówię?
Żeby to zrealizować, wprowadzono znaczniki ("Markup" ze skrótu XML),
które pozwalają na odróżnienie treści od nietreści. Podobnie zresztą
jest w TeXu. W TeXu mamy "escape charakter" (najczęściej "\"), a w XML
są znaczniki ujęte w nawiasy "<>".
Opisując kod XML w ogóle nie można mówić o wyglądaniu znaków. Zgodnie
z definicją języka, znaczniki ograniczone są z lewej i prawej strony
konkretnymi znakami ASCII. A te stosowane są zarówno jako znaki relacji
jak i nawiasy. A wyglądają tak, jak je autor fontu wykroi.
Post by artkrawmathML ma taki znak większości - <gt/>
i nawiasy trójkąt też mają inne "swoje" oznaczenie.
A to już kolejne poplątanie pojęć. Co innego opisywanie przez XML (mathML)
treści przekazu, a co innego znaki stosowane do zapisu kodu. Jeszcze
raz powtórzę -- tu mamy do dyspozycji wyłącznie znaki ASCII.
Jeszcze inną rzeczą jest obrazowanie tego kodu. Tu mamy dwie szkoły.
Jedna z nich (nazwijmy ją szkołą werbatimistów) nakazuje zawsze ukazywać
kod za pomocą pisma o stałej szerokości znaków, bez żadnego zróżnicowania,
tak jak w oldskulowych terminalach znakowych.
Druga szkoła dopuszcza (a nawet nakazuje) zróżnicowanie w kodzie.
Teraz nawet znakowe terminale różnicują kolorami elementy kodu języków
programowania. A w druku czarnobiałym stosuje się wyróżnienie elementów
kodu krojem pisma (również proporcjonalnego) i wzbogaceniem zestawu
znaków ponad to, co mamy w ASCII. Nawiasy kątowe są właśnie tego przykładem.
Warto zauważyć, że przy takim obrazowaniu kodu znaki nie muszą być
zastępowane 'jeden do jednego'. W kodzie języka WEB (PASCAL) jako
operator podstawienia stosujemy ":=" (dwa znaki). D.E. Knuth zdecydował
jednak, że po przeprocesorowaniu kodu przez Weave, pojawia się tam
strzałka w lewą stronę.
--
Jarek