XmlSchemaAll 类

定义

表示万维网联合会 (W3C)all 元素(复合器)。Represents the World Wide Web Consortium (W3C) all element (compositor).

public ref class XmlSchemaAll : System::Xml::Schema::XmlSchemaGroupBase
public class XmlSchemaAll : System.Xml.Schema.XmlSchemaGroupBase
type XmlSchemaAll = class
    inherit XmlSchemaGroupBase
Public Class XmlSchemaAll
Inherits XmlSchemaGroupBase
继承

示例

下面的示例创建一个 all 元素。The following example creates an all element.

#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();

        XmlSchemaElement^ thing1 = gcnew XmlSchemaElement();
        thing1->Name = "thing1";
        thing1->SchemaTypeName = gcnew XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema->Items->Add(thing1);

        XmlSchemaElement^ thing2 = gcnew XmlSchemaElement();
        thing2->Name = "thing2";
        thing2->SchemaTypeName = gcnew XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema->Items->Add(thing2);

        XmlSchemaElement^ thing3 = gcnew XmlSchemaElement();
        thing3->Name = "thing3";
        thing3->SchemaTypeName =
        gcnew XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema->Items->Add(thing3);

        XmlSchemaElement^ thing4 = gcnew XmlSchemaElement();
        thing4->Name = "thing4";
        thing4->SchemaTypeName = gcnew XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema->Items->Add(thing4);

        XmlSchemaAttribute^ myAttribute = gcnew XmlSchemaAttribute();
        myAttribute->Name = "myAttribute";
        myAttribute->SchemaTypeName = gcnew XmlQualifiedName("decimal", "http://www.w3.org/2001/XMLSchema");
        schema->Items->Add(myAttribute);

        XmlSchemaComplexType^ myComplexType = gcnew XmlSchemaComplexType();
        myComplexType->Name = "myComplexType";

        XmlSchemaAll^ complexType_all = gcnew XmlSchemaAll();

        XmlSchemaElement^ complexType_all_thing1 = gcnew XmlSchemaElement();
        complexType_all_thing1->RefName = gcnew XmlQualifiedName("thing1", "");
        complexType_all->Items->Add(complexType_all_thing1);

        XmlSchemaElement^ complexType_all_thing2 = gcnew XmlSchemaElement();
        complexType_all_thing2->RefName = gcnew XmlQualifiedName("thing2", "");
        complexType_all->Items->Add(complexType_all_thing2);

        XmlSchemaElement^ complexType_all_thing3 = gcnew XmlSchemaElement();
        complexType_all_thing3->RefName = gcnew XmlQualifiedName("thing3", "");
        complexType_all->Items->Add(complexType_all_thing3);

        XmlSchemaElement^ complexType_all_thing4 = gcnew XmlSchemaElement();
        complexType_all_thing4->RefName = gcnew XmlQualifiedName("thing4", "");
        complexType_all->Items->Add(complexType_all_thing4);

        myComplexType->Particle = complexType_all;

        XmlSchemaAttribute^ complexType_myAttribute = gcnew XmlSchemaAttribute();
        complexType_myAttribute->RefName = gcnew XmlQualifiedName("myAttribute", "");
        myComplexType->Attributes->Add(complexType_myAttribute);

        schema->Items->Add(myComplexType);

        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;

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

        XmlSchemaElement thing1 = new XmlSchemaElement();
        thing1.Name = "thing1";
        thing1.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema.Items.Add(thing1);

        XmlSchemaElement thing2 = new XmlSchemaElement();
        thing2.Name = "thing2";
        thing2.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema.Items.Add(thing2);

        XmlSchemaElement thing3 = new XmlSchemaElement();
        thing3.Name = "thing3";
        thing3.SchemaTypeName =
        new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema.Items.Add(thing3);

        XmlSchemaElement thing4 = new XmlSchemaElement();
        thing4.Name = "thing4";
        thing4.SchemaTypeName = new XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema");
        schema.Items.Add(thing4);

        XmlSchemaAttribute myAttribute = new XmlSchemaAttribute();
        myAttribute.Name = "myAttribute";
        myAttribute.SchemaTypeName = new XmlQualifiedName("decimal", "http://www.w3.org/2001/XMLSchema");
        schema.Items.Add(myAttribute);

        XmlSchemaComplexType myComplexType = new XmlSchemaComplexType();
        myComplexType.Name = "myComplexType";

        XmlSchemaAll complexType_all = new XmlSchemaAll();

        XmlSchemaElement complexType_all_thing1 = new XmlSchemaElement();
        complexType_all_thing1.RefName = new XmlQualifiedName("thing1", "");
        complexType_all.Items.Add(complexType_all_thing1);

        XmlSchemaElement complexType_all_thing2 = new XmlSchemaElement();
        complexType_all_thing2.RefName = new XmlQualifiedName("thing2", "");
        complexType_all.Items.Add(complexType_all_thing2);

        XmlSchemaElement complexType_all_thing3 = new XmlSchemaElement();
        complexType_all_thing3.RefName = new XmlQualifiedName("thing3", "");
        complexType_all.Items.Add(complexType_all_thing3);

        XmlSchemaElement complexType_all_thing4 = new XmlSchemaElement();
        complexType_all_thing4.RefName = new XmlQualifiedName("thing4", "");
        complexType_all.Items.Add(complexType_all_thing4);

        myComplexType.Particle = complexType_all;

        XmlSchemaAttribute complexType_myAttribute = new XmlSchemaAttribute();
        complexType_myAttribute.RefName = new XmlQualifiedName("myAttribute", "");
        myComplexType.Attributes.Add(complexType_myAttribute);

        schema.Items.Add(myComplexType);

        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);
    }

    private static void ValidationCallbackOne(object sender, ValidationEventArgs args)
    {
        Console.WriteLine(args.Message);
    }
}
Option Strict On
Option Explicit On

