diff --git a/xmlIO.h b/xmlIO.h
index 4d63b82..0722e70 100644
--- a/xmlIO.h
+++ b/xmlIO.h
@@ -18,15 +18,17 @@
 extern "C" {
 #endif
 
+typedef int (*xmlInputMatchCallback) (char const *filename);
+typedef void * (*xmlInputOpenCallback) (char const *filename);
+typedef int (*xmlInputReadCallback) (void * context, char * buffer, int len);
+typedef void (*xmlInputCloseCallback) (void * context);
+
 typedef struct _xmlParserInputBuffer xmlParserInputBuffer;
 typedef xmlParserInputBuffer *xmlParserInputBufferPtr;
 struct _xmlParserInputBuffer {
-    /* Inputs */
-    FILE          *file;    /* Input on file handler */
-    void*        gzfile;    /* Input on a compressed stream */
-    int              fd;    /* Input on a file descriptor */
-    void        *httpIO;    /* Input from an HTTP stream */
-    void         *ftpIO;    /* Input from an FTP stream */
+    void*                  context;
+    xmlInputReadCallback   readcallback;
+    xmlInputCloseCallback  closecallback;
     
     xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
     
@@ -60,6 +62,10 @@
 void	xmlFreeParserInputBuffer		(xmlParserInputBufferPtr in);
 char *	xmlParserGetDirectory			(const char *filename);
 
+int     xmlRegisterInputCallbacks		(xmlInputMatchCallback match,
+						 xmlInputOpenCallback open,
+						 xmlInputReadCallback read,
+						 xmlInputCloseCallback close);
 #ifdef __cplusplus
 }
 #endif
