XmlSchemaComplexType クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
W3C (World Wide Web Consortium) によって指定された XML スキーマの complexType
要素を表します。 このクラスは、要素の属性およびコンテンツのセットを決定する複合型を定義します。
public ref class XmlSchemaComplexType : System::Xml::Schema::XmlSchemaType
public class XmlSchemaComplexType : System.Xml.Schema.XmlSchemaType
type XmlSchemaComplexType = class
inherit XmlSchemaType
Public Class XmlSchemaComplexType
Inherits XmlSchemaType
- 継承
例
次の例では、要素を complexType
作成します。
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
using namespace System::Xml::Schema;
class XmlSchemaExamples
{
public:
static void Main()
{
XmlSchema^ schema = gcnew XmlSchema();
// <xs:element name="stringElementWithAnyAttribute">
XmlSchemaElement^ element = gcnew XmlSchemaElement();
schema->Items->Add(element);
element->Name = "stringElementWithAnyAttribute";
// <xs:complexType>
XmlSchemaComplexType^ complexType = gcnew XmlSchemaComplexType();
element->SchemaType = complexType;
// <xs:simpleContent>
XmlSchemaSimpleContent^ simpleContent = gcnew XmlSchemaSimpleContent();
complexType->ContentModel = simpleContent;
// <extension base= "xs:string">
XmlSchemaSimpleContentExtension^ extension = gcnew XmlSchemaSimpleContentExtension();
simpleContent->Content = extension;
extension->BaseTypeName = gcnew XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:anyAttribute namespace="##targetNamespace"/>
XmlSchemaAnyAttribute^ anyAttribute = gcnew XmlSchemaAnyAttribute();
extension->AnyAttribute = anyAttribute;
anyAttribute->Namespace = "##targetNamespace";
XmlSchemaSet^ schemaSet = gcnew XmlSchemaSet();
schemaSet->ValidationEventHandler += gcnew ValidationEventHandler(ValidationCallbackOne);
schemaSet->Add(schema);
schemaSet->Compile();
XmlSchema^ compiledSchema;
for each (XmlSchema^ schema1 in schemaSet->Schemas())
{
compiledSchema = schema1;
}
XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager(gcnew NameTable());
nsmgr->AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
compiledSchema->Write(Console::Out, nsmgr);
}
static void ValidationCallbackOne(Object^ sender, ValidationEventArgs^ args)
{
Console::WriteLine(args->Message);
}
};
int main()
{
XmlSchemaExamples::Main();
return 0;
};
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples
{
public static void Main()
{
XmlSchema schema = new XmlSchema();
// <xs:element name="stringElementWithAnyAttribute">
XmlSchemaElement element = new XmlSchemaElement();
schema.Items.Add(element);
element.Name = "stringElementWithAnyAttribute";
// <xs:complexType>
XmlSchemaComplexType complexType = new XmlSchemaComplexType();
element.SchemaType = complexType;
// <xs:simpleContent>
XmlSchemaSimpleContent simpleContent = new XmlSchemaSimpleContent();
complexType.ContentModel = simpleContent;
// <extension base= "xs:string">
XmlSchemaSimpleContentExtension extension = new XmlSchemaSimpleContentExtension();
simpleContent.Content = extension;
extension.BaseTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
// <xs:anyAttribute namespace="##targetNamespace"/>
XmlSchemaAnyAttribute anyAttribute = new XmlSchemaAnyAttribute();
extension.AnyAttribute = anyAttribute;
anyAttribute.Namespace = "##targetNamespace";
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);
}
}
Imports System.Xml
Imports System.Xml.Schema
Class XMLSchemaExamples
Public Shared Sub Main()
Dim schema As New XmlSchema()
' <xs:element name="stringElementWithAnyAttribute">
Dim element As New XmlSchemaElement()
schema.Items.Add(element)
element.Name = "stringElementWithAnyAttribute"
' <xs:complexType>
Dim complexType As New XmlSchemaComplexType()
element.SchemaType = complexType
' <xs:simpleContent>
Dim simpleContent As New XmlSchemaSimpleContent()
complexType.ContentModel = simpleContent
' <extension base="xs:string">
Dim extension As New XmlSchemaSimpleContentExtension()
simpleContent.Content = extension
extension.BaseTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
' <xs:anyAttribute namespace="##targetNamespace"/>
Dim anyAttribute As New XmlSchemaAnyAttribute()
extension.AnyAttribute = anyAttribute
anyAttribute.Namespace = "##targetNamespace"
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
Public Shared Sub ValidationCallbackOne(ByVal sender As Object, ByVal args As ValidationEventArgs)
Console.WriteLine(args.Message)
End Sub
End Class
前のコード例では、次の XML ファイルを使用します。
<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="stringElementWithAnyAttribute">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:anyAttribute namespace="##targetNamespace"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:schema>
注釈
要素は、その要素の構造、コンテンツ、および属性を complexType
定義する要素を参照する type 属性を使用して宣言できます。
コンストラクター
XmlSchemaComplexType() |
XmlSchemaComplexType クラスの新しいインスタンスを初期化します。 |
プロパティ
Annotation |
|
AnyAttribute |
複合型の XmlSchemaAnyAttribute コンポーネントの値を取得または設定します。 |
Attributes |
複合型の属性のコレクションを取得します。 |
AttributeUses |
この複合型およびその基本型について、コンパイル済みのすべての属性のコレクションを取得します。 |
AttributeWildcard |
この複合型およびその基本型について、 |
BaseSchemaType |
互換性のために残されています。
互換性のために残されています。
互換性のために残されています。
組み込み XML スキーマ定義言語 (XSD: XML Schema Definition Language) データ型、simpleType 要素、または complexType 要素のコンパイル後のオブジェクト型を取得します。 これは、スキーマ コンパイル後の infoset プロパティです。 (継承元 XmlSchemaType) |
BaseXmlSchemaType |
このスキーマ型の基本型に対応するコンパイル後の値を取得します。 (継承元 XmlSchemaType) |
Block |
|
BlockResolved |
型がスキーマ検証後の情報セット (infoset) にコンパイルされた後の値を取得します。 この値は、インスタンス ドキュメントで |
ContentModel |
この複合型について、コンパイル後の XmlSchemaContentModel を取得または設定します。 |
ContentType |
コンパイル後の値を保持する複合型のコンテンツ モデルを取得します。 |
ContentTypeParticle |
ContentType パーティクルのコンパイル後の値を保持するパーティクルを取得します。 |
Datatype |
複合型のデータ型に対応するコンパイル後の値を取得します。 (継承元 XmlSchemaType) |
DerivedBy |
この要素が基本型から派生された方法に関するコンパイル後の情報を取得します。 (継承元 XmlSchemaType) |
Final |
さらに派生が可能かどうかを示す、型派生の final 属性を取得または設定します。 (継承元 XmlSchemaType) |
FinalResolved |
Final プロパティのコンパイル後の値を取得します。 (継承元 XmlSchemaType) |
Id |
文字列 ID を取得または設定します。 (継承元 XmlSchemaAnnotated) |
IsAbstract |
|
IsMixed |
複合型が混合コンテンツ モデル (コンテンツ内のマークアップ) を持つかどうかを決定する情報を取得または設定します。 |
LineNumber |
|
LinePosition |
|
Name |
型の名前を取得します。値の設定も可能です。 (継承元 XmlSchemaType) |
Namespaces |
このスキーマ オブジェクトと一緒に使用する XmlSerializerNamespaces を取得または設定します。 (継承元 XmlSchemaObject) |
Parent |
この XmlSchemaObject の親を取得または設定します。 (継承元 XmlSchemaObject) |
Particle |
XmlSchemaGroupRef、XmlSchemaChoice、XmlSchemaAll、または XmlSchemaSequence の各クラスの 1 つとして、コンポジター型を取得または設定します。 |
QualifiedName |
この型の |
SourceUri |
スキーマを読み込んだファイルのソース位置を取得または設定します。 (継承元 XmlSchemaObject) |
TypeCode |
型の XmlTypeCode を取得します。 (継承元 XmlSchemaType) |
UnhandledAttributes |
現在のスキーマのターゲット名前空間に属さない、修飾された属性を取得または設定します。 (継承元 XmlSchemaAnnotated) |
メソッド
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |