System::Xml::Schema::XmlSchemaComplexType Class Reference

Inherits System::Xml::Schema::XmlSchemaType.

Public Types

using Ptr = SharedPtr< XmlSchemaComplexType >
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::Schema::XmlSchemaType
using Ptr = SharedPtr< XmlSchemaType >
 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 ()
 
ASPOSECPP_SHARED_API void set_IsAbstract (bool value)
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_Block ()
 
ASPOSECPP_SHARED_API void set_Block (XmlSchemaDerivationMethod value)
 
ASPOSECPP_SHARED_API bool get_IsMixed () override
 
ASPOSECPP_SHARED_API void set_IsMixed (bool value) override
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaContentModelget_ContentModel ()
 
ASPOSECPP_SHARED_API void set_ContentModel (const SharedPtr< XmlSchemaContentModel > &value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaParticleget_Particle ()
 
ASPOSECPP_SHARED_API void set_Particle (const SharedPtr< XmlSchemaParticle > &value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaObjectCollectionget_Attributes ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaAnyAttributeget_AnyAttribute ()
 
ASPOSECPP_SHARED_API void set_AnyAttribute (const SharedPtr< XmlSchemaAnyAttribute > &value)
 
ASPOSECPP_SHARED_API XmlSchemaContentType get_ContentType ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaParticleget_ContentTypeParticle ()
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_BlockResolved ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaObjectTableget_AttributeUses ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaAnyAttributeget_AttributeWildcard ()
 
ASPOSECPP_SHARED_API XmlSchemaComplexType ()
 Initializes a new instance of the XmlSchemaComplexType class. More...
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaType
ASPOSECPP_SHARED_API String get_Name ()
 
ASPOSECPP_SHARED_API void set_Name (const String &value)
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_Final ()
 
ASPOSECPP_SHARED_API void set_Final (XmlSchemaDerivationMethod value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlQualifiedNameget_QualifiedName ()
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_FinalResolved ()
 
ASPOSECPP_SHARED_API SharedPtr< Objectget_BaseSchemaType ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaTypeget_BaseXmlSchemaType ()
 
ASPOSECPP_SHARED_API XmlSchemaDerivationMethod get_DerivedBy ()
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaDatatypeget_Datatype ()
 
ASPOSECPP_SHARED_API XmlTypeCode get_TypeCode ()
 
ASPOSECPP_SHARED_API XmlSchemaType ()
 Initializes a new instance of the XmlSchemaType class. More...
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaAnnotated
ASPOSECPP_SHARED_API String get_Id ()
 
ASPOSECPP_SHARED_API void set_Id (const String &value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaAnnotationget_Annotation ()
 
ASPOSECPP_SHARED_API void set_Annotation (const SharedPtr< XmlSchemaAnnotation > &value)
 
ASPOSECPP_SHARED_API ArrayPtr< SharedPtr< XmlAttribute > > get_UnhandledAttributes ()
 
ASPOSECPP_SHARED_API void set_UnhandledAttributes (const ArrayPtr< SharedPtr< XmlAttribute >> &value)
 
- Public Member Functions inherited from System::Xml::Schema::XmlSchemaObject
ASPOSECPP_SHARED_API int32_t get_LineNumber ()
 
ASPOSECPP_SHARED_API void set_LineNumber (int32_t value)
 
ASPOSECPP_SHARED_API int32_t get_LinePosition ()
 
ASPOSECPP_SHARED_API void set_LinePosition (int32_t value)
 
ASPOSECPP_SHARED_API String get_SourceUri ()
 
ASPOSECPP_SHARED_API void set_SourceUri (const String &value)
 
ASPOSECPP_SHARED_API SharedPtr< XmlSchemaObjectget_Parent ()
 
ASPOSECPP_SHARED_API void set_Parent (const SharedPtr< XmlSchemaObject > &value)
 
ASPOSECPP_SHARED_API SharedPtr< System::Xml::Serialization::XmlSerializerNamespacesget_Namespaces ()
 
ASPOSECPP_SHARED_API void set_Namespaces (const SharedPtr< System::Xml::Serialization::XmlSerializerNamespaces > &value)
 
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)
 
template<>
bool Equals (double const &objA, double const &objB)
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 

Additional Inherited Members

- Static Public Member Functions inherited from System::Xml::Schema::XmlSchemaType
static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaSimpleTypeGetBuiltInSimpleType (const SharedPtr< XmlQualifiedName > &qualifiedName)
 
static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaSimpleTypeGetBuiltInSimpleType (XmlTypeCode typeCode)
 
static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaComplexTypeGetBuiltInComplexType (XmlTypeCode typeCode)
 
static ASPOSECPP_SHARED_API SharedPtr< XmlSchemaComplexTypeGetBuiltInComplexType (const SharedPtr< XmlQualifiedName > &qualifiedName)
 
static ASPOSECPP_SHARED_API bool IsDerivedFrom (SharedPtr< XmlSchemaType > derivedType, const SharedPtr< XmlSchemaType > &baseType, XmlSchemaDerivationMethod except)
 
- 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 complexType element from XML Schema as specified by the World Wide Web Consortium (W3C). This class defines a complex type that determines the set of attributes and content of an element.

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

◆ XmlSchemaComplexType()

ASPOSECPP_SHARED_API System::Xml::Schema::XmlSchemaComplexType::XmlSchemaComplexType ( )

Initializes a new instance of the XmlSchemaComplexType class.

Member Function Documentation

◆ get_AnyAttribute()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaAnyAttribute> System::Xml::Schema::XmlSchemaComplexType::get_AnyAttribute ( )

Returns the value for the XmlSchemaAnyAttribute component of the complex type.

Returns
The XmlSchemaAnyAttribute component of the complex type.

◆ get_Attributes()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaObjectCollection> System::Xml::Schema::XmlSchemaComplexType::get_Attributes ( )

Returns the collection of attributes for the complex type.

Returns
Contains XmlSchemaAttribute and XmlSchemaAttributeGroupRef classes.

◆ get_AttributeUses()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaObjectTable> System::Xml::Schema::XmlSchemaComplexType::get_AttributeUses ( )

Returns the collection of all the complied attributes of this complex type and its base types.

Returns
The collection of all the attributes from this complex type and its base types. The post-compilation the AttributeUses value.

◆ get_AttributeWildcard()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaAnyAttribute> System::Xml::Schema::XmlSchemaComplexType::get_AttributeWildcard ( )

Returns the post-compilation value for anyAttribute for this complex type and its base type(s).

Returns
The post-compilation value of the anyAttribute element.

◆ get_Block()

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

Returns the block attribute.

Returns
The block attribute prevents a complex type from being used in the specified type of derivation. The default is XmlSchemaDerivationMethod::None. Optional.

◆ get_BlockResolved()

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

Returns the value after the type has been compiled to the post-schema-validation information set (infoset). This value indicates how the type is enforced when xsi:type is used in the instance document.

Returns
The post-schema-validated infoset value. The default is BlockDefault value on the schema element.

◆ get_ContentModel()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaContentModel> System::Xml::Schema::XmlSchemaComplexType::get_ContentModel ( )

Returns the post-compilation XmlSchemaContentModel of this complex type.

Returns
The content model type that is one of the XmlSchemaSimpleContent or XmlSchemaComplexContent classes.

◆ get_ContentType()

ASPOSECPP_SHARED_API XmlSchemaContentType System::Xml::Schema::XmlSchemaComplexType::get_ContentType ( )

Returns the content model of the complex type which holds the post-compilation value.

Returns
The post-compilation value of the content model for the complex type.

◆ get_ContentTypeParticle()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaParticle> System::Xml::Schema::XmlSchemaComplexType::get_ContentTypeParticle ( )

Returns the particle that holds the post-compilation value of the XmlSchemaComplexType::get_ContentType particle.

Returns
The particle for the content type. The post-compilation value of the XmlSchemaComplexType::get_ContentType particle.

◆ get_IsAbstract()

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

Returns the information that determines if the complexType element can be used in the instance document.

Returns
If true, an element cannot use this complexType element directly and must use a complex type that is derived from this complexType element. The default is false. Optional.

◆ get_IsMixed()

ASPOSECPP_SHARED_API bool System::Xml::Schema::XmlSchemaComplexType::get_IsMixed ( )
overridevirtual

Returns information that determines if the complex type has a mixed content model (markup within the content).

Returns
true, if character data can appear between child elements of this complex type; otherwise, false. The default is false. Optional.

Reimplemented from System::Xml::Schema::XmlSchemaType.

◆ get_Particle()

ASPOSECPP_SHARED_API SharedPtr<XmlSchemaParticle> System::Xml::Schema::XmlSchemaComplexType::get_Particle ( )

Returns the compositor type as one of the XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll, or XmlSchemaSequence classes.

Returns
The compositor type.

◆ set_AnyAttribute()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaComplexType::set_AnyAttribute ( const SharedPtr< XmlSchemaAnyAttribute > &  value)

Sets the value for the XmlSchemaAnyAttribute component of the complex type.

Parameters
valueThe value to set.

◆ set_Block()

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

Sets the block attribute.

Parameters
valueThe value to set.

◆ set_ContentModel()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaComplexType::set_ContentModel ( const SharedPtr< XmlSchemaContentModel > &  value)

Sets the post-compilation XmlSchemaContentModel of this complex type.

Parameters
valueThe value to set.

◆ set_IsAbstract()

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

Sets the information that determines if the complexType element can be used in the instance document.

Parameters
valueThe value to set.

◆ set_IsMixed()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaComplexType::set_IsMixed ( bool  value)
overridevirtual

Sets information that determines if the complex type has a mixed content model (markup within the content).

Parameters
valueThe value to set.

Reimplemented from System::Xml::Schema::XmlSchemaType.

◆ set_Particle()

ASPOSECPP_SHARED_API void System::Xml::Schema::XmlSchemaComplexType::set_Particle ( const SharedPtr< XmlSchemaParticle > &  value)

Sets the compositor type as one of the XmlSchemaGroupRef, XmlSchemaChoice, XmlSchemaAll, or XmlSchemaSequence classes.

Parameters
valueThe value to set.