Imports System.Xml
Imports System.Xml.Schema

Public Class Sample

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

        Dim thing1 As New XmlSchemaElement()
        thing1.Name = "thing1"
        thing1.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
        schema.Items.Add(thing1)

        Dim thing2 As New XmlSchemaElement()
        thing2.Name = "thing2"
        thing2.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
        schema.Items.Add(thing2)

        Dim thing3 As New XmlSchemaElement()
        thing3.Name = "thing3"
        thing3.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
        schema.Items.Add(thing3)

        Dim thing4 As New XmlSchemaElement()
        thing4.Name = "thing4"
        thing4.SchemaTypeName = New XmlQualifiedName("string", "http://www.w3.org/2001/XMLSchema")
        schema.Items.Add(thing4)

        Dim myAttribute As New XmlSchemaAttribute()
        myAttribute.Name = "myAttribute"
        myAttribute.SchemaTypeName = New XmlQualifiedName("decimal", "http://www.w3.org/2001/XMLSchema")
        schema.Items.Add(myAttribute)

        Dim myComplexType As New XmlSchemaComplexType()
        myComplexType.Name = "myComplexType"

        Dim complexType_all As New XmlSchemaAll()

        Dim complexType_all_thing1 As New XmlSchemaElement()
        complexType_all_thing1.RefName = New XmlQualifiedName("thing1", "")
        complexType_all.Items.Add(complexType_all_thing1)

        Dim complexType_all_thing2 As New XmlSchemaElement()
        complexType_all_thing2.RefName = New XmlQualifiedName("thing2", "")
        complexType_all.Items.Add(complexType_all_thing2)

        Dim complexType_all_thing3 As New XmlSchemaElement()
        complexType_all_thing3.RefName = New XmlQualifiedName("thing3", "")
        complexType_all.Items.Add(complexType_all_thing3)

        Dim complexType_all_thing4 As New XmlSchemaElement()
        complexType_all_thing4.RefName = New XmlQualifiedName("thing4", "")
        complexType_all.Items.Add(complexType_all_thing4)

        myComplexType.Particle = complexType_all

        Dim complexType_myAttribute As New XmlSchemaAttribute()
        complexType_myAttribute.RefName = New XmlQualifiedName("myAttribute", "")
        myComplexType.Attributes.Add(complexType_myAttribute)

        schema.Items.Add(myComplexType)

        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


    Private Shared Sub ValidationCallbackOne(ByVal sender As Object, ByVal args As ValidationEventArgs)
        Console.WriteLine(args.Message)
    End Sub
