Namespace System Namespace Xml /*! @brief XMLドキュメント内の単一のノードを表す。 */ Class XmlNode Public attributes As XmlAttributeCollection childNodes As XmlNodeList /*! @brief 名前またはインデックスによってアクセスできる属性のコレクションを表します。 */ Function Attributes() As XmlAttributeCollection Return attributes End Function /*! @brief 子ノードリストを返します。 */ Function ChildNodes() As XmlNodeList Return childNodes End Function /*! @brief ノードの最初の子を取得します。 */ Function FirstChild() As XmlNode If childNodes.Count = 0 Then ' 子ノードが1つもないときはNothingを返す Return Nothing End If Return childNodes[0] End Function /*! @brief 子ノードが1つ以上あるかどうかを取得します。 */ Function HasChildNodes() As Boolean Return Not ( childNodes.Count = 0 ) End Function /*! @brief このノードの子ノードリストの末尾に指定したノードを追加する。 */ Function AppendChild( newChild As XmlNode ) As XmlNode ' TODO: 実装 End Function /*! @brief ノードを複製する。 */ Function Clone() As XmlNode ' TODO: 実装 End Function /*! @brief 派生クラスでオーバーライドされた場合は、ノードの複製を作成する。 */ Function CloneNode( deep As Boolean ) As XmlNode ' TODO: 実装 End Function /*! @brief XmlNode のノードに対する Foreachスタイルの反復をサポートします。 */ Function GetEnumerator() As IEnumerator ' TODO: 実装 End Function /*! @brief 指定したノードを指定した参照ノードの直後に挿入します。 @param newChild 挿入するXmlNode。 refChild 参照ノードであるXmlNode。newNode は、refNode の後に配置されます。 @return 挿入されるノード。 */ Function InsertAfter( newChild As XmlNode, refChild As XmlNode ) As XmlNode ' TODO: 実装 End Function /*! @brief 指定したノードを指定した参照ノードの直前に挿入します。 @param newChild 挿入するXmlNode。 refChild 参照ノードであるXmlNode。newNode は、refNode の前に配置されます。 @return 挿入されるノード。 */ Function InsertBefore( newChild As XmlNode, refChild As XmlNode ) As XmlNode ' TODO: 実装 End Function /*! @brief このノードの子ノードのリストの先頭に、指定したノードを追加します。 @param newChild 挿入するXmlNode。 @return 挿入されるノード。 */ Function PrependChild( newChild As XmlNode ) As XmlNode ' TODO: 実装 End Function /*! @brief 現在のノードのすべての子ノードと属性の両方、またはそのいずれかを削除します。 */ Sub RemoveAll() ' TODO: 実装 End Sub /*! @brief 現在のノードのすべての子ノードと属性の両方、またはそのいずれかを削除します。 @param newChild 削除するXmlNode。 @return 削除されたノード。 */ Function RemoveChild( oldChild As XmlNode ) As XmlNode ' TODO: 実装 End Function /*! @brief 子ノード oldChild を newChild ノードに置き換えます。 @param newChild 新しいノード。 oldChild 置換されノード。 @return 置き換えられたノード。 */ Function ReplaceChild( newChild As XmlNode, oldChild As XmlNode ) As XmlNode ' TODO: 実装 End Function End Class End Namespace End Namespace