Index: trunk/Include/Classes/ActiveBasic/Core/TypeInfo.ab
===================================================================
--- trunk/Include/Classes/ActiveBasic/Core/TypeInfo.ab	(revision 401)
+++ trunk/Include/Classes/ActiveBasic/Core/TypeInfo.ab	(revision 402)
@@ -12,6 +12,6 @@
 
 	' メンバ情報
-	memberNames As **Char				' 名前リスト
-	memberTypeFullNames As **Char		' 型名リスト
+	memberNames As *String				' 名前リスト
+	memberTypeFullNames As *String		' 型名リスト
 	memberCounts As Long				' 個数
 
@@ -33,8 +33,19 @@
 Public
 
-	Sub SetMemberTypes( memberNames As **Char, memberTypeFullNames As **Char, num As Long )
+	Sub SetMembers( memberNames As *String, memberTypeFullNames As *String, num As Long )
 		This.memberNames = memberNames
 		This.memberTypeFullNames = memberTypeFullNames
 		This.memberCounts = num
+
+		/*
+		OutputDebugString( Ex"\r\n" )
+		Dim i As Long
+		For i=0 To ELM(num)
+			OutputDebugString( memberNames[i] )
+			OutputDebugString( ", " )
+			OutputDebugString( memberTypeFullNames[i] )
+			OutputDebugString( Ex"\r\n" )
+		Next
+		*/
 	End Sub
 
Index: trunk/Include/Classes/System/Xml/XmlDocument.ab
===================================================================
--- trunk/Include/Classes/System/Xml/XmlDocument.ab	(revision 402)
+++ trunk/Include/Classes/System/Xml/XmlDocument.ab	(revision 402)
@@ -0,0 +1,41 @@
+Namespace System
+Namespace Xml
+
+/*!
+@brief	XMLドキュメントを表す
+*/
+Class XmlDocument
+	Inherits XmlNode
+Public
+
+	/*!
+	@brief	コンストラクタ
+	*/
+	Sub XmlDocument()
+	End Sub
+
+	/*!
+	@brief	コンストラクタ
+	*/
+	'Sub XmlDocument( xmlImplementation As XmlImplementation )
+	'End Sub
+
+	/*!
+	@brief	コンストラクタ
+	*/
+	'Sub XmlDocument( xmlNameTable As XmlNameTable )
+	'End Sub
+
+	Function AppendChild( newChild As XmlNode ) As XmlNode
+		' TODO: 実装
+	End Function
+
+	Function CloneNode( deep As Boolean ) As XmlNode
+		' TODO: 実装
+	End Function
+
+End Class
+
+
+End Namespace
+End Namespace
Index: trunk/Include/Classes/System/Xml/XmlNode.ab
===================================================================
--- trunk/Include/Classes/System/Xml/XmlNode.ab	(revision 402)
+++ trunk/Include/Classes/System/Xml/XmlNode.ab	(revision 402)
@@ -0,0 +1,132 @@
+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
