XmlSchemaAnnotation Kelas

Definisi

Mewakili elemen World Wide Web Consortium (W3C). annotation

public ref class XmlSchemaAnnotation : System::Xml::Schema::XmlSchemaObject
public class XmlSchemaAnnotation : System.Xml.Schema.XmlSchemaObject
type XmlSchemaAnnotation = class
    inherit XmlSchemaObject
Public Class XmlSchemaAnnotation
Inherits XmlSchemaObject
Warisan
XmlSchemaAnnotation

Contoh

Contoh berikut membuat annotation elemen .

using System;
using System.Xml;
using System.Xml.Schema;

class XMLSchemaExamples
{
    public static void Main()
    {

        XmlSchema schema = new XmlSchema();

        // <xs:simpleType name="northwestStates">
        XmlSchemaSimpleType simpleType = new XmlSchemaSimpleType();
        simpleType.Name = "northwestStates";
        schema.Items.Add(simpleType);

        // <xs:annotation>
        XmlSchemaAnnotation annNorthwestStates = new XmlSchemaAnnotation();
        simpleType.Annotation = annNorthwestStates;

        // <xs:documentation>States in the Pacific Northwest of US</xs:documentation>
        XmlSchemaDocumentation docNorthwestStates = new XmlSchemaDocumentation();
        annNorthwestStates.Items.Add(docNorthwestStates);
        docNorthwestStates.Markup = TextToNodeArray("States in the Pacific Northwest of US");

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

        // <xs:enumeration value='WA'>
        XmlSchemaEnumerationFacet enumerationWA = new XmlSchemaEnumerationFacet();
        restriction.Facets.Add(enumerationWA);
        enumerationWA.Value = "WA";

        // <xs:annotation>
        XmlSchemaAnnotation annWA = new XmlSchemaAnnotation();
        enumerationWA.Annotation = annWA;

        // <xs:documentation>Washington</documentation>
        XmlSchemaDocumentation docWA = new XmlSchemaDocumentation();
        annWA.Items.Add(docWA);
        docWA.Markup = TextToNodeArray("Washington");

        // <xs:enumeration value='OR'>
        XmlSchemaEnumerationFacet enumerationOR = new XmlSchemaEnumerationFacet();
        restriction.Facets.Add(enumerationOR);
        enumerationOR.Value = "OR";

        // <xs:annotation>
        XmlSchemaAnnotation annOR = new XmlSchemaAnnotation();
        enumerationOR.Annotation = annOR;

        // <xs:documentation>Oregon</xs:documentation>
        XmlSchemaDocumentation docOR = new XmlSchemaDocumentation();
        annOR.Items.Add(docOR);
        docOR.Markup = TextToNodeArray("Oregon");

        // <xs:enumeration value='ID'>
        XmlSchemaEnumerationFacet enumerationID = new XmlSchemaEnumerationFacet();

        restriction.Facets.Add(enumerationID);
        enumerationID.Value = "ID";

        // <xs:annotation>
        XmlSchemaAnnotation annID = new XmlSchemaAnnotation();
        enumerationID.Annotation = annID;

        // <xs:documentation>Idaho</xs:documentation>
        XmlSchemaDocumentation docID = new XmlSchemaDocumentation();
        annID.Items.Add(docID);
        docID.Markup = TextToNodeArray("Idaho");

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

    public static XmlNode[] TextToNodeArray(string text)
    {
        XmlDocument doc = new XmlDocument();
        return new XmlNode[1] { doc.CreateTextNode(text) };
    }
}
Option Explicit On
Option Strict On

Imports System.Xml
Imports System.Xml.Schema

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

        ' <xs:simpleType name="northwestStates">
        Dim simpleType As New XmlSchemaSimpleType()
        simpleType.Name = "northwestStates"
        schema.Items.Add(simpleType)

        ' <xs:annotation>
        Dim annNorthwestStates As New XmlSchemaAnnotation()
        simpleType.Annotation = annNorthwestStates

        ' <xs:documentation>States in the Pacific Northwest of US</xs:documentation>
        Dim docNorthwestStates As New XmlSchemaDocumentation()
        annNorthwestStates.Items.Add(docNorthwestStates)
        docNorthwestStates.Markup = TextToNodeArray("States in the Pacific Northwest of US")

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

        ' <xs:enumeration value='WA'>
        Dim enumerationWA As New XmlSchemaEnumerationFacet()
        restriction.Facets.Add(enumerationWA)
        enumerationWA.Value = "WA"

