2013-10-03 17:38:47 +02:00
|
|
|
/*****************************************************************************
|
|
|
|
* Enums.h *
|
|
|
|
* *
|
|
|
|
* System::Xml::XPath Enumerations definition file. *
|
|
|
|
* Copyright (c) XFX Team. All rights reserved. *
|
|
|
|
*****************************************************************************/
|
|
|
|
#ifndef _SYSTEM_XML_XPATH_ENUMS_
|
|
|
|
#define _SYSTEM_XML_XPATH_ENUMS_
|
2013-05-30 21:42:33 +02:00
|
|
|
|
|
|
|
namespace System
|
|
|
|
{
|
|
|
|
namespace Xml
|
|
|
|
{
|
|
|
|
namespace XPath
|
|
|
|
{
|
|
|
|
struct XmlCaseOrder
|
|
|
|
{
|
|
|
|
enum type
|
|
|
|
{
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Ignore the case.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
None,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Uppercase letters are sorted before lowercase letters.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
UpperFirst,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Lowercase letters are sorted before uppercase letters.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
LowerFirst
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct XmlDataType
|
|
|
|
{
|
|
|
|
enum type
|
|
|
|
{
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Values are sorted alphabetically.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Text = 1,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Values are sorted numerically.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Number
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct XmlSortOrder
|
|
|
|
{
|
|
|
|
enum type
|
|
|
|
{
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Nodes are sorted in ascending order. For example, if the numbers 1,2,3, and 4 are sorted in ascending order, they appear as 1,2,3,4.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Ascending = 1,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Nodes are sorted in descending order. For example, if the numbers 1,2,3, and 4 are sorted in descending order, they appear as, 4,3,2,1.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Descending
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct XPathNamespaceScope
|
|
|
|
{
|
|
|
|
enum type
|
|
|
|
{
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Returns 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.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
All,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Returns all namespaces defined in the scope of the current node, excluding the xmlns:xml namespace. The xmlns:xml namespace is always declared implicitly. The order of the namespaces returned is not defined.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
ExcludeXml,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Returns all namespaces that are defined locally at the current node.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Local
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct XPathNodeType
|
|
|
|
{
|
|
|
|
enum type
|
|
|
|
{
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* The root node of the XML document or node tree.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Root,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* An element, such as <element>.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Element,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* An attribute, such as id='123'.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Attribute,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A namespace, such as xmlns="namespace".
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Namespace,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* The text content of a node. Equivalent to the Document Object Model (DOM) Text and CDATA node types. Contains at least one character.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Text,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A node with white space characters and xml:space set to preserve.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
SignificantWhitespace,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A node with only white space characters and no significant white space. White space characters are #x20, #x9, #xD, or #xA.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Whitespace,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A processing instruction, such as <?pi test?>. This does not include XML declarations, which are not visible to the System::Xml::XPath::XPathNavigator class.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
ProcessingInstruction,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A comment, such as <!-- my comment -->
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Comment,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Any of the System::Xml::XPath::XPathNodeType node types.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
All
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
struct XPathResultType
|
|
|
|
{
|
|
|
|
enum type
|
|
|
|
{
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Any of the XPath node types.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Any = 5,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A System::Boolean true or false value.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Boolean = 2,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* The expression does not evaluate to the correct XPath type.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Error = 6,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A tree fragment.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Navigator = 1,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A node collection.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
NodeSet = 3,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A numeric value.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
Number = 0,
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* A System::String value.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
String = 4,
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Specifies the sort order for uppercase and lowercase letters.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
typedef XmlCaseOrder::type XmlCaseOrder_t;
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Specifies the data type used to determine sort order.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
typedef XmlDataType::type XmlDataType_t;
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Specifies the sort order.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
typedef XmlSortOrder::type XmlSortOrder_t;
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Defines the namespace scope.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
typedef XPathNamespaceScope::type XPathNamespaceScope_t;
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Defines the XPath node types that can be returned from the System::Xml::XPath::XPathNavigator class.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
typedef XPathNodeType::type XPathNodeType_t;
|
2013-10-03 17:38:47 +02:00
|
|
|
/**
|
|
|
|
* Specifies the return type of the XPath expression.
|
|
|
|
*/
|
2013-05-30 21:42:33 +02:00
|
|
|
typedef XPathResultType::type XPathResultType_t;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2013-10-03 17:38:47 +02:00
|
|
|
|
|
|
|
#endif //_SYSTEM_XML_XPATH_ENUMS_
|