XmlSchemaInference Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
XML belgesinden XML Şema Tanımlama Dili (XSD) şemasını çıkarsar. XmlSchemaInference Sınıf devralınamaz.
public ref class XmlSchemaInference sealed
public sealed class XmlSchemaInference
type XmlSchemaInference = class
Public NotInheritable Class XmlSchemaInference
- Devralma
-
XmlSchemaInference
Örnekler
Bu örnek, giriş olarak bir XML dosyası alır ve örnek XML'yi doğrulayan bir şema oluşturur.
XmlReader^ reader = XmlReader::Create("contosoBooks.xml");
XmlSchemaSet^ schemaSet = gcnew XmlSchemaSet();
XmlSchemaInference^ schema = gcnew XmlSchemaInference();
schemaSet = schema->InferSchema(reader);
for each (XmlSchema^ s in schemaSet->Schemas())
{
s->Write(Console::Out);
}
XmlReader reader = XmlReader.Create("contosoBooks.xml");
XmlSchemaSet schemaSet = new XmlSchemaSet();
XmlSchemaInference schema = new XmlSchemaInference();
schemaSet = schema.InferSchema(reader);
foreach (XmlSchema s in schemaSet.Schemas())
{
s.Write(Console.Out);
}
Dim reader As XmlReader = XmlReader.Create("contosoBooks.xml")
Dim schemaSet As XmlSchemaSet = New XmlSchemaSet()
Dim schema As XmlSchemaInference = New XmlSchemaInference()
schemaSet = schema.InferSchema(reader)
For Each s As XmlSchema In schemaSet.Schemas()
s.Write(Console.Out)
Next
Giriş XML dosyası aşağıdadır.
<bookstore xmlns="http://www.contoso.com/books">
<book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
<title>The Autobiography of Benjamin Franklin</title>
<author>
<first-name>Benjamin</first-name>
<last-name>Franklin</last-name>
</author>
<price>8.99</price>
</book>
<book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
<title>The Confidence Man</title>
<author>
<first-name>Herman</first-name>
<last-name>Melville</last-name>
</author>
<price>11.99</price>
</book>
<book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
Xml belgesinden çıkarılan şema aşağıdadır.
<?xml version="1.0" encoding="utf-8"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.contoso.com/books" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="bookstore">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="book">
<xs:complexType>
<xs:sequence>
<xs:element name="title" type="xs:string" />
<xs:element name="author">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="name" type="xs:string" />
<xs:element minOccurs="0" name="first-name" type="xs:string" />
<xs:element minOccurs="0" name="last-name" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="price" type="xs:decimal" />
</xs:sequence>
<xs:attribute name="genre" type="xs:string" use="required" />
<xs:attribute name="publicationdate" type="xs:date" use="required" />
<xs:attribute name="ISBN" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Açıklamalar
Önemli
- Bilinmeyen veya güvenilmeyen kaynaklardan veya konumlardan gelen şemaları kullanmayın. Bunu yaptığınızda kodunuzun güvenliği tehlikeye girer.
- XML şemaları (satır içi şemalar dahil) hizmet reddi saldırılarına karşı doğal olarak savunmasızdır; güvenilmeyen senaryolarda bunları kabul etmeyin.
- Şema doğrulama hata iletileri ve özel durumlar, içerik modeli veya URI yolları hakkındaki hassas bilgileri şema dosyasının kullanımına sunabilir. Bu bilgileri güvenilmeyen arayanlara göstermemeye dikkat edin.
XmlSchemaInference Ad alanında sınıfı, XML belgesinin System.Xml.Schema yapısından XML Şema Tanımlama Dili (XSD) şemasını çıkarmanıza olanak tanır. sınıfı, XmlSchemaInference XML belgesini doğrulayan bir XML şeması oluşturur.
sınıfı W3C XmlSchemaInference XML ve XML Şemaları standartlarını destekler. Yeni bir şema çıkarsamak veya var olan bir şemayı daraltmak için kullanılabilir.
Oluşturucular
XmlSchemaInference() |
XmlSchemaInference sınıfının yeni bir örneğini başlatır. |
Özellikler
Occurrence |
XML belgesinden çıkarılan şema oluşumu bildirimlerini etkileyen değeri alır veya ayarlar XmlSchemaInference.InferenceOption . |
TypeInference |
XML belgesinden çıkarılan türleri etkileyen değeri alır veya ayarlar XmlSchemaInference.InferenceOption . |
Yöntemler
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
InferSchema(XmlReader) |
Belirtilen nesnede bulunan XML belgesinden bir XML Şema Tanımlama Dili (XSD) şeması çıkarsar XmlReader . |
InferSchema(XmlReader, XmlSchemaSet) |
Belirtilen nesnede XmlReader bulunan XML belgesinden bir XML Şema Tanımlama Dili (XSD) şeması çıkarsar ve aynı hedef ad alanıyla belirtilen nesnede var olan bir şemayı kullanarak çıkarsanan şemayı XmlSchemaSet daraltır. |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |