次の方法で共有


XmlDocument.CreateDocumentType(String, String, String, String) メソッド

定義

新しい XmlDocumentType オブジェクトを返します。

public:
 virtual System::Xml::XmlDocumentType ^ CreateDocumentType(System::String ^ name, System::String ^ publicId, System::String ^ systemId, System::String ^ internalSubset);
public virtual System.Xml.XmlDocumentType CreateDocumentType (string name, string? publicId, string? systemId, string? internalSubset);
public virtual System.Xml.XmlDocumentType CreateDocumentType (string name, string publicId, string systemId, string internalSubset);
abstract member CreateDocumentType : string * string * string * string -> System.Xml.XmlDocumentType
override this.CreateDocumentType : string * string * string * string -> System.Xml.XmlDocumentType
Public Overridable Function CreateDocumentType (name As String, publicId As String, systemId As String, internalSubset As String) As XmlDocumentType

パラメーター

name
String

ドキュメントの種類の名前。

publicId
String

ドキュメントの種類のパブリック ID または null。 パブリック URI およびシステム ID を指定して、外部 DTD サブセットの場所を特定できます。

systemId
String

ドキュメントの種類のシステム ID または null。 外部 DTD サブセットのファイル位置の URL を指定します。

internalSubset
String

ドキュメントの種類の DTD 内部サブセットまたは null

戻り値

新しい XmlDocumentType

次の例では、DocumentType ノードを作成し、XML ドキュメントに追加します。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   //Create the XmlDocument.
   XmlDocument^ doc = gcnew XmlDocument;
   
   //Create a document type node and  
   //add it to the document.
   XmlDocumentType^ doctype;
   doctype = doc->CreateDocumentType( "book", nullptr, nullptr, "<!ELEMENT book ANY>" );
   doc->AppendChild( doctype );
   
   //Create the root element and 
   //add it to the document.
   doc->AppendChild( doc->CreateElement( "book" ) );
   Console::WriteLine( "Display the modified XML..." );
   doc->Save( Console::Out );
}

using System;
using System.IO;
using System.Xml;

public class Sample
{
  public static void Main()
  {
    //Create the XmlDocument.
    XmlDocument doc = new XmlDocument();

    //Create a document type node and
    //add it to the document.
    XmlDocumentType doctype;
    doctype = doc.CreateDocumentType("book", null, null, "<!ELEMENT book ANY>");
    doc.AppendChild(doctype);

    //Create the root element and
    //add it to the document.
    doc.AppendChild(doc.CreateElement("book"));

    Console.WriteLine("Display the modified XML...");
    doc.Save(Console.Out);
  }
}
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        'Create the XmlDocument.
        Dim doc As New XmlDocument()
        
        'Create a document type node and  
        'add it to the document.
        Dim doctype As XmlDocumentType
        doctype = doc.CreateDocumentType("book", Nothing, Nothing, "<!ELEMENT book ANY>")
        doc.AppendChild(doctype)
        
        'Create the root element and 
        'add it to the document.
        doc.AppendChild(doc.CreateElement("book"))
        
        Console.WriteLine("Display the modified XML...")
        doc.Save(Console.Out)
    End Sub
End Class

注釈

返されるノードには、解析とEntitiesNotationsコレクションが含まれます。

このメソッドは、ドキュメントのコンテキストで新しいオブジェクトを作成しますが、ドキュメント ツリーに新しいオブジェクトを自動的に追加することはありません。 新しいオブジェクトを追加するには、ノード挿入メソッドのいずれかを明示的に呼び出す必要があります。

W3C Extensible Markup Language (XML) 1.0 の推奨事項に従って、DocumentType ノードは Document ノード内でのみ許可されます。 各 XmlDocument ノードに含めることができる DocumentType ノードは 1 つだけです。 DocumentType ノードは、 のルート要素の XmlDocument 前にも挿入する必要があります (ドキュメントにルート要素が既にある場合は、DocumentType ノードを追加できません)。 渡されたパラメーターを組み合わせて有効な XmlDocumentTypeを構築しない場合は、例外がスローされます。

注意 (継承者)

このメソッドには継承要求があります。 メソッドをオーバーライドするには、完全信頼が CreateDocumentType 必要です。

このメソッドは、ドキュメント オブジェクト モデル (DOM) に対する Microsoft の拡張機能です。

適用対象