XmlSchemaComplexContentRestrictionとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > XmlSchemaComplexContentRestrictionの意味・解説 

XmlSchemaComplexContentRestriction クラス

W3C (World Wide Web Consortium) で指定されXML スキーマrestriction 要素表します。このクラスは、制限によって派生した複合コンテンツ モデルを持つ複合型使用されます。複合型コンテンツを、継承される複合型サブセット制限します。

名前空間: System.Xml.Schema
アセンブリ: System.Xml (system.xml.dll 内)
構文構文

Public Class XmlSchemaComplexContentRestriction
    Inherits XmlSchemaContent
Dim instance As XmlSchemaComplexContentRestriction
public class XmlSchemaComplexContentRestriction
 : XmlSchemaContent
public ref class XmlSchemaComplexContentRestriction
 : public XmlSchemaContent
public class XmlSchemaComplexContentRestriction
 extends XmlSchemaContent
public class XmlSchemaComplexContentRestriction
 extends XmlSchemaContent
使用例使用例

制限により拡張されcomplexContent 要素作成する例を次に示します

Option Explicit On
Option Strict On

Imports System
Imports System.Xml
Imports System.Xml.Schema

Class XMLSchemaExamples

    Public Shared Sub Main()

        Dim schema As New
 XmlSchema()

        ' <xs:complexType name="phoneNumber">
        Dim phoneNumber As New
 XmlSchemaComplexType()
        phoneNumber.Name = "phoneNumber"

        ' <xs:sequence>
        Dim phoneNumberSequence As New
 XmlSchemaSequence()

        ' <xs:element name="areaCode"/>
        Dim areaCode1 As New
 XmlSchemaElement()
        areaCode1.MinOccurs = 0
        areaCode1.MaxOccursString = "1"
        areaCode1.Name = "areaCode"
        phoneNumberSequence.Items.Add(areaCode1)

        ' <xs:element name="prefix"/>
        Dim prefix1 As New
 XmlSchemaElement()
        prefix1.MinOccurs = 1
        prefix1.MaxOccursString = "1"
        prefix1.Name = "prefix"
        phoneNumberSequence.Items.Add(prefix1)

        ' <xs:element name="number"/>
        Dim number1 As New
 XmlSchemaElement()
        number1.MinOccurs = 1
        number1.MaxOccursString = "1"
        number1.Name = "number"
        phoneNumberSequence.Items.Add(number1)

        phoneNumber.Particle = phoneNumberSequence

        schema.Items.Add(phoneNumber)

        ' <xs:complexType name="localPhoneNumber">
        Dim localPhoneNumber As New
 XmlSchemaComplexType()
        localPhoneNumber.Name = "localPhoneNumber"

        ' <xs:complexContent>
        Dim complexContent As New
 XmlSchemaComplexContent()

        ' <xs:restriction base="phoneNumber">
        Dim restriction As New
 XmlSchemaComplexContentRestriction()
        restriction.BaseTypeName = New XmlQualifiedName("phoneNumber",
 "")

        ' <xs:sequence>
        Dim sequence2 As New
 XmlSchemaSequence()

        ' <xs:element name="areaCode" minOccurs="0"/>
        Dim areaCode2 As New
 XmlSchemaElement()
        areaCode2.MinOccurs = 0
        areaCode2.MaxOccursString = "1"
        areaCode2.Name = "areaCode"
        sequence2.Items.Add(areaCode2)

        ' <xs:element name="prefix"/>
        Dim prefix2 As New
 XmlSchemaElement()
        prefix2.MinOccurs = 1
        prefix2.MaxOccursString = "1"
        prefix2.Name = "prefix"
        sequence2.Items.Add(prefix2)

        ' <xs:element name="number"/>
        Dim number2 As New
 XmlSchemaElement()
        number2.MinOccurs = 1
        number2.MaxOccursString = "1"
        number2.Name = "number"
        sequence2.Items.Add(number2)

        restriction.Particle = sequence2
        complexContent.Content = restriction
        localPhoneNumber.ContentModel = complexContent

        schema.Items.Add(localPhoneNumber)

        Dim schemaSet As New
 XmlSchemaSet()
        AddHandler schemaSet.ValidationEventHandler, AddressOf
 ValidationCallbackOne

        schemaSet.Add(schema)
        schemaSet.Compile()

        Dim compiledSchema As XmlSchema = Nothing

        For Each schema1 As
 XmlSchema In schemaSet.Schemas()
            compiledSchema = schema1
        Next

        Dim nsmgr As New
 XmlNamespaceManager(New NameTable())
        nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema")
        compiledSchema.Write(Console.Out, nsmgr)
    End Sub 'Main

    Public Shared Sub ValidationCallbackOne(ByVal
 sender As Object, ByVal
 args As ValidationEventArgs)

        Console.WriteLine(args.Message)
    End Sub 'ValidationCallbackOne
