次の方法で共有


XmlSchemaFractionDigitsFacet クラス

simpleType 要素の端数値として入力できる桁数の制限を指定します。 fractionDigits の値は正の整数である必要があります。W3C (World Wide Web Consortium) fractionDigits ファセットを表します。

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

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

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

スレッドセーフ

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

使用例

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

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

class XMLSchemaExamples
    Public Shared Sub Main()
 
    Dim schema As New XmlSchema()

        '<xs:simpleType name="RatingType">
        Dim RatingType As New XmlSchemaSimpleType()
        RatingType.Name = "RatingType"
        
        '<xs:restriction base="xs:number">
        Dim restriction as New XmlSchemaSimpleTypeRestriction()
        restriction.BaseTypeName = New XmlQualifiedName("decimal", "http://www.w3.org/2001/XMLSchema")
        
        '<xs:totalDigits value="2"/>
        Dim totalDigits As New XmlSchemaTotalDigitsFacet()
        totalDigits.Value = "2"
        restriction.Facets.Add(totalDigits)

        '<xs:fractionDigits value="1"/>
        Dim fractionDigits As New XmlSchemaFractionDigitsFacet()
        fractionDigits.Value ="1"
        restriction.Facets.Add(fractionDigits)

        RatingType.Content = restriction
        schema.Items.Add(RatingType)
        
        '<xs:element name="movie">
        Dim element As New XmlSchemaElement()
        element.Name = "movie"
             
        '<xs:complexType>
        Dim complexType As New XmlSchemaComplexType()
        
        '<xs:attribute name="rating" type="RatingType"/>
        Dim ratingAttribute As New XmlSchemaAttribute()
        ratingAttribute.Name = "rating"
        ratingAttribute.SchemaTypeName = New XmlQualifiedName("RatingType", "")
        complexType.Attributes.Add(ratingAttribute)

        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="RatingType">
        XmlSchemaSimpleType RatingType = new XmlSchemaSimpleType();
        RatingType.Name = "RatingType";

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

        // <xs:totalDigits value="2"/>
        XmlSchemaTotalDigitsFacet totalDigits = new XmlSchemaTotalDigitsFacet();
        totalDigits.Value = "2";
        restriction.Facets.Add(totalDigits);

        // <xs:fractionDigits value="1"/>
        XmlSchemaFractionDigitsFacet fractionDigits = new XmlSchemaFractionDigitsFacet();
        fractionDigits.Value = "1";
        restriction.Facets.Add(fractionDigits);

        RatingType.Content = restriction;

        schema.Items.Add(RatingType);

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

        // <xs:attribute name="rating" type="RatingType"/>
        XmlSchemaAttribute ratingAttribute = new XmlSchemaAttribute();
        ratingAttribute.Name = "rating";
        ratingAttribute.SchemaTypeName = new XmlQualifiedName("RatingType", "");
        complexType.Attributes.Add(ratingAttribute);

        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"RatingType">
  XmlSchemaSimpleType* RatingType = new XmlSchemaSimpleType();
  RatingType -> Name = S"RatingType";

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

  // <xs:totalDigits value=S"2"/>
  XmlSchemaTotalDigitsFacet* totalDigits = new XmlSchemaTotalDigitsFacet();
  totalDigits -> Value = S"2";
  restriction -> Facets->Add(totalDigits);

  // <xs:fractionDigits value=S"1"/>
  XmlSchemaFractionDigitsFacet* fractionDigits = new XmlSchemaFractionDigitsFacet();
  fractionDigits -> Value = S"1";
  restriction -> Facets->Add(fractionDigits);

  RatingType -> Content = restriction;

  schema -> Items->Add(RatingType);

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

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

  // <xs:attribute name=S"rating" type=S"RatingType"/>
  XmlSchemaAttribute* ratingAttribute = new XmlSchemaAttribute();
  ratingAttribute -> Name = S"rating";
  ratingAttribute -> SchemaTypeName = new XmlQualifiedName(S"RatingType", S"");
  complexType -> Attributes->Add(ratingAttribute);

  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="RatingType">
        <xs:restriction base="xs:decimal">
            <xs:totalDigits value="2"/>
            <xs:fractionDigits value="1"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:element name="movie">
        <xs:complexType>
            <xs:attribute name="rating" type="RatingType"/>
        </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 内)

参照

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