Table of Contents

Class XmlSchema.XmlSchemaComponent

Namespace
LinqToDB.Tools.DataProvider.SqlServer.Schemas
Assembly
linq2db.Tools.dll

sys.xml_schema_components (Transact-SQL)

Applies to: √ SQL Server (all supported versions)

Returns a row per component of an XML schema. The pair (collection_id, namespace_id) is a compound foreign key to the containing namespace. For named components, the values for symbol_space, name, scoping_xml_component_id, is_qualified, xml_namespace_id, xml_collection_id are unique.


See sys.xml_schema_components.

[Table(Schema = "sys", Name = "xml_schema_components", IsView = true)]
public class XmlSchema.XmlSchemaComponent
Inheritance
XmlSchema.XmlSchemaComponent
Extension Methods

Properties

BaseXmlComponentID

ID of the component from which this component is derived. NULL if there is none.

[Column("base_xml_component_id")]
[Nullable]
public int? BaseXmlComponentID { get; set; }

Property Value

int?

Derivation

Derivation method for derived types:

N = None (not derived)

X = Extension

R = Restriction

S = Substitution

[Column("derivation")]
[NotNull]
public string Derivation { get; set; }

Property Value

string

DerivationDesc

Description of derivation method for derived types:

NONE

EXTENSION

RESTRICTION

SUBSTITUTION

[Column("derivation_desc")]
[Nullable]
public string? DerivationDesc { get; set; }

Property Value

string

IsQualified

1 = This component has an explicit namespace qualifier.

0 = This is a locally scoped component. In this case, the pair, namespace_id, collection_id, refers to the 'no namespace' targetNamespace.

For wildcard components this value will be equal to 1.

[Column("is_qualified")]
[NotNull]
public bool IsQualified { get; set; }

Property Value

bool

Kind

Kind of XML schema component.

N = Any Type (special intrinsic component)

Z = Any Simple Type (special intrinsic component)

P = Primitive Type (intrinsic types)

S = Simple Type

L = List Type

U = Union Type

C = Complex Simple Type (derived from Simple)

K = Complex Type

E = Element

M = Model-Group

W = Element-Wildcard

A = Attribute

G = Attribute-Group

V = Attribute-Wildcard

[Column("kind")]
[NotNull]
public string Kind { get; set; }

Property Value

string

KindDesc

Description of the kind of XML schema component:

ANY_TYPE

ANY_SIMPLE_TYPE

PRIMITIVE_TYPE

SIMPLE_TYPE

LIST_TYPE

UNION_TYPE

COMPLEX_SIMPLE_TYPE

COMPLEX_TYPE

ELEMENT

MODEL_GROUP

ELEMENT_WILDCARD

ATTRIBUTE

ATTRIBUTE_GROUP

ATTRIBUTE_WILDCARD

[Column("kind_desc")]
[Nullable]
public string? KindDesc { get; set; }

Property Value

string

Name

Unique name of the XML schema component. Is NULL if the component is unnamed.

[Column("name")]
[Nullable]
public string? Name { get; set; }

Property Value

string

ScopingXmlComponentID

Unique ID of the scoping component. NULL if there is none (global scope).

[Column("scoping_xml_component_id")]
[Nullable]
public int? ScopingXmlComponentID { get; set; }

Property Value

int?

SymbolSpace

Space in which this symbol name is unique, based on kind:

N = None

T = Type

E = Element

M = Model-Group

A = Attribute

G = Attribute-Group

[Column("symbol_space")]
[NotNull]
public string SymbolSpace { get; set; }

Property Value

string

SymbolSpaceDesc

Description of space in which this symbol name is unique, based on kind:

NONE

TYPE

ELEMENT

MODEL_GROUP

ATTRIBUTE

ATTRIBUTE_GROUP

[Column("symbol_space_desc")]
[Nullable]
public string? SymbolSpaceDesc { get; set; }

Property Value

string

XmlCollectionID

ID of the XML schema collection that contains the namespace of this component.

[Column("xml_collection_id")]
[NotNull]
public int XmlCollectionID { get; set; }

Property Value

int

XmlComponentID

Unique ID of the XML schema component in the database.

[Column("xml_component_id")]
[NotNull]
public int XmlComponentID { get; set; }

Property Value

int

XmlNamespaceID

ID of the XML namespace within the collection.

[Column("xml_namespace_id")]
[NotNull]
public int XmlNamespaceID { get; set; }

Property Value

int