(index ("expat:make-parser" 0) ("expat:make-external-entity-parser" 769) ("expat:destroy-parser" 970) ("expat:parse" 1112) ("expat:set-start-handler!" 1903) ("expat:set-end-handler!" 2248) ("expat:set-character-data-handler!" 2475) ("expat:set-processing-instruction-handler!" 2841) ("expat:set-comment-handler!" 3277) ("expat:set-external-entity-ref-handler!" 3514))
(def (sig (procedure "(expat:make-parser #!key (encoding #f) (namespaces #f) (namespace-separator #\\:))" (id expat:make-parser))) (p "Creates a parser object with the specified attributes. " (tt "encoding") " should be a string designating the encoding of the document and should be one of the following:") (ul (li "UTF-8") (li "UTF-16") (li "ISO-8859-1") (li "US-ASCII ")) (p "If no encoding or " (tt "#f") " is given, then the encoding specified in the document.  Note that the strings passed to the handlers are always UTF-8 encoded.") (p "If " (tt "namespaces") " is true, then namespace declarations are properly recognized and tags belonging to a namespace will be prefixed with the namespace string and the character given in " (tt "namespace-separator") "."))
(def (sig (procedure "(expat:make-external-entity-parser PARSER CONTEXT #!key (encoding #f))" (id expat:make-external-entity-parser))) (p "Creates a parser to recursively process external entities."))
(def (sig (procedure "(expat:destroy-parser PARSER)" (id expat:destroy-parser))) (p "Releases the memory resources associated with PARSER."))
(def (sig (procedure "(expat:parse PARSER STRING #!key length (final #t) (external-entities #f))" (id expat:parse))) (p "Parses a piece of XML document given in " (tt "STRING") ". If " (tt "length") " is given, then it specifies the number of bytes to parse.  If " (tt "final") " is true, then the string is the last piece of the document. " (tt "LENGTH") " defaults to " (tt "(string-length STRING)") ".") (p "Returns " (tt "#t") " on success, or triggers and exception of the kinds " (tt "(exn expat)") ".  If " (tt "external-entities") " controls whether parsing of external entities is enabled and can be any of the symbols " (tt "never") ", " (tt "always") " or " (tt "unless-standalone") ". " (tt "#f") " and " (tt "#t") " are synonymous for " (tt "never") " and " (tt "always") "."))
(def (sig (procedure "(expat:set-start-handler! PARSER PROCEDURE)" (id expat:set-start-handler!))) (p "Sets the handler to process start (and empty) tags. " (tt "PROCEDURE") " will be called with two arguments: the tag (a string) and a list of pairs, where each pair is of the form " (tt "(ATTRIBUTENAME . ATTRIBUTEVALUE)") " (both strings)."))
(def (sig (procedure "(expat:set-end-handler! PARSER PROCEDURE)" (id expat:set-end-handler!))) (p "Sets the handler to process end (and empty) tags. " (tt "PROCEDURE") " will be called with one argumente the tag (a string)."))
(def (sig (procedure "(expat:set-character-data-handler! PARSER PROCEDURE)" (id expat:set-character-data-handler!))) (p "Sets the handler to process text. " (tt "PROCEDURE") " will be called with one argument: a string containing a piece of text. Note that a single block of contiguous text free of markup may still result in a sequence of calls to this handler."))
(def (sig (procedure "(expat:set-processing-instruction-handler! PARSER PROCEDURE)" (id expat:set-processing-instruction-handler!))) (p "Sets the handler to for processing insructions. " (tt "PROCEDURE") " will be called with two arguments: target and data (both strings). The target is the first word in the processing instruction.  The data is the rest of the characters in it after skipping all whitespace after the initial word."))
(def (sig (procedure "(expat:set-comment-handler! PARSER PROCEDURE)" (id expat:set-comment-handler!))) (p "Sets the handler to process comments. " (tt "PROCEDURE") " will be called with the all the text inside the comment delimiters."))
(def (sig (procedure "(expat:set-external-entity-ref-handler! PARSER PROCEDURE)" (id expat:set-external-entity-ref-handler!))) (p "Sets the handler to references to external entities. PROCEDURE will be called with four arguments: context, URI base, system- and public ID (all strings). To parse the external entity, create a parser with " (tt "expat:make-external-entity-parser") "."))
