System::Xml Namespace Reference

Namespaces

 Resolvers
 
 Schema
 
 Serialization
 
 XPath
 
 Xsl
 

Classes

class  Details_XmlException
 Returns detailed information about the last exception.
 
class  IApplicationResourceStreamResolver
 Represents an application resource stream resolver. More...
 
class  IHasXmlNode
 Enables a class to return an XmlNode from the current context or position. More...
 
class  IXmlLineInfo
 Provides an interface to enable a class to return line and position information. More...
 
class  IXmlNamespaceResolver
 Provides read-only access to a set of prefix and namespace mappings. More...
 
class  NameTable
 Implements a single-threaded XmlNameTable. More...
 
class  XmlAttribute
 Represents an attribute. Valid and default values for the attribute are defined in a document type definition (DTD) or schema. More...
 
class  XmlAttributeCollection
 Represents a collection of attributes that can be accessed by name or index. More...
 
class  XmlCDataSection
 Represents a CDATA section. More...
 
class  XmlCharacterData
 Provides text manipulation methods that are used by several classes. More...
 
class  XmlCharType
 For internal purposes. Do not use this class directly. More...
 
class  XmlComment
 Represents the content of an XML comment. More...
 
class  XmlConvert
 Encodes and decodes XML names, and provides methods for converting between runtime types and XML Schema definition language (XSD) types. When converting data types, the values returned are locale-independent. More...
 
class  XmlDeclaration
 Represents the XML declaration node <?xml version='1.0'...?>. More...
 
class  XmlDocument
 Represents an XML document. You can use this class to load, validate, edit, add, and position XML in a document. More...
 
class  XmlDocumentFragment
 Represents a lightweight object that is useful for tree insert operations. More...
 
class  XmlDocumentType
 Represents the document type declaration. More...
 
class  XmlElement
 Represents an element. More...
 
class  XmlEntity
 Represents an entity declaration, such as <!ENTITY... >. More...
 
class  XmlEntityReference
 Represents an entity reference node. More...
 
class  XmlImplementation
 Defines the context for a set of XmlDocument objects. More...
 
class  XmlLinkedNode
 Returns the node immediately preceding or following this node. More...
 
class  XmlNamedNodeMap
 Represents a collection of nodes that can be accessed by name or index. More...
 
class  XmlNamespaceManager
 Resolves, adds, and removes namespaces to a collection and provides scope management for these namespaces. More...
 
class  XmlNameTable
 Table of atomized string objects. More...
 
class  XmlNode
 Represents a single node in the XML document. More...
 
class  XmlNodeChangedEventArgs
 Provides data for the XmlDocument::NodeChanged, XmlDocument::NodeChanging, XmlDocument::NodeInserted, XmlDocument::NodeInserting, XmlDocument::NodeRemoved and XmlDocument::NodeRemoving events. More...
 
class  XmlNodeList
 Represents an ordered collection of nodes. More...
 
class  XmlNodeReader
 Represents a reader that provides fast, non-cached forward only access to XML data in an XmlNode. More...
 
class  XmlNotation
 Represents a notation declaration, such as <!NOTATION... >. More...
 
class  XmlParserContext
 Provides all the context information required by the XmlReader to parse an XML fragment. More...
 
class  XmlProcessingInstruction
 Represents a processing instruction, which XML defines to keep processor-specific information in the text of the document. More...
 
class  XmlQualifiedName
 Represents an XML qualified name. More...
 
class  XmlReader
 Represents a reader that provides fast, noncached, forward-only access to XML data. More...
 
class  XmlReaderSettings
 Specifies a set of features to support on the XmlReader object created by the XmlReader::Create method. More...
 
class  XmlResolver
 Resolves external XML resources named by a Uniform Resource Identifier (URI). More...
 
class  XmlSecureResolver
 Helps to secure another implementation of XmlResolver by wrapping the XmlResolver object and restricting the resources that the underlying XmlResolver has access to. More...
 
