XmlReaderSettings.DtdProcessing Propriété

Définition

Obtient ou définit une valeur qui détermine le traitement des DTD.

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

Valeur de propriété

Une des valeurs d’énumération qui détermine le traitement des DTD. La valeur par défaut est Prohibit.

Exemples

L’exemple suivant valide un fichier XML à l’aide d’un fichier DTD.

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

L’exemple utilise le itemDTD.xml fichier comme entrée.

<!--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>

Remarques

La validation de définition de type de document (DTD) est implémentée à l’aide des contraintes de validité définies dans la recommandation W3C Extensible Markup Language (XML) 1.0 (quatrième édition). Les DTD utilisent une grammaire formelle pour décrire la structure et la syntaxe des documents XML conformes ; ils spécifient le contenu et les valeurs autorisés pour le document XML.

La DtdProcessing propriété peut avoir l’une des valeurs suivantes :

Pour effectuer la validation par rapport à un DTD, le XmlReader utilise le DTD défini dans la déclaration DOCTYPE d’un document XML. La déclaration DOCTYPE peut pointer vers un DTD inline ou être une référence à un fichier DTD externe. Pour valider un fichier XML par rapport à un DTD :

Important

Si la propriété DtdProcessing est définie sur DtdProcessing.Ignore, alors XmlReader ne rapportera pas les DTD. Cela signifie que le DTD/DOCTYPE sera perdu en sortie.

S’applique à