Functions to support XML nodes.

XMLNode currently supported only by individualization place holders.

static XMLNode root(XMLTree tree)

Get the root element of an XML tree.

Name Type Default Description
Return XMLNode   Root element of the given XML tree

0 : Error
tree XMLTree tree XML tree opened with xmlquery::open

Run through a complete XML tree and write it to the log.

#include "internal/types.h"
int wnode (XMLNode nd, int depth) { int i; int type; char * content = 0;
// Sanity check // if (!nd) return 0;
// Write name // for (i = 0; i < depth; i++) wlog ("", "\t"); if (xmlnode::is_attribute (nd)) wlog ("", "%s = ", xmlnode::name (nd)); else wlog ("", "<%s> ", xmlnode::name (nd));
// Write content // content = xmlnode::content (nd); if (xmlnode::is_attribute (nd) || (content && *content)) { wlog ("", "\"%s\"", content); }
wlog ("", "\n"); return 0; }
int show_nodes (XMLNode * parent, int depth) { int i; XMLNode nd;
if (!parent) return 0;
wnode (parent, depth); for (i = 0; i < xmlnode::children (parent); i++) { nd = xmlnode::child (parent, i);
show_nodes (nd, depth + 1); // Recursive dive }
return 0; }
int main () { XMLTree t = xmlquery::open ("/Users/paul/Desktop/test.xml");
show_nodes (xmlnode::root (t), 0); xmlquery::close (t); return 0; }

v4.1.8 R28250, 11. Mar 2021

priint:comet InDesign® Plug-Ins, comet_pdf

static int children(XMLNode node)

Number of direct children and attributes of a given XML node.

Name Type Default Description
Return int   Number of direct sub elements and attributes
node XMLNode - valid XML node

v3.3.1 R3226, 17.10.2012

priint:comet InDesign® Plug-Ins, comet_pdf

static XMLNode child(XMLNode node, int nth)

Number of direct children and attributes of a given XML node.

Name Type Default Description
Return XMLNode   nth direct sub element

0 : error no more elements
node XMLNode - valid XML node
nth int - 0-based index of element

v3.3.1 R3226, 17.10.2012

priint:comet InDesign® Plug-Ins, comet_pdf

static int type(XMLNode node)

Type of an given XML element.

Name Type Default Description
Return int   Type of element

-1 : Error
0 : Normal
1 : Content
2 : Entity reference
3 : Processing instruction
4 : Comment
node XMLNode - valid XML node

v3.3.1 R3226, 17.10.2012

priint:comet InDesign® Plug-Ins, comet_pdf

static char* content(XMLNode node)

Text content of an XML node.

Name Type Default Description
Return char*   Text content of the sub node.

"" : in case of errors

The return value is read only, do NOT CHANGE. The result will be overridden on following calls to the function. Learn more about functions returning r/o char* values.

node XMLNode - valid XML node

v3.3.1 R3226, 17.10.2012

priint:comet InDesign® Plug-Ins, comet_pdf

static char* content_of_child(XMLNode node, char* child_name)

Text content of an XML sub node or attribute.

Name Type Default Description
Return char*   Text content of an XML sub node or attribute

"" : in case of errors

The return value is read only, do NOT CHANGE. The result will be overridden on following calls to the function. Learn more about functions returning r/o char* values.

node XMLNode - valid XML node

For an individalization of o document, an XML file is used. The text given in the node email should be shown as QR code.

int main ()
{
    char		to [512];
strcpy (to, xmlnode::content_of_child (gData, "email")); if (strlen (to)) image::barcode (gFrame, to, "qrcode", 72, 72, 10, 10); return 0; }

v3.3.1 R3226, 17.10.2012

priint:comet InDesign® Plug-Ins, comet_pdf

static char* name(XMLNode node)

Name of an XML node

Name Type Default Description
Return char*   Name of XML node

"" : in case of errors

The return value is read only, do NOT CHANGE. The result will be overridden on following calls to the function. Learn more about functions returning r/o char* values.

node XMLNode - valid XML node

v3.3.1 R3226, 17.10.2012

priint:comet InDesign® Plug-Ins, comet_pdf

static char* path(XMLNode node)

Path to an XML node

Name Type Default Description
Return char*   Path to the XML node

"" : in case of errors

The return value is read only, do NOT CHANGE. The result will be overridden on following calls to the function. Learn more about functions returning r/o char* values.

node XMLNode - valid XML node

v3.3.1 R3226, 17.10.2012

priint:comet InDesign® Plug-Ins, comet_pdf

static int is_attribute(XMLNode node)

Is the node defined as an attribute in the original tree?

Name Type Default Description
Return int   1 : Yes, the node is defined as an attribute.

0 : No, the node is an element
node XMLNode - valid XML node

v4.1.8 R28250, 11. Mar 2021

priint:comet InDesign® Plug-Ins, comet_pdf

This class has no child classes.

Author
Paul Seidel
Since
v3.3.1 R3226, 17.10.2012

Alphabetic index HTML hierarchy of classes or Java