        ' <xs:annotation>
        Dim annWA As New XmlSchemaAnnotation()
        enumerationWA.Annotation = annWA

        ' <xs:documentation>Washington</documentation>
        Dim docWA As New XmlSchemaDocumentation()
        annWA.Items.Add(docWA)
        docWA.Markup = TextToNodeArray("Washington")

        ' <xs:enumeration value='OR'>
        Dim enumerationOR As New XmlSchemaEnumerationFacet()
        restriction.Facets.Add(enumerationOR)
        enumerationOR.Value = "OR"

        ' <xs:annotation>
        Dim annOR As New XmlSchemaAnnotation()
        enumerationOR.Annotation = annOR

        ' <xs:documentation>Oregon</xs:documentation>
        Dim docOR As New XmlSchemaDocumentation()
        annOR.Items.Add(docOR)
        docOR.Markup = TextToNodeArray("Oregon")

        ' <xs:enumeration value='ID'>
        Dim enumerationID As New XmlSchemaEnumerationFacet()
        restriction.Facets.Add(enumerationID)
        enumerationID.Value = "ID"

        ' <xs:annotation>
        Dim annID As New XmlSchemaAnnotation()
        enumerationID.Annotation = annID

        ' <xs:documentation>Idaho</xs:documentation>
        Dim docID As New XmlSchemaDocumentation()
        annID.Items.Add(docID)
        docID.Markup = TextToNodeArray("Idaho")

        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


    Public Shared Function TextToNodeArray(ByVal text As String) As XmlNode()
        Dim doc As New XmlDocument()
        Return New XmlNode(0) {doc.CreateTextNode(text)}
    End Function 'TextToNodeArray
End Class

File XML berikut dibuat untuk contoh kode sebelumnya.


<?xml version="1.0" encoding="IBM437"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
    <xs:simpleType name="northwestStates">
    <xs:annotation>
        <xs:documentation>States in the Pacific Northwest of US</xs:documentation>
    </xs:annotation>
        <xs:restriction base="xs:string">
          <xs:enumeration value='WA'>
            <xs:annotation>
              <xs:documentation>Washington</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value='OR'>
            <xs:annotation>
              <xs:documentation>Oregon</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
          <xs:enumeration value='ID'>
            <xs:annotation>
              <xs:documentation>Idaho</xs:documentation>
            </xs:annotation>
          </xs:enumeration>
        </xs:restriction>
    </xs:simpleType>
</xs:schema>

Keterangan

Elemen annotation dapat berisi satu atau beberapa XmlSchemaAppInfo instans (informasi untuk aplikasi) dan XmlSchemaDocumentation instans (komentar atau teks untuk manusia).

Anotasi digunakan untuk menyimpan informasi tambahan tentang skema atau elemennya. Catatan ini ditentukan untuk konsumsi manusia, , xs:documentationatau oleh perangkat lunak, xs:appinfo. Anotasi dapat menjadi elemen pertama dari sebagian besar elemen skema atau di mana saja di bawah elemen skema.

Konstruktor

Nama Deskripsi
XmlSchemaAnnotation()

Menginisialisasi instans baru dari kelas XmlSchemaAnnotation.

Properti

Nama Deskripsi
Id

Mendapatkan atau mengatur id string.

Items

Items Mendapatkan koleksi yang digunakan untuk menyimpan elemen dan appinfo turunandocumentation.

LineNumber

Mendapatkan atau mengatur nomor baris dalam file yang schema dirujuk elemen.

(Diperoleh dari XmlSchemaObject)
LinePosition

Mendapatkan atau mengatur posisi baris dalam file yang schema dirujuk elemen.

(Diperoleh dari XmlSchemaObject)
Namespaces

Mendapatkan atau mengatur XmlSerializerNamespaces untuk digunakan dengan objek skema ini.

(Diperoleh dari XmlSchemaObject)
Parent

Mendapatkan atau mengatur induk dari ini XmlSchemaObject.

(Diperoleh dari XmlSchemaObject)
SourceUri

Mendapatkan atau mengatur lokasi sumber untuk file yang memuat skema.

(Diperoleh dari XmlSchemaObject)
UnhandledAttributes

Mendapatkan atau mengatur atribut yang memenuhi syarat yang bukan milik namespace target skema.

Metode

Nama Deskripsi
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk