Chciałbym zadać pytanie dotyczące zapisu XML i S-wyrażeń (-ish). Wyrażenia S są dość stare; są również bardzo proste. Możemy rozważyć dwie formy, które są równe w znaczeniu, różne pod względem składni:
(kod xml pochodzi z polskiej wikipedii )
<?xml version="1.0" encoding="UTF-8"?>
<ksiazka-telefoniczna kategoria="bohaterowie książek">
<!-- komentarz -->
<osoba charakter="dobry">
<imie>Ambroży</imie>
<nazwisko>Kleks</nazwisko>
<telefon>123-456-789</telefon>
</osoba>
<osoba charakter="zły">
<imie>Alojzy</imie>
<nazwisko>Bąbel</nazwisko>
<telefon/>
</osoba>
</ksiazka-telefoniczna>
Wersja S-Expression (-ish):
(:version "1.0" :encoding "utf-8")
(ksiazka-telefoniczna :category "bohaterowie książek"
; komentarz(a comment)
(osoba :charakter "dobry"
(imie Ambroży)
(nazwisko Kleks)
(telefon 123-456-789))
(osoba :charakter "zły"
(imie Alojzy)
(nazwisko Bąbel)
(telefon)))
Wersja S-Expression jest znacznie bardziej zwięzła. Unikamy redundancji, używając prostych notacji listowych, ale wciąż możemy zdefiniować składnię, aby uwzględnić rzeczy, które chcemy mieć (np. Właściwości). Oczywiście jest to tylko przykład, a faktyczny standard mógłby być lepszy lub po prostu inny; jest jednak krótszy i łatwiejszy do przeanalizowania. Dlaczego wygrał XML?
(para "This is a paragraph " (footnote "(better than the one under there)" "." /footnote) /para)
.