This is the 2.0.0-beta, lots and lots and lots of changes
Have a look at http://xmlsoft.org/upgrade.html

Daniel
diff --git a/valid.h b/valid.h
index 8c86b17..d211207 100644
--- a/valid.h
+++ b/valid.h
@@ -29,6 +29,14 @@
     void *userData;			/* user specific data block */
     xmlValidityErrorFunc error;		/* the callback in case of errors */
     xmlValidityWarningFunc warning;	/* the callback in case of warning */
+
+    /* Node analysis stack used when validating within entities */
+    xmlNodePtr         node;          /* Current parsed Node */
+    int                nodeNr;        /* Depth of the parsing stack */
+    int                nodeMax;       /* Max depth of the parsing stack */
+    xmlNodePtr        *nodeTab;       /* array of nodes */
+
+    int              finishDtd;       /* finished validating the Dtd ? */
 };
 
 /*
@@ -114,6 +122,8 @@
 					 const xmlChar *SystemID);
 xmlNotationTablePtr xmlCopyNotationTable(xmlNotationTablePtr table);
 void		    xmlFreeNotationTable(xmlNotationTablePtr table);
+void		    xmlDumpNotationDecl	(xmlBufferPtr buf,
+					 xmlNotationPtr nota);
 void		    xmlDumpNotationTable(xmlBufferPtr buf,
 					 xmlNotationTablePtr table);
 
@@ -122,6 +132,9 @@
 					   xmlElementContentType type);
 xmlElementContentPtr xmlCopyElementContent(xmlElementContentPtr content);
 void		     xmlFreeElementContent(xmlElementContentPtr cur);
+void		     xmlSprintfElementContent(char *buf,
+	                                   xmlElementContentPtr content,
+					   int glob);
 
 /* Element */
 xmlElementPtr	   xmlAddElementDecl	(xmlValidCtxtPtr ctxt,
@@ -133,6 +146,8 @@
 void		   xmlFreeElementTable	(xmlElementTablePtr table);
 void		   xmlDumpElementTable	(xmlBufferPtr buf,
 					 xmlElementTablePtr table);
+void		   xmlDumpElementDecl	(xmlBufferPtr buf,
+					 xmlElementPtr elem);
 
 /* Enumeration */
 xmlEnumerationPtr  xmlCreateEnumeration	(xmlChar *name);
@@ -144,6 +159,7 @@
 					     xmlDtdPtr dtd,
 					     const xmlChar *elem,
 					     const xmlChar *name,
+					     const xmlChar *prefix,
 					     xmlAttributeType type,
 					     xmlAttributeDefault def,
 					     const xmlChar *defaultValue,
@@ -152,6 +168,8 @@
 void		     xmlFreeAttributeTable  (xmlAttributeTablePtr table);
 void		     xmlDumpAttributeTable  (xmlBufferPtr buf,
 					     xmlAttributeTablePtr table);
+void		     xmlDumpAttributeDecl   (xmlBufferPtr buf,
+					     xmlAttributePtr attr);
 
 /* IDs */
 xmlIDPtr	xmlAddID	(xmlValidCtxtPtr ctxt,
@@ -188,6 +206,10 @@
 int		xmlValidateElementDecl	(xmlValidCtxtPtr ctxt,
 					 xmlDocPtr doc,
 		                         xmlElementPtr elem);
+xmlChar *	xmlValidNormalizeAttributeValue(xmlDocPtr doc,
+					 xmlNodePtr elem,
+					 const xmlChar *name,
+					 const xmlChar *value);
 int		xmlValidateAttributeDecl(xmlValidCtxtPtr ctxt,
 					 xmlDocPtr doc,
 		                         xmlAttributePtr attr);
@@ -199,6 +221,8 @@
 int		xmlValidateDtd		(xmlValidCtxtPtr ctxt,
 					 xmlDocPtr doc,
 					 xmlDtdPtr dtd);
+int		xmlValidateDtdFinal	(xmlValidCtxtPtr ctxt,
+					 xmlDocPtr doc);
 int		xmlValidateDocument	(xmlValidCtxtPtr ctxt,
 					 xmlDocPtr doc);
 int		xmlValidateElement	(xmlValidCtxtPtr ctxt,