\chapter{HTML}\index{HTML} \section{Dokumentenbeschreibungssprachen für Textdokumente} \begin{lstlisting} aussehenorientiert ----------------------------------------------------------> | (SGML) | PostScript LaTeX Z | WordDOC e | RTF HTML i | PDF (XML) t | ODT | WordDOCX Markdown | \end{lstlisting} \begin{table}[h] \begin{tabular}{p{74mm}|p{74mm}} \textbf{designorientiert} (PDF, \ldots ) & \textbf{strukturorientiert} (HTML, \ldots ) \\ \midrule Textpassagen werden mit Aussehen attributiert & Textpassagen mit Bedeutung oder Funktion attributiert \\ \midrule meist binärkodiert & meist textcodiert \\ \midrule $\ominus$ Spezialprogramme notwendig & $\oplus$ mit jedem Texteditor editierbar \\ \midrule $\oplus$ \acs{WYSIWYG} & $\ominus$ großes Abstraktionsvermögen nötig, um sich das endgültige Dokument vorstellen zu können \\ \midrule $\oplus$ kurze Einarbeitungszeit & $\ominus$ lange Einarbeitungszeit \\ \midrule $\ominus$ Inkonsistenzen bei vergleichbaren Textpassagen möglich & $\oplus$ konsistente Formatierung des gesamten Dokuments \\ \midrule $\ominus$ nur für genau ein Ausgabemedium gedacht & $\oplus$ optional: Anpassung an verschiedene Ausgabemedien möglich \end{tabular} \caption{Dokumentenbeschreibungssprachen} \end{table} \section{Hyper Text Markup Language (\acs{HTML})} \acs{HTML} ist eine strukturorientierte Dokumentenbeschreibungssprache \begin{itemize}[noitemsep] \item basiert auf \acs{SGML} (welches 197X entstanden ist, siehe \autoref{sec:html_history}) \item textcodiert, basierend auf \acs{ASCII} (7-bit, 128 Zeichen) \item der meiste Text existiert \enquote{nahezu unverändert} bei der Ausgabe \newline Ausnahmen: \begin{itemize}[noitemsep] \item Entitäten/Entities $\Rightarrow$ Nicht im \acs{ASCII}-Zeichensatz enthaltene Zeichen. \newline \zB \code{\ü $\hat{=}$ ü} (\enquote{Umlaut}) , \code{\Ö $\hat{=}$ Ö}, \code{\ß $\hat{=}$ ß} (\enquote{Ligatur} $\Rightarrow$ Zusammenfassen von mehreren zu einem druckbaren Zeichen) \newpage \item spezielle Zeichen: \medskip \begin{tabular}{ll} \code{< \<} &\enquote{less than} \\ \code{> \>} &\enquote{greater than} \\ \code{~{} \ }& \enquote{non-breaking space}\\ \code{\& \&} &\enquote{Ampersand} \\ \code{"{} \"}& \enquote{Quotation} \\ \end{tabular} \medskip $\Rightarrow$ müssen mit Entitäten umschrieben werden, da sie als einfaches Zeichen eine Sonderfunktion in der Sprache \acs{HTML} besitzen \newline $\Rightarrow$ bisher alles \enquote{named entities}, \code{\&\#nnn} $\Rightarrow$ \enquote{numbered entity} für Zeichennummer~\code{nnn} aus Unicode \item Tags \code{$\underbrace{\text{}}_{\text{nicht angezeigt}} \text{Text}\underbrace{\text{}}_{\text{nicht angezeigt}}$} \item alle \enquote{Metadaten} im \html{} (\zB \html{}, \html{