Visual Basic 2008では言語レベルで XML のサポートをしてくれるそうです。
MSDN : XML (Visual Basic)
まずは、XML の作成方法をば♪
MSDN : Visual Basic での XML の作成
ここには・・・
Visual Basic では、XML リテラルをコード内で直接使用できます。XML リテラルの構文は LINQ to XML オブジェクトを表し、XML 1.0 の構文に似ています。記述するコードは最終的な XML と同じ構造になるので、XML 要素、XML ドキュメント、および XML フラグメントをプログラムによって簡単に作成できます。
と書かれていますね、Orcas Beta のころに一度書きましたよね。XML リテラルって言うんですね♪
betaのころに書いたやつをそのまんま書いてみました。
Option Strict On
Option Infer On
Public Class Program
Public Shared Sub Main()
Dim torikobito As XElement = _
<WankumaMember>
<ID>76</ID>
<Name>とりこびと</Name>
</WankumaMember>
Console.WriteLine(torikobito)
End Sub
End Class
これはXML 要素リテラルというものらしいです。変数 torikobito の型はSystem.Xml.Linq.XElement型になっていますね。どうやらXML 要素リテラルは XElement クラスのインスタンスを返す模様・・・。
んでもって次は、XML ドキュメント リテラル。<?xml version="1.0"?>で始まるXML リテラルは XML ドキュメントとして作成できると。ほほぅ。
Option Strict On
Option Infer On
Public Class Program
Public Shared Sub Main()
Dim torikobito As XDocument = _
<?xml version="1.0"?>
<WankumaMember>
<ID>76</ID>
<Name>とりこびと</Name>
</WankumaMember>
Console.WriteLine(torikobito)
End Sub
End Class
変数 torikobito の型はSystem.Xml.Linq.XDocument型になっていますね。このXML ドキュメント リテラルは XDocument クラスのインスタンスを返すと。
ちなみに、XMLの構文とはいえ、Visual Basic のXML リテラルはXML 1.0 仕様のすべてをサポートするわけではないようですね。
文字数とか。
XML リテラルと XML 1.0 仕様によると
- XML リテラルの中にドキュメント型定義 (DTD: Document Type Definition) は指定できません。
- XML ドキュメント リテラルは、XML ドキュメント宣言から始める必要があります。
- XML リテラルでは、1 行に 65,535 を越える文字は使用できません。
- XML 名前空間プレフィックス、要素名、および属性名では、1,024 文字を越える文字は使用できません。
XML のサポートは、まだまだいろんな機能があるようです。んがっ!時間が足りない。orz
次回は埋め込み式あたりを。