End Class

下面的 XML 文件是针对前面的代码示例生成的。The following XML file is generated for the preceding code example.


<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="thing1" type="xs:string"/>
  <xs:element name="thing2" type="xs:string"/>
  <xs:element name="thing3" type="xs:string"/>
  <xs:element name="thing4" type="xs:string"/>
  <xs:attribute name="myAttribute" type="xs:decimal"/>
  <xs:complexType name="myComplexType">
    <xs:all>
      <xs:element ref="thing1" />
      <xs:element ref="thing2" />
      <xs:element ref="thing3" />
      <xs:element ref="thing4" />
    </xs:all>
      <xs:attribute ref="myAttribute"/>
  </xs:complexType>
</xs:schema>

注解

XmlSchemaAll 类允许组中的元素以任意顺序显示(或不显示)在包含元素中。The XmlSchemaAll class permits the elements in the group to appear (or not appear) in any order in the containing element.

构造函数

XmlSchemaAll()

初始化 XmlSchemaAll 类的新实例。Initializes a new instance of the XmlSchemaAll class.

属性

Annotation

获取或设置 annotation 属性。Gets or sets the annotation property.

(继承自 XmlSchemaAnnotated)
Id

获取或设置字符串 ID。Gets or sets the string id.

(继承自 XmlSchemaAnnotated)
Items

获取包含在 XmlSchemaElement 复合器内的 all 元素的集合。Gets the collection of XmlSchemaElement elements contained within the all compositor.

LineNumber

获取或设置 schema 元素引用的文件中的行号。Gets or sets the line number in the file to which the schema element refers.

(继承自 XmlSchemaObject)
LinePosition

获取或设置 schema 元素引用的文件中的行位置。Gets or sets the line position in the file to which the schema element refers.

(继承自 XmlSchemaObject)
MaxOccurs

获取或设置粒子可发生的最大次数。Gets or sets the maximum number of times the particle can occur.

(继承自 XmlSchemaParticle)
MaxOccursString

获取设置字符串值形式的数字。Gets or sets the number as a string value. 粒子可发生的最大次数。Maximum number of times the particle can occur.

(继承自 XmlSchemaParticle)
MinOccurs

获取或设置粒子可发生的最小次数。Gets or sets the minimum number of times the particle can occur.

(继承自 XmlSchemaParticle)
MinOccursString

获取设置字符串值形式的数字。Gets or sets the number as a string value. 粒子可发生的最小次数。The minimum number of times the particle can occur.

(继承自 XmlSchemaParticle)
Namespaces

获取或设置用于此架构对象的 XmlSerializerNamespacesGets or sets the XmlSerializerNamespaces to use with this schema object.

(继承自 XmlSchemaObject)
Parent

获取或设置此 XmlSchemaObject 的父级。Gets or sets the parent of this XmlSchemaObject.

(继承自 XmlSchemaObject)
SourceUri

获取或设置加载了架构的文件的源位置。Gets or sets the source location for the file that loaded the schema.

(继承自 XmlSchemaObject)
UnhandledAttributes

获取或设置不属于当前架构目标命名空间的限定特性。Gets or sets the qualified attributes that do not belong to the current schema's target namespace.

(继承自 XmlSchemaAnnotated)

方法

Equals(Object)

确定指定对象是否等于当前对象。Determines whether the specified object is equal to the current object.

(继承自 Object)
GetHashCode()

用作默认哈希函数。Serves as the default hash function.

(继承自 Object)
GetType()

获取当前实例的 TypeGets the Type of the current instance.

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。Creates a shallow copy of the current Object.

(继承自 Object)
ToString()

返回表示当前对象的字符串。Returns a string that represents the current object.

(继承自 Object)

适用于