class  XmlSignificantWhitespace
 Represents white space between markup in a mixed content node or white space within an xml:space='preserve' scope. This is also referred to as significant white space. More...
 
class  XmlText
 Represents the text content of an element or attribute. More...
 
class  XmlTextReader
 Represents a reader that provides fast, non-cached, forward-only access to XML data. More...
 
class  XmlTextWriter
 Represents a writer that provides a fast, non-cached, forward-only way of generating streams or files containing XML data that conforms to the W3C Extensible Markup Language (XML) 1.0 and the Namespaces in XML recommendations. More...
 
class  XmlUrlResolver
 Resolves external XML resources named by a Uniform Resource Identifier (URI). More...
 
class  XmlValidatingReader
 Represents a reader that provides document type definition (DTD), XML-Data Reduced (XDR) schema, and XML Schema definition language (XSD) validation. More...
 
class  XmlWhitespace
 Represents white space in element content. More...
 
class  XmlWriter
 Represents a writer that provides a fast, non-cached, forward-only way to generate streams or files that contain XML data. More...
 
class  XmlWriterSettings
 Specifies a set of features to support on the XmlWriter object created by the XmlWriter::Create method. More...
 

Typedefs

using XmlException = System::ExceptionWrapper< Details_XmlException >
 
using XmlNodeChangedEventHandler = System::MulticastDelegate< void(SharedPtr< Object >, SharedPtr< XmlNodeChangedEventArgs >)>
 Represents the method that handles XmlDocument::NodeChanged, XmlDocument::NodeChanging, XmlDocument::NodeInserted, XmlDocument::NodeInserting, XmlDocument::NodeRemoved and XmlDocument::NodeRemoving events. More...
 

Enumerations

enum  ConformanceLevel { ConformanceLevel::Auto = 0, ConformanceLevel::Fragment = 1, ConformanceLevel::Document = 2 }
 Specifies the amount of input or output checking that XmlReader and XmlWriter objects perform. More...
 
enum  DtdProcessing { DtdProcessing::Prohibit, DtdProcessing::Ignore, DtdProcessing::Parse }
 Specifies the options for processing DTDs. The DtdProcessing enumeration is used by the XmlReaderSettings class. More...
 
enum  EntityHandling { EntityHandling::ExpandEntities = 1, EntityHandling::ExpandCharEntities = 2 }
 Specifies how the XmlTextReader or XmlValidatingReader handle entities. More...
 
enum  Formatting { Formatting::None, Formatting::Indented }
 Specifies formatting options for the XmlTextWriter. More...
 
enum  NamespaceHandling { NamespaceHandling::Default = 0x0, NamespaceHandling::OmitDuplicates = 0x1 }
 Specifies whether to remove duplicate namespace declarations in the XmlWriter. More...
 
enum  NewLineHandling { NewLineHandling::Replace = 0, NewLineHandling::Entitize = 1, NewLineHandling::None = 2 }
 Specifies how to handle line breaks. More...
 
enum  ReadState {
  ReadState::Initial = 0, ReadState::Interactive = 1, ReadState::Error = 2, ReadState::EndOfFile = 3,
  ReadState::Closed = 4
}
 Specifies the state of the reader. More...
 
enum  XmlTokenizedType {
  XmlTokenizedType::CDATA = 0, XmlTokenizedType::ID = 1, XmlTokenizedType::IDREF = 2, XmlTokenizedType::IDREFS = 3,
  XmlTokenizedType::ENTITY = 4, XmlTokenizedType::ENTITIES = 5, XmlTokenizedType::NMTOKEN = 6, XmlTokenizedType::NMTOKENS = 7,
  XmlTokenizedType::NOTATION = 8, XmlTokenizedType::ENUMERATION = 9, XmlTokenizedType::QName = 10, XmlTokenizedType::NCName = 11,
  XmlTokenizedType::None = 12
}
 Represents the XML type for the string. This allows the string to be read as a particular XML type, for example a CDATA section type. More...
 
