XmlReader | CF 1.0, ECMA 1.0 |
System.Xml (system.xml.dll) | abstract class |
This class is a simple reader
for XML documents.
XmlReader provides a non-cached, forward-only
navigation through an XML data stream. It does not provide
validation, nor does it expand general entities. Two derived classes
provide these features: XmlTextReader and
XmlValidatingReader.
The XmlReader class parses XML in a
streaming-based approach (exemplified by the SAX specification). This
means the XML parser presents "interesting
pieces" (elements, attributes, namespace
declarations, and so forth) in a linear order. Within
XmlReader, this ordering of nodes is done using
successive calls to the Read( ) method. An
XmlReader is not positioned on a node at
first—an initial call to Read( ) is required
to move to the root node of a document. Subsequent calls to
Read( ) move the reader sequentially through the
nodes. The NodeType property tells you which type
of node the reader is currently positioned on, returning values from
the XmlNodeType enumeration. A special node-type
value for XmlReader is
EndElement. As Read( ) moves
through the stream, it can be positioned on an
element's end tag after it has stepped through the
element's children. This is not a real node, in the
DOM sense, but is required for XmlReader to parse
XML data properly. The Skip( ) method steps
through data node by node. A call to Skip( ) moves
the reader to the next real node, disregarding the current
node's children.
XML documents can also be parsed in a tree-based approach, using the
XmlDocument type.
public abstract class XmlReader {
// Protected Constructors
protected XmlReader( );
// Public Instance Properties
public abstract int AttributeCount{get; }
public abstract string BaseURI{get; }
public virtual bool CanResolveEntity{get; }
public abstract int Depth{get; }
public abstract bool EOF{get; }
public virtual bool HasAttributes{get; }
public abstract bool HasValue{get; }
public abstract bool IsDefault{get; }
public abstract bool IsEmptyElement{get; }
public abstract string LocalName{get; }
public abstract string Name{get; }
public abstract string NamespaceURI{get; }
public abstract XmlNameTable NameTable{get; }
public abstract XmlNodeType NodeType{get; }
public abstract string Prefix{get; }
public abstract char QuoteChar{get; }
public abstract ReadState ReadState{get; }
public abstract string this[string name, string namespaceURI]{get; }
public abstract string this[int i]{get; }
public abstract string this[string name]{get; }
public abstract string Value{get; }
public abstract string XmlLang{get; }
public abstract XmlSpace XmlSpace{get; }
// Public Static Methods
public static bool IsName(string str);
public static bool IsNameToken(string str);
// Public Instance Methods
public abstract void Close( );
public abstract string GetAttribute(int i);
public abstract string GetAttribute(string name);
public abstract string GetAttribute(string name, string namespaceURI);
public virtual bool IsStartElement( );
public virtual bool IsStartElement(string name);
public virtual bool IsStartElement(string localname, string ns);
public abstract string LookupNamespace(string prefix);
public abstract bool MoveToAttribute(string name);
public abstract bool MoveToAttribute(string name, string ns);
public abstract void MoveToAttribute(int i);
public virtual XmlNodeType MoveToContent( );
public abstract bool MoveToElement( );
public abstract bool MoveToFirstAttribute( );
public abstract bool MoveToNextAttribute( );
public abstract bool Read( );
public abstract bool ReadAttributeValue( );
public virtual string ReadElementString( );
public virtual string ReadElementString(string name);
public virtual string ReadElementString(string localname, string ns);
public virtual void ReadEndElement( );
public virtual string ReadInnerXml( );
public virtual string ReadOuterXml( );
public virtual void ReadStartElement( );
public virtual void ReadStartElement(string name);
public virtual void ReadStartElement(string localname, string ns);
public virtual string ReadString( );
public abstract void ResolveEntity( );
public virtual void Skip( );
}
Subclasses
XmlNodeReader, XmlTextReader,
XmlValidatingReader
Returned By
XmlValidatingReader.Reader,
System.Xml.Xsl.XslTransform.Transform( )
Passed To
XmlDocument.{Load( ), ReadNode(
)}, XmlValidatingReader.XmlValidatingReader(
), XmlWriter.{WriteAttributes( ),
WriteNode( )},
System.Xml.XPath.XPathDocument.XPathDocument( ),
System.Xml.Xsl.XslTransform.Load( )
|