System::Xml::Schema::XmlSchemaElement Class Reference

Represents the element element from XML Schema as specified by the World Wide Web Consortium (W3C). This class is the base class for all particle types and is used to describe an element in an XML document. More...

#include "xml_schema_element.h"

Inherits System::Xml::Schema::XmlSchemaParticle.

Public Types

using Ptr = SharedPtr< XmlSchemaElement >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::Schema::XmlSchemaParticle
using Ptr = SharedPtr< XmlSchemaParticle >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::Schema::XmlSchemaAnnotated
using Ptr = SharedPtr< XmlSchemaAnnotated >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::Schema::XmlSchemaObject
using Ptr = SharedPtr< XmlSchemaObject >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 

Public Member Functions

ASPOSECPP_SHARED_API bool get_IsAbstract ()
 Returns information to indicate if the element can be used in an instance document. More...
 
ASPOSECPP_SHARED_API void set_IsAbstract (bool value)
 Sets information to indicate if the element can be used in an instance document. More...
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_Block ()
 Returns a Block derivation. More...
 
ASPOSECPP_SHARED_API void set_Block (XmlSchemaDerivationMethod value)
 Sets a Block derivation. More...
 
ASPOSECPP_SHARED_API String get_DefaultValue ()
 Returns the default value of the element if its content is a simple type or content of the element is textOnly. More...
 
ASPOSECPP_SHARED_API void set_DefaultValue (const String &value)
 Sets the default value of the element if its content is a simple type or content of the element is textOnly. More...
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_Final ()
 Returns the Final value to indicate that no further derivations are allowed. More...
 
ASPOSECPP_SHARED_API void set_Final (XmlSchemaDerivationMethod value)
 Sets the Final value to indicate that no further derivations are allowed. More...
 
ASPOSECPP_SHARED_API String get_FixedValue ()
 Returns the fixed value. More...
 
ASPOSECPP_SHARED_API void set_FixedValue (const String &value)
 Sets the fixed value. More...
 
ASPOSECPP_SHARED_API XmlSchemaForm get_Form ()
 Returns the form for the element. More...
 
ASPOSECPP_SHARED_API void set_Form (XmlSchemaForm value)
 Sets the form for the element. More...
 
ASPOSECPP_SHARED_API String get_Name ()
 Returns the name of the element. More...
 
ASPOSECPP_SHARED_API void set_Name (const String &value)
 Sets the name of the element. More...
 
ASPOSECPP_SHARED_API bool get_IsNillable ()
 Returns information that indicates if xsi:nil can occur in the instance data. Indicates if an explicit nil value can be assigned to the element. More...
 
ASPOSECPP_SHARED_API void set_IsNillable (bool value)
 Sets information that indicates if xsi:nil can occur in the instance data. Indicates if an explicit nil value can be assigned to the element. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlQualifiedNameget_RefName ()
 Returns the reference name of an element declared in this schema (or another schema indicated by the specified namespace). More...
 
ASPOSECPP_SHARED_API void set_RefName (const SharedPtr< XmlQualifiedName > &value)
 Sets the reference name of an element declared in this schema (or another schema indicated by the specified namespace). More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlQualifiedNameget_SubstitutionGroup ()
 Returns the name of an element that is being substituted by this element. More...
 
ASPOSECPP_SHARED_API void set_SubstitutionGroup (const SharedPtr< XmlQualifiedName > &value)
 Sets the name of an element that is being substituted by this element. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlQualifiedNameget_SchemaTypeName ()
 Returns the name of a built-in data type defined in this schema or another schema indicated by the specified namespace. More...
 
ASPOSECPP_SHARED_API void set_SchemaTypeName (const SharedPtr< XmlQualifiedName > &value)
 Sets the name of a built-in data type defined in this schema or another schema indicated by the specified namespace. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaTypeget_SchemaType ()
 Returns the type of the element. This can either be a complex type or a simple type. More...
 
ASPOSECPP_SHARED_API void set_SchemaType (const SharedPtr< XmlSchemaType > &value)
 Sets the type of the element. This can either be a complex type or a simple type. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaObjectCollectionget_Constraints ()
 Returns the collection of constraints on the element. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlQualifiedNameget_QualifiedName ()
 Returns the actual qualified name for the given element. More...
 