enum  ValidationType {
  ValidationType::None, ValidationType::Auto, ValidationType::DTD, ValidationType::XDR,
  ValidationType::Schema
}
 Specifies the type of validation to perform. More...
 
enum  WhitespaceHandling { WhitespaceHandling::All = 0, WhitespaceHandling::Significant = 1, WhitespaceHandling::None = 2 }
 Specifies how white space is handled. More...
 
enum  WriteState {
  WriteState::Start, WriteState::Prolog, WriteState::Element, WriteState::Attribute,
  WriteState::Content, WriteState::Closed, WriteState::Error
}
 Specifies the state of the XmlWriter. More...
 
enum  ExceptionType { ExceptionType::ArgumentException, ExceptionType::XmlException }
 
enum  XmlDateTimeSerializationMode { XmlDateTimeSerializationMode::Local, XmlDateTimeSerializationMode::Utc, XmlDateTimeSerializationMode::Unspecified, XmlDateTimeSerializationMode::RoundtripKind }
 Specifies how to treat the time value when converting between string and DateTime. More...
 
enum  XmlNamespaceScope { XmlNamespaceScope::All, XmlNamespaceScope::ExcludeXml, XmlNamespaceScope::Local }
 Defines the namespace scope. More...
 
enum  XmlNodeChangedAction { XmlNodeChangedAction::Insert = 0, XmlNodeChangedAction::Remove = 1, XmlNodeChangedAction::Change = 2 }
 Specifies the type of node change. More...
 
enum  XmlNodeOrder { XmlNodeOrder::Before, XmlNodeOrder::After, XmlNodeOrder::Same, XmlNodeOrder::Unknown }
 Describes the document order of a node compared to a second node. More...
 
enum  XmlNodeType {
  XmlNodeType::None, XmlNodeType::Element, XmlNodeType::Attribute, XmlNodeType::Text,
  XmlNodeType::CDATA, XmlNodeType::EntityReference, XmlNodeType::Entity, XmlNodeType::ProcessingInstruction,
  XmlNodeType::Comment, XmlNodeType::Document, XmlNodeType::DocumentType, XmlNodeType::DocumentFragment,
  XmlNodeType::Notation, XmlNodeType::Whitespace, XmlNodeType::SignificantWhitespace, XmlNodeType::EndElement,
  XmlNodeType::EndEntity, XmlNodeType::XmlDeclaration
}
 Specifies the type of node. More...
 
enum  XmlOutputMethod { XmlOutputMethod::Xml = 0, XmlOutputMethod::Html = 1, XmlOutputMethod::Text = 2, XmlOutputMethod::AutoDetect = 3 }
 Specifies the method used to serialize the XmlWriter output. More...
 
enum  XmlSpace { XmlSpace::None = 0, XmlSpace::Default = 1, XmlSpace::Preserve = 2 }
 Specifies the current xml:space scope. More...
 
enum  TriState { TriState::Unknown = -1, TriState::False = 0, TriState::True = 1 }
 
enum  XmlStandalone { XmlStandalone::Omit = 0, XmlStandalone::Yes = 1, XmlStandalone::No = 2 }
 

Functions

ASPOSECPP_SHARED_API bool operator== (const SharedPtr< XmlQualifiedName > &a, const SharedPtr< XmlQualifiedName > &b)
 Compares two XmlQualifiedName objects. More...
 
ASPOSECPP_SHARED_API bool operator!= (const SharedPtr< XmlQualifiedName > &a, const SharedPtr< XmlQualifiedName > &b)
 Compares two XmlQualifiedName objects. More...
 

Typedef Documentation

◆ XmlException

using System::Xml::XmlException = typedef System::ExceptionWrapper<Details_XmlException>

