// -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
//
// System.Xml.XmlElement
//
// Author:
// Daniel Weber (daniel-weber@austin.rr.com)
//
// (C) 2001 Daniel Weber
using System;
namespace System.Xml
{
public class XmlElement : XmlLinkedNode
{
// Private/Protected internal data structures
//===========================================================================
private XmlAttributeCollection _attributes;
// Public Properties
//===========================================================================
///
/// Return the XmlAttributeCollection on the Element
///
public override XmlAttributeCollection Attributes
{
get
{
// TODO - implement Attributes
return _attributes;
}
}
// Implement abstract methods of XmlNode
//=====================================================================
///
/// Remove all children and attributes. If
///
public override void RemoveAll()
{
// Remove all child nodes
base.RemoveAll();
// Remove all attributes
_attributes.RemoveAll();
// If we have any default attributes, add them back in with the
// appropriate namespace, baseURI, name, localName
// TODO - implement adding default attributes back in XmlElement.RemoveAll()
}
///
/// Return a clone of the node
///
/// Make copy of all children
/// Cloned node
public override XmlNode CloneNode( bool deep)
{
// TODO - implement CloneNode()
throw new NotImplementedException();
}
///
/// Saves all children of the current node to the passed writer
///
///
public override void WriteContentTo(XmlWriter w)
{
// TODO - implement WriteContentsTo(XmlWriter)
throw new NotImplementedException();
}
///
/// Saves the current node to writer w
///
///
public override void WriteTo(XmlWriter w)
{
// TODO - implement WriteTo(XmlWriter)
throw new NotImplementedException();
}
///
/// Returns the local name of the node with qualifiers removed
/// LocalName of ns:elementName = "elementName"
///
public override string LocalName
{
get
{
// TODO - implement LocalName
throw new NotImplementedException();
}
}
///
/// Get the qualified node name
/// derived classes must implement as behavior varies
/// by tag type.
///
public override string Name
{
get
{
// TODO - implement Name
throw new NotImplementedException();
}
}
public override XmlNodeType NodeType
{
get
{
return XmlNodeType.Element;
}
}
// ============= Internal calls =============================================
// Constructors
// ==========================================================================
internal XmlElement( XmlDocument aOwnerDoc ) : base(aOwnerDoc)
{
_attributes = new XmlAttributeCollection(aOwnerDoc, this, null);
}
} // class
} //namespace