improved the behaviour a bit as well as the logs fixed a few more bugs

* check-xml-test-suite.py: improved the behaviour a bit as
  well as the logs
* parser.c valid.c SAX.c: fixed a few more bugs
  "Ran 1819 tests: 1778 suceeded, 41 failed, and 0 generated an error"
Daniel
diff --git a/valid.c b/valid.c
index 55b8212..de44a55 100644
--- a/valid.c
+++ b/valid.c
@@ -1356,10 +1356,13 @@
     if (elemDef != NULL) {
 
         if ((type == XML_ATTRIBUTE_ID) &&
-	    (xmlScanIDAttributeDecl(NULL, elemDef) != 0))
+	    (xmlScanIDAttributeDecl(NULL, elemDef) != 0)) {
 	    VERROR(ctxt->userData, 
 	   "Element %s has too may ID attributes defined : %s\n",
 		   elem, name);
+	    ctxt->valid = 0;
+	}
+
 	/*
 	 * Insert namespace default def first they need to be
 	 * processed first.
@@ -4466,6 +4469,7 @@
 			    VERROR(ctxt->userData,
    "Element %s namespace name for default namespace does not match the DTD\n",
 				   elem->name);
+			    ret = 0;
 			}
 			goto found;
 		    }
@@ -4481,6 +4485,7 @@
 			    VERROR(ctxt->userData,
 		   "Element %s namespace name for %s doesn't match the DTD\n",
 				   elem->name, ns->prefix);
+			    ret = 0;
 			}
 			goto found;
 		    }