◆ XmlNodeChangedEventHandler

using System::Xml::XmlNodeChangedEventHandler = typedef System::MulticastDelegate<void(SharedPtr<Object> , SharedPtr<XmlNodeChangedEventArgs> )>

Represents the method that handles XmlDocument::NodeChanged, XmlDocument::NodeChanging, XmlDocument::NodeInserted, XmlDocument::NodeInserting, XmlDocument::NodeRemoved and XmlDocument::NodeRemoving events.

Parameters
senderThe source of the event.
eAn XmlNodeChangedEventArgs containing the event data.

Enumeration Type Documentation

◆ ConformanceLevel

Specifies the amount of input or output checking that XmlReader and XmlWriter objects perform.

Enumerator
Auto 

The XmlReader or XmlWriter object automatically detects whether document-level or fragment-level checking should be performed, and does the appropriate checking. If you're wrapping another XmlReader or XmlWriter object, the outer object doesn't do any additional conformance checking. Conformance checking is left up to the underlying object.

See the XmlReaderSettings::get_ConformanceLevel and XmlWriterSettings::get_ConformanceLevel methods for details on how the compliance level is determined.

Fragment 

The XML data is a well-formed XML fragment, as defined by the W3C. This conformance level represents an XML document that might not have a root element but is otherwise well-formed. This level of checking ensures that the stream being read or written can be consumed by any processor as an XML 1.0 external parsed entity.

Document 

The XML data complies with the rules for a well-formed XML 1.0 document, as defined by the W3C. This level of checking ensures that the stream being read or written can be consumed by any processor as an XML 1.0 document.

◆ DtdProcessing

Specifies the options for processing DTDs. The DtdProcessing enumeration is used by the XmlReaderSettings class.

Enumerator
Prohibit 

Specifies that when a DTD is encountered, an XmlException is thrown with a message that states that DTDs are prohibited. This is the default behavior.

Ignore 

Causes the DOCTYPE element to be ignored. No DTD processing occurs, and the DTD/DOCTYPE is lost on output.

Parse 

Used for parsing DTDs.

◆ EntityHandling

Specifies how the XmlTextReader or XmlValidatingReader handle entities.

Enumerator
ExpandEntities 

Expands all entities and returns the expanded nodes.

XmlNodeType::EntityReference nodes are not returned. The entity text is expanded in place of the entity references.

ExpandCharEntities 

Expands character entities and returns general entities as XmlNodeType::EntityReference nodes.

You must call XmlReader::ResolveEntity to see what the general entities expand to. This enables you to optimize entity handling by only expanding the entity the first time it is used.

When set to EntityHandling::ExpandCharEntities, a reader call to the XmlReader::GetAttribute method expands all entities (both general and character entities).

◆ ExceptionType

Enumerator
ArgumentException 
XmlException 

◆ Formatting

Specifies formatting options for the XmlTextWriter.

Enumerator
None 

No special formatting is applied. This is the default.

Indented 

Causes child elements to be indented according to the XmlTextWriter::set_Indentation and XmlTextWriter::set_IndentChar settings.

This option indents element content only; mixed content is not affected. For the XML 1.0 definitions of these terms, see the W3C documentation Element Content and Mixed Content.

◆ NamespaceHandling

Specifies whether to remove duplicate namespace declarations in the XmlWriter.

Enumerator
Default 

Specifies that duplicate namespace declarations will not be removed.

OmitDuplicates 

Specifies that duplicate namespace declarations will be removed. For the duplicate namespace to be removed, the prefix and the namespace must match.

◆ NewLineHandling

Specifies how to handle line breaks.

Enumerator
Replace 

New line characters are replaced to match the character specified in the XmlWriterSettings::set_NewLineChars value.

Entitize 

New line characters are entitized. This setting preserves all characters when the output is read by a normalizing XmlReader.

None 

The new line characters are unchanged. The output is the same as the input.

◆ ReadState

