XmlReaderSettings.DtdProcessing Özellik

Tanım

DTD'lerin işlenmesini belirleyen bir değer alır veya ayarlar.

public:
 property System::Xml::DtdProcessing DtdProcessing { System::Xml::DtdProcessing get(); void set(System::Xml::DtdProcessing value); };
public System.Xml.DtdProcessing DtdProcessing { get; set; }
member this.DtdProcessing : System.Xml.DtdProcessing with get, set
Public Property DtdProcessing As DtdProcessing

Özellik Değeri

DTD'lerin işlenmesini belirleyen numaralandırma değerlerinden biri. Varsayılan değer: Prohibit.

Örnekler

Aşağıdaki örnek, DTD dosyası kullanarak xml dosyasını doğrular.

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

public class Sample {

  public static void Main() {

    // Set the validation settings.
    XmlReaderSettings settings = new XmlReaderSettings();
    settings.DtdProcessing = DtdProcessing.Parse;
    settings.ValidationType = ValidationType.DTD;
    settings.ValidationEventHandler += new ValidationEventHandler (ValidationCallBack);

    // Create the XmlReader object.
    XmlReader reader = XmlReader.Create("itemDTD.xml", settings);

    // Parse the file.
    while (reader.Read());
  }

  // Display any validation errors.
  private static void ValidationCallBack(object sender, ValidationEventArgs e) {
    Console.WriteLine("Validation Error: {0}", e.Message);
  }
}
Imports System.Xml
Imports System.Xml.Schema
Imports System.IO

public class Sample 

  public shared sub Main() 

    ' Set the validation settings.
    Dim settings as XmlReaderSettings = new XmlReaderSettings()
    settings.DtdProcessing = DtdProcessing.Parse
    settings.ValidationType = ValidationType.DTD
    AddHandler settings.ValidationEventHandler, AddressOf ValidationCallBack
 
    ' Create the XmlReader object.
    Dim reader as XmlReader = XmlReader.Create("itemDTD.xml", settings)

    ' Parse the file. 
    while reader.Read()
    end while
    
  end sub

  ' Display any validation errors.
  private shared sub ValidationCallBack(sender as object, e as ValidationEventArgs) 
    Console.WriteLine("Validation Error: {0}", e.Message)
  end sub
end class

Örnek, girdi olarak dosyasını kullanır itemDTD.xml .

<!--XML file using a DTD-->
<!DOCTYPE store [
  <!ELEMENT store (item)*> 
  <!ELEMENT item (name,dept,price)>
  <!ATTLIST item type CDATA #REQUIRED>
  <!ELEMENT name (#PCDATA)>
  <!ELEMENT price (#PCDATA)>]>
<store>
  <item type="supplies"  ISBN="2-3631-4">
    <name>paint</name>
    <price>16.95</price>
  </item>
</store>

Açıklamalar

Belge türü tanımı (DTD) doğrulaması, W3C Genişletilebilir Biçimlendirme Dili (XML) 1.0 (dördüncü sürüm) önerisinde tanımlanan geçerlilik kısıtlamaları kullanılarak uygulanır. DTD'ler, uyumlu XML belgelerinin yapısını ve söz dizimini açıklamak için resmi bir dil bilgisi kullanır; XML belgesi için izin verilen içeriği ve değerleri belirtir.

DtdProcessing özelliği aşağıdaki değerlerden birine sahip olabilir:

DTD'ye karşı doğrulama gerçekleştirmek için, XmlReader xml belgesinin DOCTYPE bildiriminde tanımlanan DTD'yi kullanır. DOCTYPE bildirimi satır içi bir DTD'ye işaret edebilir veya bir dış DTD dosyasına başvuru olabilir. DTD'ye karşı XML dosyasını doğrulamak için:

Important

Eğer DtdProcessing özelliği DtdProcessing.Ignore olarak ayarlanırsa, XmlReader DTD'leri raporlamaz. Bu, DTD/DOCTYPE'ın çıkışta kaybolacağı anlamına gelir.

Şunlara uygulanır