adding xml:id draft support adding 4 first regression tests Daniel

* SAX2.c include/libxml/tree.h: adding xml:id draft support
* Makefile.am test/xmlid/id_tst* result/xmlid/id_tst*: adding
  4 first regression tests
Daniel
diff --git a/SAX2.c b/SAX2.c
index e6e310e..fdc537a 100644
--- a/SAX2.c
+++ b/SAX2.c
@@ -1204,6 +1204,14 @@
 	    xmlAddID(&ctxt->vctxt, ctxt->myDoc, value, ret);
 	else if (xmlIsRef(ctxt->myDoc, ctxt->node, ret))
 	    xmlAddRef(&ctxt->vctxt, ctxt->myDoc, value, ret);
+	else if (xmlStrEqual(fullname, BAD_CAST "xml:id")) {
+	    /*
+	     * Add the xml:id value
+	     *
+	     * Open issue: normalization of the value.
+	     */
+	    xmlAddID(&ctxt->vctxt, ctxt->myDoc, value, ret);
+	}
     }
 
 error:
@@ -1925,7 +1933,18 @@
 	    if (dup == NULL)
 	        dup = xmlStrndup(value, valueend - value);
 	    xmlAddRef(&ctxt->vctxt, ctxt->myDoc, dup, ret);
-        }
+        } else if ((prefix == ctxt->str_xml) &&
+	           (localname[0] == 'i') && (localname[1] == 'd') &&
+		   (localname[2] == 0)) {
+	    /*
+	     * Add the xml:id value
+	     *
+	     * Open issue: normalization of the value.
+	     */
+	    if (dup == NULL)
+	        dup = xmlStrndup(value, valueend - value);
+	    xmlAddID(&ctxt->vctxt, ctxt->myDoc, dup, ret);
+	}
     }
     if (dup != NULL)
 	xmlFree(dup);