Specifies the state of the reader.

Enumerator
Initial 

The XmlReader::Read method has not been called.

Interactive 

The XmlReader::Read method has been called. Additional methods may be called on the reader.

Error 

An error occurred that prevents the read operation from continuing.

EndOfFile 

The end of the file has been reached successfully.

Closed 

The XmlReader::Close method has been called.

◆ TriState

enum System::Xml::TriState
strong
Enumerator
Unknown 
False 
True 

◆ ValidationType

Specifies the type of validation to perform.

Enumerator
None 

No validation is performed, and no validation errors are thrown. This setting creates an XML 1.0 compliant non-validating parser.

Calls to XmlReader::ResolveEntity report default attributes and resolve general entities. The DOCTYPE is not used for validation purposes.

Auto 

Validates if DTD or schema information is found.

Deprecated:
This field is obsolete. It applies only to the obsolete XmlValidatingReader class.
DTD 

Validates according to the DTD.

XDR 

Validate according to XML-Data Reduced (XDR) schemas, including inline XDR schemas. XDR schemas are recognized using the x-schema namespace prefix or the XmlValidatingReader::get_Schemas value.

Deprecated:
This field is obsolete. It applies only to the obsolete XmlValidatingReader class.
Schema 

Validate according to XML Schema definition language (XSD) schemas, including inline XML Schemas. XML Schemas are associated with namespace URIs either by using the schemaLocation attribute or the provided Schemas.

◆ WhitespaceHandling

Specifies how white space is handled.

Enumerator
All 

Return Whitespace and SignificantWhitespace nodes. This is the default.

Significant 

Return SignificantWhitespace nodes only.

None 

Return no Whitespace and no SignificantWhitespace nodes.

◆ WriteState

Specifies the state of the XmlWriter.

Enumerator
Start 

Indicates that the XmlWriter::Write method has not yet been called.

Prolog 

Indicates that the prolog is being written.

Element 

Indicates that an element start tag is being written.

Attribute 

Indicates that an attribute value is being written.

Content 

Indicates that element content is being written.

Closed 

Indicates that the XmlWriter::Close method has been called.

Error 

An exception has been thrown, which has left the XmlWriter in an invalid state. You can call the XmlWriter::Close method to put the XmlWriter in the WriteState::Closed state. Any other XmlWriter method calls results in an InvalidOperationException.

◆ XmlDateTimeSerializationMode

Specifies how to treat the time value when converting between string and DateTime.

Enumerator
Local 

Treat as local time. If the DateTime object represents a Coordinated Universal Time (UTC), it is converted to the local time.

Utc 

Treat as a UTC. If the DateTime object represents a local time, it is converted to a UTC.

Unspecified 

Treat as a local time if a DateTime is being converted to a string. If a string is being converted to DateTime, convert to a local time if a time zone is specified.

RoundtripKind 

Time zone information should be preserved when converting.

◆ XmlNamespaceScope

Defines the namespace scope.

Enumerator
All 

All namespaces defined in the scope of the current node. This includes the xmlns:xml namespace which is always declared implicitly. The order of the namespaces returned is not defined.

ExcludeXml 

All namespaces defined in the scope of the current node, excluding the xmlns:xml namespace, which is always declared implicitly. The order of the namespaces returned is not defined.

Local 

All namespaces that are defined locally at the current node.

◆ XmlNodeChangedAction

Specifies the type of node change.

Enumerator
Insert 

A node is being inserted in the tree.

Remove 

A node is being removed from the tree.

Change 

A node value is being changed.

◆ XmlNodeOrder

Describes the document order of a node compared to a second node.

Enumerator
Before 

The current node of this navigator is before the current node of the supplied navigator.

After 

The current node of this navigator is after the current node of the supplied navigator.

Same 

The two navigators are positioned on the same node.

Unknown 

The node positions cannot be determined in document order, relative to each other. This could occur if the two nodes reside in different trees.

