included a new function to reuse a Push parser context, based on Graham

* parser.c include/libxml/parser.h: included a new function
  to reuse a Push parser context, based on Graham Bennett original
  code
* valid.c: in HTML, a name in an input is not an ID
* TODO: bug list update
Daniel
diff --git a/valid.c b/valid.c
index 8b9c429..4853cc7 100644
--- a/valid.c
+++ b/valid.c
@@ -2498,8 +2498,9 @@
     if ((doc->intSubset == NULL) && (doc->extSubset == NULL)) {
 	return(0);
     } else if (doc->type == XML_HTML_DOCUMENT_NODE) {
-        if ((xmlStrEqual(BAD_CAST "id", attr->name)) ||
-	    (xmlStrEqual(BAD_CAST "name", attr->name)))
+        if (((xmlStrEqual(BAD_CAST "id", attr->name)) ||
+	    (xmlStrEqual(BAD_CAST "name", attr->name))) &&
+	    ((elem != NULL) && (!xmlStrEqual(elem->name, BAD_CAST "input"))))
 	    return(1);
 	return(0);    
     } else {