次の方法で共有


XmlSchemaCollection クラス

定義

注意事項

Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. https://go.microsoft.com/fwlink/?linkid=14202

注意事項

XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation.

注意事項

XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation instead.

注意事項

Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. http://go.microsoft.com/fwlink/?linkid=14202

XML スキーマ定義言語 (XSD: XML Schema Definition Language) スキーマおよび XDR (XML-Data Reduced) スキーマのキャッシュを格納します。 XmlSchemaCollection クラスは廃止されています。 代わりに、XmlSchemaSet を使用してください。

public ref class XmlSchemaCollection sealed : System::Collections::ICollection
[System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. https://go.microsoft.com/fwlink/?linkid=14202")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
[System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation.")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
[System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation instead.")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
[System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. http://go.microsoft.com/fwlink/?linkid=14202")]
public sealed class XmlSchemaCollection : System.Collections.ICollection
public sealed class XmlSchemaCollection : System.Collections.ICollection
[<System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. https://go.microsoft.com/fwlink/?linkid=14202")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
[<System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation.")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
[<System.Obsolete("XmlSchemaCollection has been deprecated. Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation instead.")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
[<System.Obsolete("Use System.Xml.Schema.XmlSchemaSet for schema compilation and validation. http://go.microsoft.com/fwlink/?linkid=14202")>]
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
type XmlSchemaCollection = class
    interface ICollection
    interface IEnumerable
Public NotInheritable Class XmlSchemaCollection
Implements ICollection
継承
XmlSchemaCollection
属性
実装

次の例では、. を使用して XML ドキュメントを XmlSchemaCollection検証します。

#using <System.Xml.dll>
#using <System.dll>

using namespace System;
using namespace System::Xml;
using namespace System::Xml::Schema;
using namespace System::IO;
public ref class ValidXSD
{
public:
   static void main()
   {
      XmlSchemaCollection^ sc = gcnew XmlSchemaCollection;
      sc->ValidationEventHandler += gcnew ValidationEventHandler( ValidationCallBack );
      sc->Add( nullptr, "books.xsd" );
      if ( sc->Count > 0 )
      {
         XmlTextReader^ tr = gcnew XmlTextReader( "notValidXSD.xml" );
         XmlValidatingReader^ rdr = gcnew XmlValidatingReader( tr );
         rdr->ValidationType = ValidationType::Schema;
         rdr->Schemas->Add( sc );
         rdr->ValidationEventHandler += gcnew ValidationEventHandler( ValidationCallBack );
         while ( rdr->Read() )
                  ;
      }
   }


private:
   static void ValidationCallBack( Object^ /*sender*/, ValidationEventArgs^ e )
   {
      Console::WriteLine( "Validation Error: {0}", e->Message );
   }

};

int main()
{
   ValidXSD::main();
}
using System;
using System.Xml;
using System.Xml.Schema;
using System.IO;

public class ValidXSD {

  public static void Main() {
    XmlSchemaCollection sc = new XmlSchemaCollection();
    sc.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
    sc.Add(null, "books.xsd");

    if(sc.Count > 0)
    {
      XmlTextReader tr = new XmlTextReader("notValidXSD.xml");
      XmlValidatingReader rdr = new XmlValidatingReader(tr);

      rdr.ValidationType = ValidationType.Schema;
      rdr.Schemas.Add(sc);
      rdr.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack);
      while (rdr.Read());
    }
  }

  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 ValidXSD 

  public shared sub Main() 
    Dim sc as XmlSchemaCollection = new XmlSchemaCollection()
    AddHandler sc.ValidationEventHandler, AddressOf ValidationCallBack
    sc.Add(nothing, "books.xsd")

    if(sc.Count > 0)
      Dim tr as XmlTextReader = new XmlTextReader("notValidXSD.xml")
      Dim rdr as XmlValidatingReader = new XmlValidatingReader(tr)

      rdr.ValidationType = ValidationType.Schema
      rdr.Schemas.Add(sc)
      AddHandler rdr.ValidationEventHandler, AddressOf ValidationCallBack
      while (rdr.Read())
      end while
    end if

  end sub

  private shared sub ValidationCallBack(sender as object, e as ValidationEventArgs) 
    Console.WriteLine("XSD Error: {0}", e.Message)
  end sub

end class

注釈

スキーマはメソッドを Add 使用して読み込まれ、その時点でスキーマは名前空間の Uniform Resource Identifier (URI) に関連付けられます。 XML スキーマの場合、これは通常、スキーマの targetNamespace プロパティになります。

このクラスは XML スキーマと XDR スキーマの両方を格納しますが、取得または返す XmlSchema メソッドとプロパティは XML スキーマにのみ適用されます。

このバージョンの製品では、XML スキーマ パート 1: 構造体 と XML スキーマ パート 2: データ型にある World Wide Web Consortium (W3C) XML スキーマに関する推奨事項がサポートされています。 XML スキーマは、そのスキーマ要素で W3C スキーマ名前空間 http://www.w3.org/2001/XMLSchema を参照する必要があります。 例については、 Add メソッドを参照してください。

XmlSchemaCollection は、効率的なデータ検証に XmlValidatingReader 使用できます。

重要

このクラスは XmlSchemaCollection Microsoft .NET Framework バージョン 2.0 では廃止されており、クラスにXmlSchemaSet置き換えられました。

コンストラクター

XmlSchemaCollection()

XmlSchemaCollection クラスの新しいインスタンスを初期化します。

XmlSchemaCollection(XmlNameTable)

XmlSchemaCollection を指定して、XmlNameTable クラスの新しいインスタンスを初期化します。 スキーマを読み込むときに、XmlNameTable が使用されます。

プロパティ

Count

このコレクションで定義されている名前空間の数を取得します。

Item[String]

指定した名前空間 URI に関連付けられている XmlSchema を取得します。

NameTable

新しいスキーマを読み込むときに、XmlNameTable で使用される既定の XmlSchemaCollection を取得します。

メソッド

Add(String, String)

指定した URL で配置されたスキーマをスキーマ コレクションに追加します。

Add(String, XmlReader)

XmlReader に格納されているスキーマをスキーマ コレクションに追加します。

Add(String, XmlReader, XmlResolver)

XmlReader に格納されているスキーマをスキーマ コレクションに追加します。 指定した XmlResolver は、外部リソースを解決するために使用します。

Add(XmlSchema)

XmlSchema をコレクションに追加します。

Add(XmlSchema, XmlResolver)

XmlSchema をコレクションに追加します。 指定した XmlResolver は、外部参照を解決するために使用します。

Add(XmlSchemaCollection)

指定したコレクションで定義されたすべての名前空間 (関連付けられたスキーマを含む) をこのコレクションに追加します。

Contains(String)

指定した名前空間を持つスキーマがコレクション内に存在するかどうかを示す値を取得します。

Contains(XmlSchema)

指定した XmlSchematargetNamespace がコレクション内に存在するかどうかを示す値を取得します。

CopyTo(XmlSchema[], Int32)

このコレクション内のすべての XmlSchema オブジェクトを、指定したインデックスから始まる指定した配列にコピーします。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
GetEnumerator()

スキーマのコレクションに対する "for each" スタイルの反復をサポートします。

GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

events

ValidationEventHandler

XDR および XML スキーマ検証エラーに関する情報を受信するためのイベント ハンドラーを設定します。

明示的なインターフェイスの実装

ICollection.CopyTo(Array, Int32)

このメンバーの詳細については、「CopyTo(XmlSchema[], Int32)」をご覧ください。

ICollection.Count

このメンバーの詳細については、「Count」をご覧ください。

ICollection.IsSynchronized

このメンバーの詳細については、「ICollection.IsSynchronized」をご覧ください。

ICollection.SyncRoot

このメンバーの詳細については、「ICollection.SyncRoot」をご覧ください。

IEnumerable.GetEnumerator()

このメンバーの詳細については、「GetEnumerator()」をご覧ください。

拡張メソッド

Cast<TResult>(IEnumerable)

IEnumerable の要素を、指定した型にキャストします。

OfType<TResult>(IEnumerable)

指定された型に基づいて IEnumerable の要素をフィルター処理します。

AsParallel(IEnumerable)

クエリの並列化を有効にします。

AsQueryable(IEnumerable)

IEnumerableIQueryable に変換します。

適用対象