ASPOSECPP_SHARED_API SharedPtr< Objectget_ElementType ()
 Returns an object based on the XmlSchemaElement or XmlSchemaElement of the element, which holds the post-compilation interpretation of the ElementType value. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaTypeget_ElementSchemaType ()
 Returns an XmlSchemaType object representing the type of the element based on the XmlSchemaElement::get_SchemaType or XmlSchemaElement::get_SchemaTypeName values of the element. More...
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_BlockResolved ()
 Returns the post-compilation interpretation of the Block value. More...
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_FinalResolved ()
 Returns the post-compilation interpretation of the Final value. More...
 
ASPOSECPP_SHARED_API XmlSchemaElement ()
 Initializes a new instance of the XmlSchemaElement class. More...
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaParticle
ASPOSECPP_SHARED_API String get_MinOccursString ()
 Returns the number as a string value. The minimum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API void set_MinOccursString (const String &value)
 Sets the number as a string value. The minimum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API String get_MaxOccursString ()
 Returns the number as a string value. Maximum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API void set_MaxOccursString (const String &value)
 Sets the number as a string value. Maximum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API Decimal get_MinOccurs ()
 Returns the minimum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API void set_MinOccurs (Decimal value)
 Sets the minimum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API Decimal get_MaxOccurs ()
 Returns the maximum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API void set_MaxOccurs (Decimal value)
 Sets the maximum number of times the particle can occur. More...
 
ASPOSECPP_SHARED_API XmlSchemaParticle ()
 Initializes a new instance of the XmlSchemaParticle class. More...
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaAnnotated
ASPOSECPP_SHARED_API String get_Id ()
 Returns the string id. More...
 
ASPOSECPP_SHARED_API void set_Id (const String &value)
 Sets the string id. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaAnnotationget_Annotation ()
 Returns the annotation property. More...
 
ASPOSECPP_SHARED_API void set_Annotation (const SharedPtr< XmlSchemaAnnotation > &value)
 Sets the annotation property. More...
 
ASPOSECPP_SHARED_API ArrayPtr< SharedPtr< XmlAttribute > > get_UnhandledAttributes ()
 Returns the qualified attributes that do not belong to the current schema's target namespace. More...
 
ASPOSECPP_SHARED_API void set_UnhandledAttributes (const ArrayPtr< SharedPtr< XmlAttribute >> &value)
 Sets the qualified attributes that do not belong to the current schema's target namespace. More...
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaObject
ASPOSECPP_SHARED_API int32_t get_LineNumber ()
 Returns the line number in the file to which the schema element refers. More...
 
ASPOSECPP_SHARED_API void set_LineNumber (int32_t value)
 Sets the line number in the file to which the schema element refers. More...
 
ASPOSECPP_SHARED_API int32_t get_LinePosition ()
 Returns the line position in the file to which the schema element refers. More...
 
ASPOSECPP_SHARED_API void set_LinePosition (int32_t value)
 Sets the line position in the file to which the schema element refers. More...
 
ASPOSECPP_SHARED_API String get_SourceUri ()
 Returns the source location for the file that loaded the schema. More...
 
ASPOSECPP_SHARED_API void set_SourceUri (const String &value)
 Sets the source location for the file that loaded the schema. More...
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaObjectget_Parent ()
 Returns the parent of this XmlSchemaObject. More...
 
ASPOSECPP_SHARED_API void set_Parent (const SharedPtr< XmlSchemaObject > &value)
 Sets the parent of this XmlSchemaObject. More...
 
ASPOSECPP_SHARED_API SharedPtr< System::Xml::Serialization::XmlSerializerNamespacesget_Namespaces ()
 Returns the XmlSerializerNamespaces to use with this schema object. More...
 
ASPOSECPP_SHARED_API void set_Namespaces (const SharedPtr< System::Xml::Serialization::XmlSerializerNamespaces > &value)
 Sets the XmlSerializerNamespaces to use with this schema object. More...
 
ASPOSECPP_SHARED_API XmlSchemaObject ()
 Initializes a new instance of the XmlSchemaObject class. More...
 
- Public Member Functions inherited from System::Object
ASPOSECPP_SHARED_API Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ASPOSECPP_SHARED_API ~Object ()
 Destroys object. Frees all internal data structures. More...
 
ASPOSECPP_SHARED_API Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared reference counter. More...
 
