SilcXMLParserHandler

NAME

    typedef struct SilcXMLParserHandlerObject { ... }
                   SilcXMLParserHandler, SilcXMLParserHandlerStruct;

DESCRIPTION

The XML parser handler function callbacks are declared in this structure. The structure is given as argument to the silc_xml_parser_create.

SOURCE

typedef struct SilcXMLParserHandlerObject {
  /* Called at the start of an XML element.  The `name' is the element name.
     The `attributes' is the element attributes or NULL if there were no
     attributes.  The `attributes' may be enumerated using the SilcHashTable
     API.  The silc_xml_get_attribute can be used to retrieve the attribute
     values from the `attributes' by their name. */
  void (*start_element)(SilcXMLParser parser,
                        const char *name,
                        SilcHashTable attributes,
                        void *context);

  /* Called and the end of an XML element.  The `name' is the element name. */
  void (*end_element)(SilcXMLParser parser,
                      const char *name,
                      void *context);

  /* Called to deliver the characters or whatever data is in the element. */
  void (*data)(SilcXMLParser parser,
               const unsigned char *data,
               SilcUInt32 data_len,
               void *context);

  /* Called to deliver a processing instruction.  The `target' is the first
     word in the processing instruction.  The `data' is the rest of the
     characters in it skipping all whitespace after the initial word.  This
     callback may be NULL if it is not needed. */
  void (*pi)(SilcXMLParser parser,
             const char *target,
             const char *data,
             void *context);
} *SilcXMLParserHandler, SilcXMLParserHandlerStruct;