| OPTIONAL |
| EXPERIMENTAL |
| SYNOPSIS |
| #include <xml.h> |
| |
| string xml_generate(mixed *xml) |
| |
| DESCRIPTION |
| Converts the given <xml> array into an XML conform string, if |
| possible. The <xml> argument array must have the following structure. |
| |
| It must contain tag arrays of three elements, with the following |
| indices: |
| |
| string XML_TAG_NAME |
| The name of the XML tag. |
| |
| mapping XML_TAG_ATTRIBUTES |
| All attributes given to the XML tag as mapping where the key |
| is the attribute name and the value is its string value. |
| |
| If the xml tag does not contain any attributes, this element |
| is set 0: |
| |
| mixed * XML_TAG_CONTENTS |
| The contents of this xml tag as array. This array may |
| contain either strings, or arrays of sub-tags again with |
| three elements (see example) |
| |
| If the xml tag does not contain anything, the element is |
| set 0. |
| |
| In case the parameter does not follow these rules, errors are raised. |
| The method returns a valid XML string otherwise. |
| |
| The function is available only if the driver is compiled with Iksemel |
| support. In that case, __XML_DOM__ is defined. |
| |
| |
| EXAMPLES |
| xml_generate(({ "abc", 0, 0 })) -> "<abc/>" |
| xml_generate(({ "abc", ([ "xyz" : "cde" ]), 0 })) -> "<abc xyz="cde"/>" |
| |
| mixed *xml = ({ "book" |
| , ([ "language" : "common" ]) |
| , ({ ({ "title" |
| , 0 |
| , ({ "This is a title" }) |
| }) |
| , ({ "chapter" |
| , 0 |
| , ({ "This is a chapter" }) |
| }) |
| , ({ "chapter" |
| , 0 |
| , ({ "We want " |
| , ({ "b" |
| , 0 |
| , ({ "bold" }) |
| }) |
| , "here" |
| }) |
| }) |
| }) |
| }) |
| |
| xml_generate(xml) |
| -> "<book language="common"><title>This is the title</title>" |
| "<chapter>This is a chapter</chapter><chapter>We want " |
| "<b>bold</b> here.</chapter></book>" |
| |
| HISTORY |
| Added in LDMud 3.3.718. |
| |
| SEE ALSO |
| xml_parse(E) |