XmlSchemaValidator

XmlSchemaValidator class

Represents an XML Schema Definition Language (XSD) Schema validation engine. The XmlSchemaValidator class cannot be inherited.

class XmlSchemaValidator : public System::Object

Methods

MethodDescription
void AddSchema(const SharedPtr<XmlSchema>&)Adds an XML Schema Definition Language (XSD) schema to the set of schemas used for validation.
void EndValidation()Ends validation and checks identity constraints for the entire XML document.
virtual bool Equals(ptr)Compares objects using C# Object.Equals semantics.
static std::enable_if<IsSmartPtr<T1>::value&&IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&)Compares reference type objects in C# style.
static std::enable_if<!IsSmartPtr<T1>::value&&!IsSmartPtr<T2>::value, bool>::type Equals(T1 const&, T2 const&)Compares value type objects in C# style.
static bool Equals(float const&, float const&)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.
static bool Equals(double const&, double const&)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.
virtual bool FastCast(const Details::FastRttiBase&, void **) constFor internal purposes only.
SharedPtr<IXmlLineInfo> get_LineInfoProvider()Returns the line number information for the XML node being validated.
SharedPtr<Uri> get_SourceUri()Returns the source URI for the XML node being validated.
SharedPtr<Object> get_ValidationEventSender()Returns the object sent as the sender object of a validation event.
Detail::SmartPtrCounter * GetCounter()Gets reference counter data structure associated with the object.
ArrayPtr<SharedPtr<XmlSchemaAttribute>> GetExpectedAttributes()Returns the expected attributes for the current element context.
ArrayPtr<SharedPtr<XmlSchemaParticle>> GetExpectedParticles()Returns the expected particles in the current element context.
virtual int32_t GetHashCode() constAnalog of C# Object.GetHashCode() method. Enables hashing of custom objects.
virtual const TypeInfo& GetType() constGets actual type of object. Analog of C# System.Object.GetType() call.
void GetUnspecifiedDefaultAttributes(const SharedPtr<Collections::Generic::List<SharedPtr<Object>>>&)Validates identity constraints on the default attributes and populates the List specified with XmlSchemaAttribute objects for any attributes with default values that have not been previously validated using the XmlSchemaValidator::ValidateAttribute method in the element context.
void Initialize()Initializes the state of the XmlSchemaValidator object.
void Initialize(const SharedPtr<XmlSchemaObject>&)Initializes the state of the XmlSchemaValidator object using the XmlSchemaObject specified for partial validation.
virtual bool Is(const TypeInfo&) constCheck if object represents an instance of type described by targetType. Analog of C# ‘is’ operator.
void Lock()Implements C# lock() statement locking. Call directly or use LockContext sentry object.
virtual ptr MemberwiseClone() constAnalog of C# Object.MemberwiseClone() method. Enables cloning custom types.
Object()Creates object. Initializes all internal data structures.
Object(Object const&)Copy constructor. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
Object& operator=(Object const&)Assignment operator. Doesn’t copy anything, really, just initializes new object and enables copy constructing subclasses.
static bool ReferenceEquals(ptr const&, ptr const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, T const&)Compares objects by reference.
static std::enable_if<!IsSmartPtr<T>::value, bool>::type ReferenceEquals(T const&, std::nullptr_t)Reference-compares value type object with nullptr.
bool ReferenceEquals(String const&, std::nullptr_t)Specialization of Object::ReferenceEquals for case of string and nullptr.
bool ReferenceEquals(String const&, String const&)Specialization of Object::ReferenceEquals for case of strings.
int RemovedSharedRefs(int)Decreases shared reference count by specified value.
void set_LineInfoProvider(const SharedPtr<IXmlLineInfo>&)Sets the line number information for the XML node being validated.
void set_SourceUri(const SharedPtr<Uri>&)Sets the source URI for the XML node being validated.
void set_ValidationEventSender(const SharedPtr<Object>&)Sets the object sent as the sender object of a validation event.
void set_XmlResolver(const SharedPtr<System::Xml::XmlResolver>&)Sets the XmlResolver object used to resolve xs:import and xs:include elements as well as xsi:schemaLocation and xsi:noNamespaceSchemaLocation attributes.
virtual void SetTemplateWeakPtr(uint32_t)Set n’th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode.
int SharedCount() constGets current value of shared reference counter.
Object * SharedRefAdded()Increments shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
int SharedRefRemovedSafe()Decrements and returns shared reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
void SkipToEndElement(const SharedPtr<XmlSchemaInfo>&)Skips validation of the current element content and prepares the XmlSchemaValidator object to validate content in the parent element’s context.
virtual String ToString() constAnalog of C# Object.ToString() method. Enables converting custom objects to string.
static const TypeInfo& Type()Implements C# typeof(System.Object) construct.
void Unlock()Implements C# lock() statement unlocking. Call directly or use LockContext sentry object.
SharedPtr<Object> ValidateAttribute(const String&, const String&, const String&, const SharedPtr<XmlSchemaInfo>&)Validates the attribute name, namespace URI, and value in the current element context.
SharedPtr<Object> ValidateAttribute(const String&, const String&, XmlValueGetter, const SharedPtr<XmlSchemaInfo>&)Validates the attribute name, namespace URI, and value in the current element context.
void ValidateElement(const String&, const String&, const SharedPtr<XmlSchemaInfo>&)Validates the element in the current context.
void ValidateElement(const String&, const String&, const SharedPtr<XmlSchemaInfo>&, const String&, const String&, const String&, const String&)Validates the element in the current context with the xsi:Type, xsi:Nil, xsi:SchemaLocation, and xsi:NoNamespaceSchemaLocation attribute values specified.
SharedPtr<Object> ValidateEndElement(const SharedPtr<XmlSchemaInfo>&)Verifies if the text content of the element is valid according to its data type for elements with simple content, and verifies if the content of the current element is complete for elements with complex content.
SharedPtr<Object> ValidateEndElement(const SharedPtr<XmlSchemaInfo>&, const SharedPtr<Object>&)Verifies if the text content of the element specified is valid according to its data type.
void ValidateEndOfAttributes(const SharedPtr<XmlSchemaInfo>&)Verifies whether all the required attributes in the element context are present and prepares the XmlSchemaValidator object to validate the child content of the element.
void ValidateText(const String&)Validates whether the text string specified is allowed in the current element context, and accumulates the text for validation if the current element has simple content.
void ValidateText(XmlValueGetter)Validates whether the text returned by the XmlValueGetter object specified is allowed in the current element context, and accumulates the text for validation if the current element has simple content.
void ValidateWhitespace(const String&)Validates whether the white space in the string specified is allowed in the current element context, and accumulates the white space for validation if the current element has simple content.
void ValidateWhitespace(XmlValueGetter)Validates whether the white space returned by the XmlValueGetter object specified is allowed in the current element context, and accumulates the white space for validation if the current element has simple content.
Detail::SmartPtrCounter * WeakRefAdded()Increments weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
void WeakRefRemoved()Decrements weak reference count. Shouldn’t be called directly; instead, use smart pointers or ThisProtector.
XmlSchemaValidator(const SharedPtr<XmlNameTable>&, const SharedPtr<XmlSchemaSet>&, const SharedPtr<IXmlNamespaceResolver>&, XmlSchemaValidationFlags)Initializes a new instance of the XmlSchemaValidator class.
virtual ~Object()Destroys object. Frees all internal data structures.

Typedefs

TypedefDescription
PtrAn alias for shared pointer to an instance of this class.

Remarks

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.

See Also