End Class 'XMLSchemaExamples
using System;
using System.Xml;
using System.Xml.Schema;

class XMLSchemaExamples
{
    public static void Main()
    {

        XmlSchema schema = new XmlSchema();

        // <xs:complexType name="phoneNumber">
        XmlSchemaComplexType phoneNumber = new XmlSchemaComplexType();
        phoneNumber.Name = "phoneNumber";

        // <xs:sequence>
        XmlSchemaSequence phoneNumberSequence = new XmlSchemaSequence();

        // <xs:element name="areaCode"/>
        XmlSchemaElement areaCode1 = new XmlSchemaElement();
        areaCode1.MinOccurs = 0;
        areaCode1.MaxOccursString = "1";
        areaCode1.Name = "areaCode";
        phoneNumberSequence.Items.Add(areaCode1);

        // <xs:element name="prefix"/>
        XmlSchemaElement prefix1 = new XmlSchemaElement();
        prefix1.MinOccurs = 1;
        prefix1.MaxOccursString = "1";
        prefix1.Name = "prefix";
        phoneNumberSequence.Items.Add(prefix1);

        // <xs:element name="number"/>
        XmlSchemaElement number1 = new XmlSchemaElement();
        number1.MinOccurs = 1;
        number1.MaxOccursString = "1";
        number1.Name = "number";
        phoneNumberSequence.Items.Add(number1);

        phoneNumber.Particle = phoneNumberSequence;

        schema.Items.Add(phoneNumber);

        // <xs:complexType name="localPhoneNumber">
        XmlSchemaComplexType localPhoneNumber = new XmlSchemaComplexType();
        localPhoneNumber.Name = "localPhoneNumber";

        // <xs:complexContent>
        XmlSchemaComplexContent complexContent = new XmlSchemaComplexContent();

        // <xs:restriction base="phoneNumber">
        XmlSchemaComplexContentRestriction restriction = new XmlSchemaComplexContentRestriction();
        restriction.BaseTypeName = new XmlQualifiedName("phoneNumber",
 "");

        // <xs:sequence>
        XmlSchemaSequence sequence2 = new XmlSchemaSequence();

        // <xs:element name="areaCode" minOccurs="0"/>
        XmlSchemaElement areaCode2 = new XmlSchemaElement();
        areaCode2.MinOccurs = 0;
        areaCode2.MaxOccursString = "1";
        areaCode2.Name = "areaCode";
        sequence2.Items.Add(areaCode2);

        // <xs:element name="prefix"/>
        XmlSchemaElement prefix2 = new XmlSchemaElement();
        prefix2.MinOccurs = 1;
        prefix2.MaxOccursString = "1";
        prefix2.Name = "prefix";
        sequence2.Items.Add(prefix2);

        // <xs:element name="number"/>
        XmlSchemaElement number2 = new XmlSchemaElement();
        number2.MinOccurs = 1;
        number2.MaxOccursString = "1";
        number2.Name = "number";
        sequence2.Items.Add(number2);

        restriction.Particle = sequence2;
        complexContent.Content = restriction;
        localPhoneNumber.ContentModel = complexContent;

        schema.Items.Add(localPhoneNumber);

        XmlSchemaSet schemaSet = new XmlSchemaSet();
        schemaSet.ValidationEventHandler += new ValidationEventHandler(ValidationCallbackOne);
        schemaSet.Add(schema);
        schemaSet.Compile();

        XmlSchema compiledSchema = null;

        foreach (XmlSchema schema1 in schemaSet.Schemas())
        {
            compiledSchema = schema1;
        }

        XmlNamespaceManager nsmgr = new XmlNamespaceManager(new
 NameTable());
        nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
        compiledSchema.Write(Console.Out, nsmgr);
    }

    public static void ValidationCallbackOne(object
 sender, ValidationEventArgs args)
    {
        Console.WriteLine(args.Message);
    }
}

前述コード例に対して生成される XML ファイル次に示します

<?xml version="1.0" encoding="IBM437"?>
<xs:schema  xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:complexType name="phoneNumber">
        <xs:sequence>
            <xs:element name="areaCode"
 minOccurs="0" maxOccurs="1"/>
            <xs:element name="prefix"
 minOccurs="1" maxOccurs="1"/>
            <xs:element name="number"
 minOccurs="1" maxOccurs="1"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="localPhoneNumber">
        <xs:complexContent mixed="false">
            <xs:restriction base="phoneNumber">
                <xs:sequence>
                    <xs:element name="areaCode"
 minOccurs="0" maxOccurs="1"/>
                    <xs:element name="prefix"
 minOccurs="1" maxOccurs="1"/>
                    <xs:element name="number"
 minOccurs="1" maxOccurs="1"/>
                </xs:sequence>
            </xs:restriction>
        </xs:complexContent>
    </xs:complexType>
    
