ldmud-3.3.719/
ldmud-3.3.719/doc/
ldmud-3.3.719/doc/efun.de/
ldmud-3.3.719/doc/efun/
ldmud-3.3.719/doc/man/
ldmud-3.3.719/doc/other/
ldmud-3.3.719/mud/
ldmud-3.3.719/mud/heaven7/
ldmud-3.3.719/mud/lp-245/
ldmud-3.3.719/mud/lp-245/banish/
ldmud-3.3.719/mud/lp-245/doc/
ldmud-3.3.719/mud/lp-245/doc/examples/
ldmud-3.3.719/mud/lp-245/doc/sefun/
ldmud-3.3.719/mud/lp-245/log/
ldmud-3.3.719/mud/lp-245/obj/Go/
ldmud-3.3.719/mud/lp-245/players/lars/
ldmud-3.3.719/mud/lp-245/room/death/
ldmud-3.3.719/mud/lp-245/room/maze1/
ldmud-3.3.719/mud/lp-245/room/sub/
ldmud-3.3.719/mud/lp-245/secure/
ldmud-3.3.719/mud/sticklib/
ldmud-3.3.719/mud/sticklib/src/
ldmud-3.3.719/mudlib/deprecated/
ldmud-3.3.719/mudlib/uni-crasher/
ldmud-3.3.719/pkg/
ldmud-3.3.719/pkg/debugger/
ldmud-3.3.719/pkg/diff/
ldmud-3.3.719/pkg/misc/
ldmud-3.3.719/src/
ldmud-3.3.719/src/autoconf/
ldmud-3.3.719/src/ptmalloc/
ldmud-3.3.719/src/util/
ldmud-3.3.719/src/util/erq/
ldmud-3.3.719/src/util/indent/hosts/next/
ldmud-3.3.719/src/util/xerq/
ldmud-3.3.719/src/util/xerq/lpc/
ldmud-3.3.719/src/util/xerq/lpc/www/
ldmud-3.3.719/test/generic/
ldmud-3.3.719/test/inc/
ldmud-3.3.719/test/t-0000398/
ldmud-3.3.719/test/t-0000548/
ldmud-3.3.719/test/t-030925/
ldmud-3.3.719/test/t-040413/
ldmud-3.3.719/test/t-041124/
ldmud-3.3.719/test/t-language/
OPTIONAL
EXPERIMENTAL
SYNOPSIS
        #include <xml.h>

        mixed* xml_parse(string xml)

BESCHREIBUNG
        Parst den angegebenen String <xml> als XML. Der String darf nur ein
        einziges Root-Tag enthalten, weitere Root-Tags werden ignoriert.

        Falls der String XML-konform war, so wird ein Array mit drei Elementen
        zurueckgegeben, dessen Elemente folgendermassen definiert sind:

            string XML_TAG_NAME
                Der Name des XML-Tags.

            mapping XML_TAG_ATTRIBUTES
                Alle Attribute dieses XML-Tags als ein Mapping mit dem
                jeweiligen Attributnamen als Schluessel und den Attributwert
                als der dazugehoerige String.
                
                Falls ein XML-Tag keine Attribute enthaelt, so ist dieses
                Element 0.

            mixed * XML_TAG_CONTENTS
                Der Inhalt des XML-Tags als ein Array. Dieses Array kann
                entweder Strings (reine Zeichendaten) oder Arrays
                als weitere Tags enthalten, welche wiederum diese
                drei Elemente besitzen.
                
                Falls das XML-Tag nichts enthaelt, so ist dieses Element 0.

        Falls der XML-String nicht wohlgeformt ist oder falls nicht genug Speicher
        zur Verfuegung steht, wird eine Fehlermeldung ausgegeben.

        Diese Funktion ist nur verfuegbar, wenn der Driver mit Iksemel-
        Unterstuetzung compiliert wurde. In diesem Fall ist das Makro
        __XML_DOM__ definiert.

BEISPIEL
        xml_parse("<abc/>")           -> ({ "abc", 0, 0 })
        xml_parse("<abc xyz="cde"/>") -> ({ "abc", ([ "xyz" : "cde" ]), 0 })

        xml_parse("<buch sprache="deutsch">" + 
                  "    <titel>Dies ist der Titel</titel>" + 
                  "    <kapitel>Dies ist ein Kapitel</kapitel>" + 
                  "    <kapitel>Das soll <b>fettgedruckt</b> sein.</kapitel>" +
                  "</buch>")

            -> ({ "buch"
                , ([ "sprache" : "deutsch" ])
                , ({ ({ "titel"
                      , 0
                      , ({ "Dies ist der Titel" })
                     })
                   , ({ "kapitel"
                      , 0
                      , ({ "Dies ist ein Kapitel" })
                     })
                   , ({ "kapitel"
                      , 0
                      , ({ "Dies soll "
                         , ({ "b"
                            , 0 
                            , ({ "fettgedruckt" })
                           })
                         , "sein."
                        })
                     })
                  })
               })

GESCHICHTE
        Eingefuehrt in LDMud 3.3.718.

SIEHE AUCH
        xml_generate(E)