Silvia: Baumstruktur für ALLE Auszeichnungssprachen???

Hi !

meine Frage wäre, ob jede existierende Auszeichnungssprache einen Baum mit Knoten, etc. darstellt, oder ob dies nur für zB XML (inkl. deren Derivate) und HTML zutrifft.

Es gibt ja prozedurale vs. deklarative sowie dokumentzentrierte vs. datenzentrierte Auszeichnungssprachen.  Sind ALLE diese Sprachen nach dem Prinzip der Baumstruktur aufgebaut?????

BITTE BITTE helft mir (das ganze brauch ich für meine Dipl.Arbeit)
(Vielleicht gibts ja sogar einen Literaturnachweis dazu, oder eine Webadresse, wo definitiv gesagt wird, für welche Ausz.sprachen die Baumstruktur gilt.)

DANKE, DANKE, DANKE !!!
lg Silvia

  1. Hallo Silvia,

    Es gibt ja prozedurale vs. deklarative sowie dokumentzentrierte vs. datenzentrierte Auszeichnungssprachen.  Sind ALLE diese Sprachen nach dem Prinzip der Baumstruktur aufgebaut?????

    (Fast) alle Sprachen lassen sich durch Gramatiken beschreiben, die aus Wörtern (Terminale) und Satzteilen (nicht Terminale) sowie Regeln, die angeben welche Symbole (Terminale und nicht Terminale) durch welche anderen Symbole ersetzt werden können, um einen Satz zu erzeugen.
    Praktisch alle formalen Sprachen lassen sich durch kontextfreie Gramatiken beschreiben. Bei diesen Gramatiken gibt es nur Regeln, die das ersetzen von nicht Terminalen erlauben.
    Standardbeispiel Terme mit () = + *

    <TERM> ::= <TERM> +  <TERM> | <TERM> * <TERM> | (<TERM>) | <ZAHL>
    <ZAHL> ::= <VORKOMMA> | <VORKOMMA> . <NACHKOMMA>
    <VORKOMMA> ::= 0 | <ZIFFERN> | <ZIFFERN> <VORKOMMA>
    <NACHKOMMA> ::= <ZIFFERN> | <ZIFFERN> <NACHKOMMA> | 0 <NACHKOMMA>
    <ZIFFERN> ::= 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

    Einen Term kann man nun Erzeugen, in dem man mit dem Startsymbol <TERM> anfängt und die Regeln nacheinander anwendet:

    <TERM>
    <TERM> * <TERM>
    <TERM> * ( <TERM> )
    <TERM> * ( <TERM> + <TERM> )
    <ZAHL> * ( <TERM> + <TERM> )
    usw.
    bis man nur noch Terminale hat:
    4.5 * (0 + 3.01)

    Dadurch erhält man eine Baumstruktur mit dem Startsymbol als Anfangsknoten.
    Damit ist Deine ursprüngliche Frage beantwortet:
    Ja, das geht bei jeder dieser Sprachen, allerdings muss dieser Baum nicht immer eindeutig sein. (Diese Grammatik ist z.b. auch nicht eindeutig, man kann Terme erzeugen, deren Ableitungsbaum nicht eindeutig ist z.B. 4 + 5 * 3 da die Gramatik den Rang der Operatoren nicht berücksichtigt.)

    Praktisch ist dieser Ableitungsbaum bei Sprachen in der Informatik aber immer Eindeutig oder wird durch zusätzliche Regeln eindeutig gemacht.

    Noch ein Link den ich auf die schnelle gefunden habe:

    http://www.informatik.uni-leipzig.de/ifi/lehre/Heyer9900/kap8/sld006.htm

    Unter den Stichworten Chomiski Grammatik und Backus Nauer Form findest Du aber beliebig viele Skripts die sich mit dem Thema beschäftigen.

    Grüße

    Daniel

    1. Hallo Daniel,

      Damit ist Deine ursprüngliche Frage beantwortet:
      Ja, das geht bei jeder dieser Sprachen,

      Ich glaube nicht, dass Syntax-Bäume gemeint waren ;-)

      Unter den Stichworten Chomiski Grammatik und Backus Nauer Form findest Du aber beliebig
      viele Skripts die sich mit dem Thema beschäftigen.

      Der Typ hiess Chomsky, Noam Chomsky ;-) Vergl:

      http://de.wikipedia.org/wiki/Noam_Chomsky

      Grüße,
       CK

      --
      Das Leben ist wie ein Kartenspiel: was dir gegeben wurde, ist vorbestimmt. Doch wie du damit spielst, ist deine Entscheidung.
      1. Hallo Christian,

        Der Typ hiess Chomsky, Noam Chomsky ;-) Vergl:

        Äh ja, eigentlich weiß ich das. Ich hatte ja gerade nach dem Namen Gegooglet um was zum Verlinken zu finden. Keine Ahnung, wo ich war, als ich die Zeile getippt habe ;-)

        Grüße

        Daniel

  2. Hallo,

    meine Frage wäre, ob jede existierende Auszeichnungssprache einen Baum mit Knoten, etc. darstellt, oder ob dies nur für zB XML (inkl. deren Derivate) und HTML zutrifft.

    Definiere bitte erst "Auszeichnungssprache".

    Es gibt ja prozedurale vs. deklarative sowie dokumentzentrierte vs. datenzentrierte Auszeichnungssprachen.  Sind ALLE diese Sprachen nach dem Prinzip der Baumstruktur aufgebaut?????

    Rein vom Prinzip her ja, denn es gibt immer ein oberstes Element das alle anderen Element enthält. So wie ein Dokument seine eigene Bestandteile enthält.

    BITTE BITTE helft mir (das ganze brauch ich für meine Dipl.Arbeit)
    (Vielleicht gibts ja sogar einen Literaturnachweis dazu, oder eine Webadresse, wo definitiv gesagt wird, für welche Ausz.sprachen die Baumstruktur gilt.)

    Das kann man dir nicht sagen. Es gibt unzähliche Auszeichnungssprachen. Der Unterschied beginnt bei descriptiven bzw. bei prozedualen Sprachen.

    Siehe auch http://de.wikipedia.org/wiki/Auszeichnungssprache

    Grüße
    Thomas

    1. Hallo Thomas,

      Es gibt ja prozedurale vs. deklarative sowie dokumentzentrierte vs. datenzentrierte
      Auszeichnungssprachen.  Sind ALLE diese Sprachen nach dem Prinzip der Baumstruktur
      aufgebaut?????

      Rein vom Prinzip her ja, denn es gibt immer ein oberstes Element das alle anderen Element
      enthält. So wie ein Dokument seine eigene Bestandteile enthält.

      Nein, durchaus nicht. Beispiel: LaTeX.

      Grüße,
       CK

      --
      Ihr wisst nicht, wie man den Menschen dient. Wie sollt ihr wissen, wie man den Goettern dienen soll?
      1. Hallo Christian,

        Rein vom Prinzip her ja, denn es gibt immer ein oberstes Element das alle anderen Element
        enthält. So wie ein Dokument seine eigene Bestandteile enthält.

        Nein, durchaus nicht. Beispiel: LaTeX.

        Davon abgesehen, dass LaTeX lediglich ein Makropaket für TeX ist, ist es   auch dort so, denn es gibt auch in LaTeX ein \begin{document} und ein \end{document} ;-)

        Grüße
        Thomas

        1. Hallo Thomas,

          Rein vom Prinzip her ja, denn es gibt immer ein oberstes Element das alle anderen Element
          enthält. So wie ein Dokument seine eigene Bestandteile enthält.

          Nein, durchaus nicht. Beispiel: LaTeX.

          Davon abgesehen, dass LaTeX lediglich ein Makropaket für TeX ist,

          Jo.

          ist es   auch dort so, denn es gibt auch in LaTeX ein \begin{document} und
          ein \end{document} ;-)

          Jups, aber \begin{document} ist nicht die oberste Hierarchie-Ebene. Es gibt dort nämlich
          keine. Überhalb von \begin{document} kann ich Pakete einbinden, Makros definieren, etc, pp.

          Grüße,
           CK

          --
          Das Sein entsteht aus dem Nicht-Sein.
          1. Hallo Christian,

            ist es   auch dort so, denn es gibt auch in LaTeX ein \begin{document} und
            ein \end{document} ;-)

            Jups, aber \begin{document} ist nicht die oberste Hierarchie-Ebene. Es gibt dort nämlich
            keine. Überhalb von \begin{document} kann ich Pakete einbinden, Makros definieren, etc, pp.

            In einem XML-Prolog kannst du auch elles Mögliche einbinden: "Pakte" = externe Entities,  "Makros" = PIs etc ;-)
            Diese Dinge gehören auch in die Hierarchie, bloß eine Ebene höher.

            Aber so lange wie darüber reden, Informationen entsprechend strukturiert zu erfassen, werden wir beim Baummodell bleiben.

            Grüße
            Thomas

            1. Hallo Thomas,

              ist es   auch dort so, denn es gibt auch in LaTeX ein \begin{document} und
              ein \end{document} ;-)

              Jups, aber \begin{document} ist nicht die oberste Hierarchie-Ebene. Es gibt dort nämlich
              keine. Überhalb von \begin{document} kann ich Pakete einbinden, Makros definieren, etc, pp.

              In einem XML-Prolog kannst du auch elles Mögliche einbinden: "Pakte" = externe Entities,
              "Makros" = PIs etc ;-)

              Nene, du, man kann Kühe und Pferde schlecht miteinander vergleichen ;-) Die Pakete in LaTeX
              sind doch schon ein bisschen was anderes.

              Aber so lange wie darüber reden, Informationen entsprechend strukturiert zu erfassen, werden
              wir beim Baummodell bleiben.

              Nur das LaTeX nicht für strukturierte Informationserfassung gedacht ist. LaTeX ist ein reines
              Satz-System.

              Grüße,
               CK

              --
              Ihr wisst nicht, wie man den Menschen dient. Wie sollt ihr wissen, wie man den Goettern dienen soll?
              1. Hallo Christian,

                Aber so lange wie darüber reden, Informationen entsprechend strukturiert zu erfassen, werden
                wir beim Baummodell bleiben.

                Nur das LaTeX nicht für strukturierte Informationserfassung gedacht ist. LaTeX ist ein reines
                Satz-System.

                TeX ist ein Satz-System, LaTeX ist lediglich eine Sammlung von Makros. ;-)

                Ich sage auch nicht, dass LaTeX die perfekte Auszeichnungsspreche ist, im Gegenteil. Aber es ist auch mit LaTeX möglich die Informationen baumartig zu erfassen.

                Grüße
                Thomas

          2. Hallo CK,

            Jups, aber \begin{document} ist nicht die oberste Hierarchie-Ebene. Es gibt
            dort nämlich keine.

            Man braucht ja auch nicht unbedingt eine. Vergleiche / unter Unix. Und
            damit kann man dann wieder alles in einer Baumstruktur organisieren,
            wenn man denn unbedingt will. ;-)

            O
                ________________________________|________________________________
                |                               |             |                 |
             documentclass                 usepackage        ...             umgebung
                |____________                   |                               |
                |           |                 german                          document
              a4paper     11pt                                                  |
                                                                               ...

            (Ja, diese Variante des Baums ist Schwachsinn.)

            Tim

            1. Hallo Tim,

              Man braucht ja auch nicht unbedingt eine. Vergleiche / unter Unix.

              Nicht alles, was hinkt, ist ein Vergleich ;-)

              Und damit kann man dann wieder alles in einer Baumstruktur organisieren,
              wenn man denn unbedingt will. ;-)

              Mit Gewalt und Spucke kann man alles in einen derart gestalteten Baum drängen ;-) Die
              natürliche Repräsentation wäre es aber trotzdem nicht.

              Grüße,
               CK

              --
              Es ist uns nicht möglich, in einem Bereich unseres Lebens richtig zu verhalten, wenn wir in allen anderen falsch handeln. Das Leben ist ein unteilbares Ganzes.
              1. Hallo CK,

                Mit Gewalt und Spucke kann man alles in einen derart gestalteten Baum
                drängen ;-)

                Und einen von mir bewunderten Denker zu zitieren: »Eigentlich ist alles
                als Baum darstellbar.« (1)

                Die natürliche Repräsentation wäre es aber trotzdem nicht.

                Die natürliche Repräsentation wäre dann ... (Außer Text natürlich)?

                Tim

                --
                (1) Ich gerade mündlich zu mir, der ich das gleich abtippen mußte. SCNR ;-)
                1. Hallo Tim,

                  Die natürliche Repräsentation wäre es aber trotzdem nicht.

                  Die natürliche Repräsentation wäre dann ... (Außer Text natürlich)?

                  Eine Liste von Bäumen. Beispielsweise so (zuerst LaTeX, dann Darstellung):

                  \documentclass[11pt]{article}
                  \usepackage[T1]{fontenc}
                  \usepackage[latin9]{inputenc}
                  \usepackage{german}

                  \newcommand{\dgts}[1]{\ifnum #1<10 0\fi \number#1}

                  \begin{document}
                  \dgts{1}, \dgts{2}, \dgts{10}
                  \end{document}

                  Darstellbar:

                  ---documentclass----->usepackage-------->usepackage------>usepackage------>
                        /    \           /   \              /     \             |
                      11pt  article     T1 fontenc       latin9 inputenc      german

                  ---->newcommand---------------------->document
                        /  | \                             |
                      dgts 1  |                            |
                              |                            |
                            ifnum------>\number           dgts------>dgts-------->dgts
                           / | | \         |                |          |            |
                          #1 < 10 |       #1                1          2           10
                                  |
                                  0

                  Ist IMHO wesentlich sinnvoller als ein Baum, wie du ihn gezeichnet hast. Die
                  Betrachtungsweise ist hier halt eher die eines Programms anstatt eines Dokuments.

                  Grüße,
                   CK

                  --
                  Wenn du gehst, gehe. Wenn du sitzt, sitze. Und vor allem: schwanke nicht!
  3. Hallo.

    Sind ALLE diese Sprachen nach dem Prinzip der Baumstruktur aufgebaut?????

    Das ist sicher eine Frage der Definition. Denn wenn ein Element ein anderes nur zum Teil umfasst, wird es schwierig, dies als Baum darzustellen. Ein Beispiel in Form invaliden HTML:
    <h1>Text ist <strong>wichtig,</h1>
    <p>denn</strong> er transport Information.</p>
    In anderen Auszeichnungssprachen ist eine solche Schachtelung ja durchaus valide.
    Wer zeichnet mir dem Baum? ;-)
    MfG, at

    1. Hallo,

      Ein Beispiel in Form invaliden HTML:
      <h1>Text ist <strong>wichtig,</h1>
      <p>denn</strong> er transport Information.</p>
      In anderen Auszeichnungssprachen ist eine solche Schachtelung ja durchaus valide.

      In welche(n) andere(n) Sprachen ist diese Verschachtelung gültig?

      Grüße
      Thomas

      1. Hallo.

        In welche(n) andere(n) Sprachen ist diese Verschachtelung gültig?

        Zum Beispiel in vielen Sprachen für ältere professionelle Satzsysteme, etwa Linotype CRTronic. Aber auch in den von Textverarbeitungsprogrammen verfassten Codes ist diese Schreibweise nicht unüblich.
        MfG, at

        1. Hallo,

          In welche(n) andere(n) Sprachen ist diese Verschachtelung gültig?

          Zum Beispiel in vielen Sprachen für ältere professionelle Satzsysteme, etwa Linotype CRTronic. Aber auch in den von Textverarbeitungsprogrammen verfassten Codes ist diese Schreibweise nicht unüblich.

          Das ist für mich schwer nachzuvollziehen:

          In HTML würde das so aussehen, wenn ich es falsch machen wollte:
          <h1>Ueberschr<u><i>ift</h1>
          <p>Text text text</i></u> text text text text</p>

          In RTF sieht es so aus:

          {\loch\f4\fs32\lang1031\i0\b Ueberschr{\ul\i ift}}
          {\loch\f1\fs24\lang1031\i\b0{\ul\i Text text text}}{\loch\f1\fs24\lang1031 text text text text }

          Da wird alles ordentlich beendet: {\ul\i ift}}
                                                     ^^^^
          {\ul\i Text text text}}
                              ^^^^

          Würde ich das als HTML-abspeichern, wird das dann so aussehen:
          <h1>Ueberschr<u><i>ift</i></u></h1>
          <p><u><i>Text text text</i></u> text text text text</p>

          Deshalb kann ich mir nur schwer vorstellen dass es solche falsche Verschachtelungen von Programmen gibt.

          Grüße
          Thomas

          1. Hallo.

            Deshalb kann ich mir nur schwer vorstellen dass es solche falsche Verschachtelungen von Programmen gibt.

            Ich möchte nicht ausschließen, dass einander überschneidende Verschachtelungen von den jeweiligen Verarbeitungssystemen intern in nach unserem Verständnis validen Code übersetzt werden, da die Ergebnisse nach dem Rendering nicht mehr in menschenlesbarer Form vorliegen, der ursprüngliche Code aber nicht ohne Veränderungen angezeigt wird.
            Jedoch funktioniert das Einlesen von Code mit überkreuzten Verschachtelungen dort nicht nur definitiv, sondern wurde von den Herstellern dieser leider meist proprietären Formate auch in dieser aus heutiger Sicht wohl falschen Form propagiert.
            Vielleicht führt dich die Suchmaschine deines Vertrauens ja zu einer Dokumentation oder Betriebsanleitung für ein altes Satzsystem, etwa von Linotype oder Berthold.
            MfG, at