次の方法で共有


XmlSchemaMaxLengthFacet クラス

データ型に基づく、simpleType 要素の最大長制限を指定します。W3C (World Wide Web Consortium) maxLength ファセットを表します。

この型のすべてのメンバの一覧については、XmlSchemaMaxLengthFacet メンバ を参照してください。

System.Object
   System.Xml.Schema.XmlSchemaObject
      System.Xml.Schema.XmlSchemaAnnotated
         System.Xml.Schema.XmlSchemaFacet
            System.Xml.Schema.XmlSchemaNumericFacet
               System.Xml.Schema.XmlSchemaMaxLengthFacet

Public Class XmlSchemaMaxLengthFacet
   Inherits XmlSchemaNumericFacet
[C#]
public class XmlSchemaMaxLengthFacet : XmlSchemaNumericFacet
[C++]
public __gc class XmlSchemaMaxLengthFacet : public
   XmlSchemaNumericFacet
[JScript]
public class XmlSchemaMaxLengthFacet extends XmlSchemaNumericFacet

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

使用例

[Visual Basic, C#, C++] XmlSchemaMaxLengthFacet クラスを使用する例を次に示します。

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

Class XMLSchemaExamples 
    Public Shared Sub Main()

    Dim schema as New XmlSchema()

    ' <xs:simpleType name="ZipCodeType">
    Dim ZipCodeType as New XmlSchemaSimpleType()
    ZipCodeType.Name = "ZipCodeType"

    ' <xs:restriction base="xs:string">
    Dim restriction as New XmlSchemaSimpleTypeRestriction()
    restriction.BaseTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")

    ' <xs:maxLength value="10"/>
    Dim maxLength as New XmlSchemaMaxLengthFacet()
    maxLength.Value = "10"
    restriction.Facets.Add(maxLength)

    ZipCodeType.Content = restriction

    schema.Items.Add(ZipCodeType)

    ' <xs:element name="Address">
    Dim element as New XmlSchemaElement()
    element.Name = "Address"

    ' <xs:complexType>
    Dim complexType as New XmlSchemaComplexType()

    ' <xs:attribute name="ZipCode" type="ZipCodeType"/>
    Dim ZipCodeAttribute as New XmlSchemaAttribute()
    ZipCodeAttribute.Name = "ZipCode"
    ZipCodeAttribute.SchemaTypeName = new XmlQualifiedName("ZipCodeType", "")
                
    complexType.Attributes.Add(ZipCodeAttribute)

    element.SchemaType = complexType

    schema.Items.Add(element)

    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

  Public Shared Sub ValidationCallbackOne(sender as object, args as ValidationEventArgs) 
    Console.WriteLine(args.Message)
  End Sub

End Class

[C#] 
using System;
using System.Xml;  
using System.Xml.Schema;

class XMLSchemaExamples {
    public static void Main() {
 
        XmlSchema schema = new XmlSchema();

        // <xs:simpleType name="ZipCodeType">
        XmlSchemaSimpleType ZipCodeType = new XmlSchemaSimpleType();
        ZipCodeType.Name = "ZipCodeType";

        // <xs:restriction base="xs:string">
        XmlSchemaSimpleTypeRestriction restriction = new XmlSchemaSimpleTypeRestriction();
        restriction.BaseTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");

        // <xs:maxLength value="10"/>
        XmlSchemaMaxLengthFacet maxLength = new XmlSchemaMaxLengthFacet();
        maxLength.Value = "10";
        restriction.Facets.Add(maxLength);

        ZipCodeType.Content = restriction;

        schema.Items.Add(ZipCodeType);

        // <xs:element name="Address">
        XmlSchemaElement element = new XmlSchemaElement();
        element.Name = "Address";

        // <xs:complexType>
        XmlSchemaComplexType complexType = new XmlSchemaComplexType();

        // <xs:attribute name="ZipCode" type="ZipCodeType"/>
        XmlSchemaAttribute ZipCodeAttribute = new XmlSchemaAttribute();
        ZipCodeAttribute.Name = "ZipCode";
        ZipCodeAttribute.SchemaTypeName = new XmlQualifiedName("ZipCodeType", "");
                
        complexType.Attributes.Add(ZipCodeAttribute);

        element.SchemaType = complexType;

        schema.Items.Add(element);

        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 ValidationCallbackOne(Object* sender, ValidationEventArgs * args)
   {
      Console::WriteLine(args -> Message);
   }
};

int main() 
{
   XmlSchema* schema = new XmlSchema();

   // <xs:simpleType name=S"ZipCodeType">
   XmlSchemaSimpleType* ZipCodeType = new XmlSchemaSimpleType();
   ZipCodeType -> Name = S"ZipCodeType";

   // <xs:restriction base="xs:string">
   XmlSchemaSimpleTypeRestriction* restriction = new XmlSchemaSimpleTypeRestriction();
   restriction -> BaseTypeName = new XmlQualifiedName(S"string", S"http://www.w3.org/2001/XMLSchema");

   // <xs:maxLength value=S"10"/>
   XmlSchemaMaxLengthFacet* maxLength = new XmlSchemaMaxLengthFacet();
   maxLength -> Value = S"10";
   restriction -> Facets->Add(maxLength);

   ZipCodeType -> Content = restriction;

   schema -> Items->Add(ZipCodeType);

   // <xs:element name=S"Address">
   XmlSchemaElement* element = new XmlSchemaElement();
   element -> Name = S"Address";

   // <xs:complexType>
   XmlSchemaComplexType* complexType = new XmlSchemaComplexType();

   // <xs:attribute name=S"ZipCode" type=S"ZipCodeType"/>
   XmlSchemaAttribute* ZipCodeAttribute = new XmlSchemaAttribute();
   ZipCodeAttribute -> Name = S"ZipCode";
   ZipCodeAttribute -> SchemaTypeName = new XmlQualifiedName(S"ZipCodeType", S"");

   complexType -> Attributes->Add(ZipCodeAttribute);

   element -> SchemaType = complexType;

   schema -> Items->Add(element);

   schema -> Compile(new ValidationEventHandler(schema, XMLSchemaExamples::ValidationCallbackOne));
   XmlNamespaceManager* nsmgr = new XmlNamespaceManager(new NameTable());
   nsmgr -> AddNamespace(S"xs", S"http://www.w3.org/2001/XMLSchema");
   schema -> Write(Console::Out, nsmgr);
}

[Visual Basic, C#, C++] 前述のコード例に対して生成される XML ファイルを次に示します。

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

    <xs:simpleType name="ZipCodeType">
        <xs:restriction base="xs:string">
            <xs:maxLength value="10"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:element name="Address">
        <xs:complexType>
            <xs:attribute name="ZipCode" type="ZipCodeType"/>
        </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 内)

参照

XmlSchemaMaxLengthFacet メンバ | System.Xml.Schema 名前空間