Added call to create/free parser contexts, + doc, Daniel.
diff --git a/include/libxml/parser.h b/include/libxml/parser.h
index ca0835f..9cd4b5b 100644
--- a/include/libxml/parser.h
+++ b/include/libxml/parser.h
@@ -20,12 +20,14 @@
  */
 #define XML_DEFAULT_VERSION	"1.0"
 
+typedef void (* xmlParserInputDeallocate)(CHAR *);
 typedef struct xmlParserInput {
     const char *filename;             /* The file analyzed, if any */
     const CHAR *base;                 /* Base of the array to parse */
     const CHAR *cur;                  /* Current char being parsed */
     int line;                         /* Current line */
     int col;                          /* Current column */
+    xmlParserInputDeallocate free;    /* function to deallocate the base */
 } xmlParserInput;
 typedef xmlParserInput *xmlParserInputPtr;