ASPOSECPP_SHARED_API void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
ASPOSECPP_SHARED_API void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual ASPOSECPP_SHARED_API bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual ASPOSECPP_SHARED_API int32_t GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual ASPOSECPP_SHARED_API String ToString () const
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ASPOSECPP_SHARED_API ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual ASPOSECPP_SHARED_API const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual ASPOSECPP_SHARED_API bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual ASPOSECPP_SHARED_API void SetTemplateWeakPtr (uint32_t argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
virtual ASPOSECPP_SHARED_API bool FastCast (const Details::FastRttiBase &helper, void **out_ptr) const
 For internal purposes only. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
template<>
bool Equals (double const &objA, double const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 Specialization of Object::ReferenceEquals for case of string and nullptr. More...
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 Specialization of Object::ReferenceEquals for case of strings. More...
 

Protected Member Functions

virtual ASPOSECPP_SHARED_API ~XmlSchemaElement ()
 
- Protected Member Functions inherited from System::Xml::Schema::XmlSchemaParticle
virtual ASPOSECPP_SHARED_API ~XmlSchemaParticle ()
 

Additional Inherited Members

- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Implements C# typeof(System.Object) construct. More...
 

Detailed Description

Represents the element element from XML Schema as specified by the World Wide Web Consortium (W3C). This class is the base class for all particle types and is used to describe an element in an XML document.

Attention
Objects of this class should only be allocated using System::MakeObject() function. Never create instances of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

Member Typedef Documentation

◆ Ptr

An alias for shared pointer to an instance of this class.

Constructor & Destructor Documentation

◆ XmlSchemaElement()

ASPOSECPP_SHARED_API System::Xml::Schema::XmlSchemaElement::XmlSchemaElement ( )

Initializes a new instance of the XmlSchemaElement class.

◆ ~XmlSchemaElement()

virtual ASPOSECPP_SHARED_API System::Xml::Schema::XmlSchemaElement::~XmlSchemaElement ( )
protectedvirtual

Member Function Documentation

◆ get_Block()

ASPOSECPP_SHARED_API XmlSchemaDerivationMethod System::Xml::Schema::XmlSchemaElement::get_Block ( )

Returns a Block derivation.

Returns
The attribute used to block a type derivation. Default value is XmlSchemaDerivationMethod::None. Optional.

◆ get_BlockResolved()

ASPOSECPP_SHARED_API XmlSchemaDerivationMethod System::Xml::Schema::XmlSchemaElement::get_BlockResolved ( )

Returns the post-compilation interpretation of the Block value.

Returns
The post-compilation interpretation of the Block value. The default is the BlockDefault value on the schema element.

◆ get_Constraints()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaObjectCollection> System::Xml::Schema::XmlSchemaElement::get_Constraints ( )

Returns the collection of constraints on the element.

Returns
The collection of constraints.

◆ get_DefaultValue()

ASPOSECPP_SHARED_API String System::Xml::Schema::XmlSchemaElement::get_DefaultValue ( )

Returns the default value of the element if its content is a simple type or content of the element is textOnly.

Returns
The default value for the element. The default is nullptr. Optional.

◆ get_ElementSchemaType()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaType> System::Xml::Schema::XmlSchemaElement::get_ElementSchemaType ( )

Returns an XmlSchemaType object representing the type of the element based on the XmlSchemaElement::get_SchemaType or XmlSchemaElement::get_SchemaTypeName values of the element.

Returns
An XmlSchemaType object.

◆ get_ElementType()

ASPOSECPP_SHARED_API SharedPtr<Object> System::Xml::Schema::XmlSchemaElement::get_ElementType ( )

Returns an object based on the XmlSchemaElement or XmlSchemaElement of the element, which holds the post-compilation interpretation of the ElementType value.

Returns
The run-time object. The post-compilation interpretation of the ElementType value.

◆ get_Final()

ASPOSECPP_SHARED_API XmlSchemaDerivationMethod System::Xml::Schema::XmlSchemaElement::get_Final ( )

Returns the Final value to indicate that no further derivations are allowed.

Returns
The Final value. The default is XmlSchemaDerivationMethod::None. Optional.

◆ get_FinalResolved()

ASPOSECPP_SHARED_API XmlSchemaDerivationMethod System::Xml::Schema::XmlSchemaElement::get_FinalResolved ( )

Returns the post-compilation interpretation of the Final value.

Returns
The post-compilation interpretation of the Final value. Default value is the FinalDefault value on the schema element.

◆ get_FixedValue()

ASPOSECPP_SHARED_API String System::Xml::Schema::XmlSchemaElement::get_FixedValue ( )

Returns the fixed value.

Returns
The fixed value that is predetermined and unchangeable. The default is nullptr. Optional.

◆ get_Form()

ASPOSECPP_SHARED_API XmlSchemaForm System::Xml::Schema::XmlSchemaElement::get_Form ( )

Returns the form for the element.

Returns
The form for the element. The default is the XmlSchema::get_ElementFormDefault value. Optional.

◆ get_IsAbstract()

ASPOSECPP_SHARED_API bool System::Xml::Schema::XmlSchemaElement::get_IsAbstract ( )

Returns information to indicate if the element can be used in an instance document.

Returns
If true, the element cannot appear in the instance document. The default is false. Optional.

◆ get_IsNillable()

ASPOSECPP_SHARED_API bool System::Xml::Schema::XmlSchemaElement::get_IsNillable ( )

Returns information that indicates if xsi:nil can occur in the instance data. Indicates if an explicit nil value can be assigned to the element.

Returns
If nillable is true, this enables an instance of the element to have the nil attribute set to true. The nil attribute is defined as part of the XML Schema namespace for instances. The default is false. Optional.

◆ get_Name()

ASPOSECPP_SHARED_API String System::Xml::Schema::XmlSchemaElement::get_Name ( )

Returns the name of the element.

Returns
The name of the element. The default is String::Empty.

◆ get_QualifiedName()

ASPOSECPP_SHARED_API SharedPtr<XmlQualifiedName> System::Xml::Schema::XmlSchemaElement::get_QualifiedName ( )

Returns the actual qualified name for the given element.

Returns
The qualified name of the element. The post-compilation interpretation of the QualifiedName value.

◆ get_RefName()

ASPOSECPP_SHARED_API SharedPtr<XmlQualifiedName> System::Xml::Schema::XmlSchemaElement::get_RefName ( )

Returns the reference name of an element declared in this schema (or another schema indicated by the specified namespace).

Returns
The reference name of the element.

◆ get_SchemaType()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaType> System::Xml::Schema::XmlSchemaElement::get_SchemaType ( )

Returns the type of the element. This can either be a complex type or a simple type.

Returns
The type of the element.

◆ get_SchemaTypeName()

ASPOSECPP_SHARED_API SharedPtr<XmlQualifiedName> System::Xml::Schema::XmlSchemaElement::get_SchemaTypeName ( )

Returns the name of a built-in data type defined in this schema or another schema indicated by the specified namespace.

Returns
The name of the built-in data type.

◆ get_SubstitutionGroup()

ASPOSECPP_SHARED_API SharedPtr<XmlQualifiedName> System::Xml::Schema::XmlSchemaElement::get_SubstitutionGroup ( )

Returns the name of an element that is being substituted by this element.

Returns
The qualified name of an element that is being substituted by this element. Optional.

◆ set_Block()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_Block ( XmlSchemaDerivationMethod  value)

Sets a Block derivation.

Parameters
valueThe value to set.

◆ set_DefaultValue()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_DefaultValue ( const String value)

Sets the default value of the element if its content is a simple type or content of the element is textOnly.

Parameters
valueThe value to set.

◆ set_Final()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_Final ( XmlSchemaDerivationMethod  value)

Sets the Final value to indicate that no further derivations are allowed.

Parameters
valueThe value to set.

◆ set_FixedValue()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_FixedValue ( const String value)

Sets the fixed value.

Parameters
valueThe value to set.

◆ set_Form()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_Form ( XmlSchemaForm  value)

Sets the form for the element.

Parameters
valueThe value to set.

◆ set_IsAbstract()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_IsAbstract ( bool  value)

Sets information to indicate if the element can be used in an instance document.

Parameters
valueThe value to set.

◆ set_IsNillable()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_IsNillable ( bool  value)

Sets information that indicates if xsi:nil can occur in the instance data. Indicates if an explicit nil value can be assigned to the element.

Parameters
valueThe value to set.

◆ set_Name()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_Name ( const String value)

Sets the name of the element.

Parameters
valueThe value to set.

◆ set_RefName()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_RefName ( const SharedPtr< XmlQualifiedName > &  value)

Sets the reference name of an element declared in this schema (or another schema indicated by the specified namespace).

Parameters
valueThe value to set.

◆ set_SchemaType()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_SchemaType ( const SharedPtr< XmlSchemaType > &  value)

Sets the type of the element. This can either be a complex type or a simple type.

Parameters
valueThe value to set.

◆ set_SchemaTypeName()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_SchemaTypeName ( const SharedPtr< XmlQualifiedName > &  value)

Sets the name of a built-in data type defined in this schema or another schema indicated by the specified namespace.

Parameters
valueThe value to set.

◆ set_SubstitutionGroup()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaElement::set_SubstitutionGroup ( const SharedPtr< XmlQualifiedName > &  value)

Sets the name of an element that is being substituted by this element.

Parameters
valueThe value to set.