◆ XmlNodeType

Specifies the type of node.

Enumerator
None 

This is returned by the XmlReader if a Read method has not been called.

Element 

An element (for example, <item>).

Attribute 

An attribute (for example, id='123').

Text 

The text content of a node. A XmlNodeType::Text node cannot have any child nodes. It can appear as the child node of the XmlNodeType::Attribute, XmlNodeType::DocumentFragment, XmlNodeType::Element, and XmlNodeType::EntityReference nodes.

CDATA 

A CDATA section (for example, <![CDATA[my escaped text]]>).

EntityReference 

A reference to an entity (for example, &num;).

Entity 

An entity declaration (for example, <!ENTITY...>).

ProcessingInstruction 

A processing instruction (for example, <?pi test?>).

Comment 

A comment (for example, ).

Document 

A document object that, as the root of the document tree, provides access to the entire XML document.

DocumentType 

The document type declaration, indicated by the following tag (for example, <!DOCTYPE...>).

DocumentFragment 

A document fragment.

Notation 

A notation in the document type declaration (for example, <!NOTATION...>).

Whitespace 

White space between markup.

SignificantWhitespace 

White space between markup in a mixed content model or white space within the xml:space="preserve" scope.

EndElement 

An end element tag (for example, ).

EndEntity 

Returned when XmlReader gets to the end of the entity replacement as a result of a call to XmlReader::ResolveEntity.

XmlDeclaration 

The XML declaration (for example, <?xml version='1.0'?>). The XmlNodeType::XmlDeclaration node must be the first node in the document. It cannot have children. It is a child of the XmlNodeType::Document node. It can have attributes that provide version and encoding information.

◆ XmlOutputMethod

Specifies the method used to serialize the XmlWriter output.

Enumerator
Xml 

Serialize according to the XML 1.0 rules.

Html 

Serialize according to the HTML rules specified by XSLT.

Text 

Serialize text blocks only.

AutoDetect 

Use the XSLT rules to choose between the XmlOutputMethod::Xml and XmlOutputMethod::Html output methods at runtime.

◆ XmlSpace

enum System::Xml::XmlSpace
strong

Specifies the current xml:space scope.

Enumerator
None 

No xml:space scope.

Default 

The xml:space scope equals default.

Preserve 

The xml:space scope equals preserve.

◆ XmlStandalone

Enumerator
Omit 
Yes 
No 

◆ XmlTokenizedType

Represents the XML type for the string. This allows the string to be read as a particular XML type, for example a CDATA section type.

Enumerator
CDATA 

CDATA type.

ID 

ID type.

IDREF 

IDREF type.

IDREFS 

IDREFS type.

ENTITY 

ENTITY type.

ENTITIES 

ENTITIES type.

NMTOKEN 

NMTOKEN type.

NMTOKENS 

NMTOKENS type.

NOTATION 

NOTATION type.

ENUMERATION 

ENUMERATION type.

QName 

QName type.

NCName 

NCName type.

None 

No type.

Function Documentation

◆ operator!=()

ASPOSECPP_SHARED_API bool System::Xml::operator!= ( const SharedPtr< XmlQualifiedName > &  a,
const SharedPtr< XmlQualifiedName > &  b 
)

Compares two XmlQualifiedName objects.

Parameters
aAn XmlQualifiedName to compare.
bAn XmlQualifiedName to compare.
Returns
true if the name and namespace values for the two objects differ; otherwise, false.

◆ operator==()

ASPOSECPP_SHARED_API bool System::Xml::operator== ( const SharedPtr< XmlQualifiedName > &  a,
const SharedPtr< XmlQualifiedName > &  b 
)

Compares two XmlQualifiedName objects.

Parameters
aAn XmlQualifiedName to compare.
bAn XmlQualifiedName to compare.
Returns
true if the two objects have the same name and namespace values; otherwise, false.