単純なコンテンツ モデルを持つ単純型および複合型のクラス。W3C (World Wide Web Consortium) simpleContent 要素を表します。
この型のすべてのメンバの一覧については、XmlSchemaSimpleContent メンバ を参照してください。
System.Object
System.Xml.Schema.XmlSchemaObject
System.Xml.Schema.XmlSchemaAnnotated
System.Xml.Schema.XmlSchemaContentModel
System.Xml.Schema.XmlSchemaSimpleContent
Public Class XmlSchemaSimpleContent
Inherits XmlSchemaContentModel
[C#]
public class XmlSchemaSimpleContent : XmlSchemaContentModel
[C++]
public __gc class XmlSchemaSimpleContent : public
XmlSchemaContentModel
[JScript]
public class XmlSchemaSimpleContent extends XmlSchemaContentModel
スレッドセーフ
この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。
解説
XmlSchemaSimpleContent は、新しい型のコンテンツ モデルが文字データだけを含み、要素を含まないことを示すために使用されます。これは、 XmlSchemaSimpleContentExtension または XmlSchemaSimpleContentRestriction を通じて行われます。
使用例
[Visual Basic, C#, C++] XmlSchemaSimpleContent クラスの例を次に示します。
Option Explicit
Option Strict
Imports System
Imports System.Xml
Imports System.Xml.Schema
Class XMLSchemaExamples
Public Shared Sub Main()
Dim schema As New XmlSchema()
' <xs:element name="generalPrice">
Dim generalPrice As New XmlSchemaElement()
generalPrice.Name = "generalPrice"
' <xs:complexType>
Dim ct As New XmlSchemaComplexType()
' <xs:simpleContent>
Dim simpleContent As New XmlSchemaSimpleContent()
' <xs:extension base="xs:decimal">
Dim simpleContent_extension As New XmlSchemaSimpleContentExtension()
simpleContent_extension.BaseTypeName = New XmlQualifiedName("decimal", "http://www.w3.org/2001/XMLSchema")
' <xs:attribute name="currency" type="xs:string" />
Dim currency As New XmlSchemaAttribute()
currency.Name = "currency"
currency.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
simpleContent_extension.Attributes.Add(currency)
simpleContent.Content = simpleContent_extension
ct.ContentModel = simpleContent
generalPrice.SchemaType = ct
schema.Items.Add(generalPrice)
schema.Compile(AddressOf ValidationCallbackOne)
Dim nsmgr As New XmlNamespaceManager(New NameTable())
nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema")
schema.Write(Console.Out, nsmgr)
End Sub 'Main
Public Shared Sub ValidationCallbackOne(sender As Object, args As ValidationEventArgs)
Console.WriteLine(args.Message)
End Sub 'ValidationCallbackOne
End Class 'XMLSchemaExamples
[C#]
using System;
using System.Xml;
using System.Xml.Schema;
class XMLSchemaExamples {
public static void Main() {
XmlSchema schema = new XmlSchema();
// <xs:element name="generalPrice">
XmlSchemaElement generalPrice = new XmlSchemaElement();
generalPrice.Name = "generalPrice";
// <xs:complexType>
XmlSchemaComplexType ct = new XmlSchemaComplexType();
// <xs:simpleContent>
XmlSchemaSimpleContent simpleContent = new XmlSchemaSimpleContent();
// <xs:extension base="xs:decimal">
XmlSchemaSimpleContentExtension simpleContent_extension = new XmlSchemaSimpleContentExtension();
simpleContent_extension.BaseTypeName = new XmlQualifiedName("decimal", "http://www.w3.org/2001/XMLSchema");
// <xs:attribute name="currency" type="xs:string" />
XmlSchemaAttribute currency = new XmlSchemaAttribute();
currency.Name = "currency";
currency.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
simpleContent_extension.Attributes.Add(currency);
simpleContent.Content = simpleContent_extension;
ct.ContentModel = simpleContent;
generalPrice.SchemaType = ct;
schema.Items.Add(generalPrice);
schema.Compile(new ValidationEventHandler(ValidationCallbackOne));
XmlNamespaceManager nsmgr = new XmlNamespaceManager(new NameTable());
nsmgr.AddNamespace("xs", "http://www.w3.org/2001/XMLSchema");
schema.Write(Console.Out, nsmgr);
}
public static void ValidationCallbackOne(object sender, ValidationEventArgs args) {
Console.WriteLine(args.Message);
}
}
[C++]
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;
using namespace System::Xml::Schema;
__gc class XMLSchemaExamples {
public:
static void main() {
XmlSchema* schema = new XmlSchema();
// <xs:element name="generalPrice">
XmlSchemaElement* generalPrice = new XmlSchemaElement();
generalPrice->Name = S"generalPrice";
// <xs:complexType>
XmlSchemaComplexType* ct = new XmlSchemaComplexType();
// <xs:simpleContent>
XmlSchemaSimpleContent* simpleContent = new XmlSchemaSimpleContent();
// <xs:extension base="xs:decimal">
XmlSchemaSimpleContentExtension* simpleContent_extension = new XmlSchemaSimpleContentExtension();
simpleContent_extension->BaseTypeName = new XmlQualifiedName(S"decimal", S"http://www.w3.org/2001/XMLSchema");
// <xs:attribute name="currency" type="xs:string" />
XmlSchemaAttribute* currency = new XmlSchemaAttribute();
currency->Name = S"currency";
currency->SchemaTypeName = new XmlQualifiedName(S"string", S"http://www.w3.org/2001/XMLSchema");
simpleContent_extension->Attributes->Add(currency);
simpleContent->Content = simpleContent_extension;
ct->ContentModel = simpleContent;
generalPrice->SchemaType = ct;
schema->Items->Add(generalPrice);
schema->Compile(new ValidationEventHandler(0, ValidationCallbackOne));
XmlNamespaceManager* nsmgr = new XmlNamespaceManager(new NameTable());
nsmgr->AddNamespace(S"xs", S"http://www.w3.org/2001/XMLSchema");
schema->Write(Console::Out,nsmgr);
}
static void ValidationCallbackOne(Object* /*sender*/, ValidationEventArgs* args) {
Console::WriteLine(args->Message);
}
};
int main()
{
XMLSchemaExamples::main();
}
[Visual Basic, C#, C++] 前述のコード例に対して生成される XML ファイルを次に示します。
<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="generalPrice">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:decimal">
<xs:attribute name="currency" type="xs:string" />
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:schema>
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Xml.Schema
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
アセンブリ: System.Xml (System.Xml.dll 内)