</xs:schema>
継承階層継承階層
System.Object
   System.Xml.Schema.XmlSchemaObject
     System.Xml.Schema.XmlSchemaAnnotated
       System.Xml.Schema.XmlSchemaContent
        System.Xml.Schema.XmlSchemaComplexContentRestriction
スレッド セーフスレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバ場合は、スレッド セーフであるとは限りません。
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
XmlSchemaComplexContentRestriction メンバ
System.Xml.Schema 名前空間

XmlSchemaComplexContentRestriction コンストラクタ


XmlSchemaComplexContentRestriction プロパティ


パブリック プロパティパブリック プロパティ

  名前 説明
パブリック プロパティ Annotation  Annotation プロパティ取得または設定します。 ( XmlSchemaAnnotated から継承されます。)
パブリック プロパティ Id  文字列 ID取得または設定します。 ( XmlSchemaAnnotated から継承されます。)
パブリック プロパティ LineNumber  schema 要素参照するファイル行番号取得または設定します。 ( XmlSchemaObject から継承されます。)
パブリック プロパティ LinePosition  schema 要素参照するファイル行番号取得または設定します。 ( XmlSchemaObject から継承されます。)
パブリック プロパティ Namespaces  このスキーマ オブジェクト一緒に使用する XmlSerializerNamespaces を取得または設定します。 ( XmlSchemaObject から継承されます。)
パブリック プロパティ Parent  この XmlSchemaObject の親を取得または設定します。 ( XmlSchemaObject から継承されます。)
パブリック プロパティ SourceUri  スキーマ読み込んだファイルソース位置取得または設定します。 ( XmlSchemaObject から継承されます。)
パブリック プロパティ UnhandledAttributes  現在のスキーマターゲット名前空間属さない修飾され属性取得または設定します。 ( XmlSchemaAnnotated から継承されます。)
参照参照

関連項目

XmlSchemaComplexContentRestriction クラス
System.Xml.Schema 名前空間

XmlSchemaComplexContentRestriction メソッド


XmlSchemaComplexContentRestriction メンバ

W3C (World Wide Web Consortium) で指定されXML スキーマrestriction 要素表します。このクラスは、制限によって派生した複合コンテンツ モデルを持つ複合型使用されます。複合型コンテンツを、継承される複合型サブセット制限します。

XmlSchemaComplexContentRestriction データ型公開されるメンバを以下の表に示します


パブリック コンストラクタパブリック コンストラクタ
  名前 説明
パブリック メソッド XmlSchemaComplexContentRestriction XmlSchemaComplexContentRestriction クラス新しインスタンス初期化します。
パブリック プロパティパブリック プロパティ
  名前 説明
パブリック プロパティ Annotation  Annotation プロパティ取得または設定します。(XmlSchemaAnnotated から継承されます。)
パブリック プロパティ Id  文字列 ID取得または設定します。(XmlSchemaAnnotated から継承されます。)
パブリック プロパティ LineNumber  schema 要素参照するファイル行番号取得または設定します。(XmlSchemaObject から継承されます。)
パブリック プロパティ LinePosition  schema 要素参照するファイル行番号取得または設定します。(XmlSchemaObject から継承されます。)
パブリック プロパティ Namespaces  このスキーマ オブジェクト一緒に使用する XmlSerializerNamespaces を取得または設定します。(XmlSchemaObject から継承されます。)
パブリック プロパティ Parent  この XmlSchemaObject の親を取得または設定します。(XmlSchemaObject から継承されます。)
パブリック プロパティ SourceUri  スキーマ読み込んだファイルソース位置取得または設定します。(XmlSchemaObject から継承されます。)
パブリック プロパティ UnhandledAttributes  現在のスキーマターゲット名前空間属さない修飾され属性取得または設定します。(XmlSchemaAnnotated から継承されます。)
パブリック メソッドパブリック メソッド
プロテクト メソッドプロテクト メソッド
参照参照

関連項目

XmlSchemaComplexContentRestriction クラス
System.Xml.Schema 名前空間


このページでは「.NET Framework クラス ライブラリ リファレンス」からXmlSchemaComplexContentRestrictionを検索した結果を表示しています。
Weblioに収録されているすべての辞書からXmlSchemaComplexContentRestrictionを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からXmlSchemaComplexContentRestriction を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「XmlSchemaComplexContentRestriction」の関連用語

XmlSchemaComplexContentRestrictionのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



XmlSchemaComplexContentRestrictionのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS