Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die XDR (XML-Data Reduced)-Schemaüberprüfung wird unter Verwendung von Gültigkeitsbeschränkungen implementiert, die in den Angaben zu MSXML (Microsoft XML Parser)-Schemas definiert sind. XmlValidatingReader verwendet die Namespacedeklaration x-schema: eines XML-Dokuments um festzulegen, dass die Überprüfung anhand eines XDR-Schemas erfolgen soll. Im folgenden Beispiel ist <HeadCount xmlns='x-schema:HeadCount.xdr'> das Stammelement der Datendatei.
Im folgenden Codebeispiel wird ein XmlValidatingReader erstellt, der XmlTextReader übernimmt. Die Eingabedatei HeadCount.xml wird anhand des XDR-Schemas HeadCount.xdr überprüft.
Imports System
Imports System.IO
Imports System.Xml
Imports System.Xml.Schema
public class ValidationSample
public shared sub Main()
Dim tr As XmlTextReader = new XmlTextReader("HeadCount.xml")
Dim vr As XmlValidatingReader = new XmlValidatingReader(tr)
vr.ValidationType = ValidationType.XDR
AddHandler vr.ValidationEventHandler, AddressOf ValidationCallback
while(vr.Read())
end while
Console.WriteLine("Validation finished")
end sub
public shared sub ValidationCallBack(sender As object, args as ValidationEventArgs)
Console.WriteLine("***Validation error")
Console.WriteLine("Severity:{0}", args.Severity)
Console.WriteLine("Message:{0}", args.Message)
end sub
end class
[C#]
using System;
using System.IO;
using System.Xml;
using System.Xml.Schema;
namespace ValidationSample
{
class Sample
{
public static void Main()
{
XmlTextReader tr = new XmlTextReader("HeadCount.xml");
XmlValidatingReader vr = new XmlValidatingReader(tr);
vr.ValidationType = ValidationType.XDR;
vr.ValidationEventHandler += new ValidationEventHandler (ValidationHandler);
while(vr.Read());
Console.WriteLine("Validation finished");
}
public static void ValidationHandler(object sender, ValidationEventArgs args)
{
Console.WriteLine("***Validation error");
Console.WriteLine("\tSeverity:{0}", args.Severity);
Console.WriteLine("\tMessage :{0}", args.Message);
}
}
}
Im folgenden Beispiel wird der Inhalt der zu überprüfenden Eingabedatei HeadCount.xml dargestellt.
<HeadCount xmlns='x-schema:HeadCount.xdr'>
<Name>Waldo Pepper</Name>
<Name>Red Pepper</Name>
</HeadCount>
Im folgenden Beispiel wird der Inhalt der XDR-Schemadatei HeadCount.xdr dargestellt, die zur Überprüfung herangezogen wird.
<Schema xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes">
<ElementType name="Name" content="textOnly"/>
<AttributeType name="Bldg" default="2"/>
<ElementType name="HeadCount" content="eltOnly">
<element type="Name"/>
<attribute type="Bldg"/>
</ElementType>
</Schema>
Siehe auch
XML-Gültigkeitsprüfung mit XmlValidatingReader | Gültigkeitsprüfung von XML mit Schemas