more work on the xml reader interfaces. updated Igor's mail and the Web

* xmlreader.c include/libxml/xmlreader.h doc/libxml2-api.xml: more
  work on the xml reader interfaces.
* AUTHORS MAINTAINERS doc/* win32/*: updated Igor's mail and the
  Web page for the Windows binaries.
Daniel
diff --git a/doc/libxml2-api.xml b/doc/libxml2-api.xml
index ce8479c..dbbf347 100644
--- a/doc/libxml2-api.xml
+++ b/doc/libxml2-api.xml
@@ -1087,9 +1087,13 @@
      <exports symbol='xmlSubstituteEntitiesDefaultValue'/>
     </file>
     <file name='xmlreader'>
+     <exports symbol='XML_PARSER_DEFAULTATTRS'/>
+     <exports symbol='XML_PARSER_LOADDTD'/>
+     <exports symbol='XML_PARSER_VALIDATE'/>
      <exports symbol='xmlFreeTextReader'/>
      <exports symbol='xmlNewTextReader'/>
      <exports symbol='xmlNewTextReaderFilename'/>
+     <exports symbol='xmlParserProperties'/>
      <exports symbol='xmlTextReader'/>
      <exports symbol='xmlTextReaderAttributeCount'/>
      <exports symbol='xmlTextReaderBaseUri'/>
@@ -1098,6 +1102,7 @@
      <exports symbol='xmlTextReaderGetAttribute'/>
      <exports symbol='xmlTextReaderGetAttributeNo'/>
      <exports symbol='xmlTextReaderGetAttributeNs'/>
+     <exports symbol='xmlTextReaderGetParserProp'/>
      <exports symbol='xmlTextReaderGetRemainder'/>
      <exports symbol='xmlTextReaderHasAttributes'/>
      <exports symbol='xmlTextReaderHasValue'/>
@@ -1119,10 +1124,12 @@
      <exports symbol='xmlTextReaderPtr'/>
      <exports symbol='xmlTextReaderQuoteChar'/>
      <exports symbol='xmlTextReaderRead'/>
+     <exports symbol='xmlTextReaderReadAttributeValue'/>
      <exports symbol='xmlTextReaderReadInnerXml'/>
      <exports symbol='xmlTextReaderReadOuterXml'/>
      <exports symbol='xmlTextReaderReadState'/>
      <exports symbol='xmlTextReaderReadString'/>
+     <exports symbol='xmlTextReaderSetParserProp'/>
      <exports symbol='xmlTextReaderValue'/>
      <exports symbol='xmlTextReaderXmlLang'/>
     </file>
@@ -2357,6 +2364,7 @@
     <enum name='XML_PARSER_CDATA_SECTION' file='parser' value='8' type='xmlParserInputState' info='within a CDATA section'/>
     <enum name='XML_PARSER_COMMENT' file='parser' value='5' type='xmlParserInputState' info='within a comment'/>
     <enum name='XML_PARSER_CONTENT' file='parser' value='7' type='xmlParserInputState' info='within the content'/>
+    <enum name='XML_PARSER_DEFAULTATTRS' file='xmlreader' value='2' type='xmlParserProperties'/>
     <enum name='XML_PARSER_DTD' file='parser' value='3' type='xmlParserInputState' info='within some DTD content'/>
     <enum name='XML_PARSER_END_TAG' file='parser' value='9' type='xmlParserInputState' info='within a closing tag'/>
     <enum name='XML_PARSER_ENTITY_DECL' file='parser' value='10' type='xmlParserInputState' info='within an entity declaration'/>
@@ -2364,6 +2372,7 @@
     <enum name='XML_PARSER_EOF' file='parser' value='-1' type='xmlParserInputState' info='nothing is to be parsed'/>
     <enum name='XML_PARSER_EPILOG' file='parser' value='14' type='xmlParserInputState' info='the Misc* after the last end tag'/>
     <enum name='XML_PARSER_IGNORE' file='parser' value='15' type='xmlParserInputState' info='within an IGNORED section'/>
+    <enum name='XML_PARSER_LOADDTD' file='xmlreader' value='1' type='xmlParserProperties'/>
     <enum name='XML_PARSER_MISC' file='parser' value='1' type='xmlParserInputState' info='Misc* before int subset'/>
     <enum name='XML_PARSER_PI' file='parser' value='2' type='xmlParserInputState' info='Within a processing instruction'/>
     <enum name='XML_PARSER_PROLOG' file='parser' value='4' type='xmlParserInputState' info='Misc* after internal subset'/>
@@ -2371,6 +2380,7 @@
     <enum name='XML_PARSER_START' file='parser' value='0' type='xmlParserInputState' info='nothing has been parsed'/>
     <enum name='XML_PARSER_START_TAG' file='parser' value='6' type='xmlParserInputState' info='within a start tag'/>
     <enum name='XML_PARSER_SYSTEM_LITERAL' file='parser' value='13' type='xmlParserInputState' info='within a SYSTEM value'/>
+    <enum name='XML_PARSER_VALIDATE' file='xmlreader' value='3' type='xmlParserProperties'/>
     <enum name='XML_PI_NODE' file='tree' value='7' type='xmlElementType'/>
     <enum name='XML_TEXT_NODE' file='tree' value='3' type='xmlElementType'/>
     <enum name='XML_WAR_CATALOG_PI' file='xmlerror' value='93' type='xmlParserErrors' info='93'/>
@@ -2826,6 +2836,7 @@
       <field name='buffer' type='xmlParserNodeInfo *' info=''/>
     </struct>
     <typedef name='xmlParserNodeInfoSeqPtr' file='parser' type='xmlParserNodeInfoSeq *'/>
+    <typedef name='xmlParserProperties' file='xmlreader' type='enum'/>
     <struct name='xmlRMutex' file='threads' type='struct _xmlRMutex'/>
     <typedef name='xmlRMutexPtr' file='threads' type='xmlRMutex *'/>
     <struct name='xmlRef' file='tree' type='struct _xmlRef'>
@@ -7922,6 +7933,12 @@
       <arg name='localName' type='const xmlChar *' info='the local name of the attribute.'/>
       <arg name='namespaceURI' type='const xmlChar *' info='the namespace URI of the attribute.'/>
     </function>
+    <function name='xmlTextReaderGetParserProp' file='xmlreader'>
+      <info>Read the parser internal property.</info>
+      <return type='int' info='the value, usually 0 or 1, or -1 in case of error.'/>
+      <arg name='reader' type='xmlTextReaderPtr' info='the xmlTextReaderPtr used'/>
+      <arg name='prop' type='int' info='the xmlParserProperties to get'/>
+    </function>
     <function name='xmlTextReaderGetRemainder' file='xmlreader'>
       <info>Method to get the remainder of the buffered XML. this method stops the parser, set its state to End Of File and return the input stream with what is left that the parser did not use.</info>
       <return type='xmlParserInputBufferPtr' info='the xmlParserInputBufferPtr attached to the XML or NULL in case of error.'/>
@@ -8027,6 +8044,11 @@
       <return type='int' info='1 if the node was read successfully, 0 if there is no more nodes to read, or -1 in case of error'/>
       <arg name='reader' type='xmlTextReaderPtr' info='the xmlTextReaderPtr used'/>
     </function>
+    <function name='xmlTextReaderReadAttributeValue' file='xmlreader'>
+      <info>Parses an attribute value into one or more Text and EntityReference nodes.</info>
+      <return type='int' info='1 in case of success, 0 if the reader was not positionned on an ttribute node or all the attribute values have been read, or -1 in case of error.'/>
+      <arg name='reader' type='xmlTextReaderPtr' info='the xmlTextReaderPtr used'/>
+    </function>
     <function name='xmlTextReaderReadInnerXml' file='xmlreader'>
       <info>Reads the contents of the current node, including child nodes and markup.</info>
       <return type='xmlChar *' info='a string containing the XML content, or NULL if the current node is neither an element nor attribute, or has no child nodes. The string must be deallocated by the caller.'/>
@@ -8047,6 +8069,13 @@
       <return type='xmlChar *' info='a string containing the contents of the Element or Text node, or NULL if the reader is positioned on any other type of node. The string must be deallocated by the caller.'/>
       <arg name='reader' type='xmlTextReaderPtr' info='the xmlTextReaderPtr used'/>
     </function>
+    <function name='xmlTextReaderSetParserProp' file='xmlreader'>
+      <info>Change the parser processing behaviour by changing some of its internal properties. Note that some properties can only be changed before any read has been done.</info>
+      <return type='int' info='0 if the call was successful, or -1 in case of error'/>
+      <arg name='reader' type='xmlTextReaderPtr' info='the xmlTextReaderPtr used'/>
+      <arg name='prop' type='int' info='the xmlParserProperties to set'/>
+      <arg name='value' type='int' info='usually 0 or 1 to (de)activate it'/>
+    </function>
     <function name='xmlTextReaderValue' file='xmlreader'>
       <info>Provides the text value of the node if present</info>
       <return type='xmlChar *' info='the string or NULL if not available. The retsult must be deallocated with xmlFree()'/>