XQC - XQuery C API 1.0
Classes | Macros | Enumerations
xqc.h File Reference
#include <stdio.h>

Go to the source code of this file.

Classes

struct  XQC_InputStream
 The ::XQC_InputStream struct is designed to be populated by users for the purpose of streaming data into an XQC implementation. More...
 
struct  XQC_ErrorHandler
 The ::XQC_ErrorHandler struct is designed to be populated by users for the purpose of collecting more detailed error messages from an XQC implementation. More...
 
struct  XQC_Implementation
 The ::XQC_Implementation struct provides factory functions for preparing queries. More...
 
struct  XQC_StaticContext
 The ::XQC_StaticContext struct provides a way to specify values for the static context of the query to be prepared. More...
 
struct  XQC_Expression
 The ::XQC_Expression struct represents a prepared query, and allows the user to execute that query any number of times. More...
 
struct  XQC_DynamicContext
 
struct  XQC_Sequence
 

Macros

#define XQC_VERSION_NUMBER   1
 The version of the XQC API in this header file.
 

Enumerations

enum  XQC_Error {
  XQC_NO_ERROR = 0 , XQC_END_OF_SEQUENCE , XQC_NO_CURRENT_ITEM , XQC_PARSE_ERROR ,
  XQC_INVALID_ARGUMENT , XQC_NOT_NODE , XQC_INTERNAL_ERROR , XQC_NOT_IMPLEMENTED ,
  XQC_UNRECOGNIZED_ENCODING , XQC_STATIC_ERROR , XQC_TYPE_ERROR , XQC_DYNAMIC_ERROR ,
  XQC_SERIALIZATION_ERROR
}
 The error enumeration used by all XQC functions to designate error condition. More...
 
enum  XQC_ItemType {
  XQC_EMPTY_TYPE = 0 , XQC_DOCUMENT_TYPE , XQC_ELEMENT_TYPE , XQC_ATTRIBUTE_TYPE ,
  XQC_TEXT_TYPE , XQC_PROCESSING_INSTRUCTION_TYPE , XQC_COMMENT_TYPE , XQC_NAMESPACE_TYPE ,
  XQC_ANY_SIMPLE_TYPE , XQC_ANY_URI_TYPE , XQC_BASE_64_BINARY_TYPE , XQC_BOOLEAN_TYPE ,
  XQC_DATE_TYPE , XQC_DATE_TIME_TYPE , XQC_DAY_TIME_DURATION_TYPE , XQC_DECIMAL_TYPE ,
  XQC_DOUBLE_TYPE , XQC_DURATION_TYPE , XQC_FLOAT_TYPE , XQC_G_DAY_TYPE ,
  XQC_G_MONTH_TYPE , XQC_G_MONTH_DAY_TYPE , XQC_G_YEAR_TYPE , XQC_G_YEAR_MONTH_TYPE ,
  XQC_HEX_BINARY_TYPE , XQC_NOTATION_TYPE , XQC_QNAME_TYPE , XQC_STRING_TYPE ,
  XQC_TIME_TYPE , XQC_UNTYPED_ATOMIC_TYPE , XQC_YEAR_MONTH_DURATION_TYPE
}
 
enum  XQC_XPath1Mode { XQC_XPATH2_0 , XQC_XPATH1_0 }
 XPath 1.0 compatibility mode as defined in http://www.w3.org/TR/xquery/#static_context. More...
 
enum  XQC_OrderingMode { XQC_ORDERED , XQC_UNORDERED }
 Ordering mode as defined in http://www.w3.org/TR/xquery/#static_context. More...
 
enum  XQC_OrderEmptyMode { XQC_EMPTY_GREATEST , XQC_EMPTY_LEAST }
 Default order for empty sequences as defined in http://www.w3.org/TR/xquery/#static_context. More...
 
enum  XQC_InheritMode { XQC_INHERIT_NS , XQC_NO_INHERIT_NS }
 Inherit part of the Copy-namespace mode as defined in http://www.w3.org/TR/xquery/#static_context. More...
 
enum  XQC_PreserveMode { XQC_PRESERVE_NS , XQC_NO_PRESERVE_NS }
 Preserve part of the Copy-namespace mode as defined in http://www.w3.org/TR/xquery/#static_context. More...
 
enum  XQC_BoundarySpaceMode { XQC_PRESERVE_SPACE , XQC_STRIP_SPACE }
 Boundary-space policy as defined in http://www.w3.org/TR/xquery/#static_context. More...
 
enum  XQC_ConstructionMode { XQC_PRESERVE_CONS , XQC_STRIP_CONS }
 Construction mode as defined in http://www.w3.org/TR/xquery/#static_context. More...
 

Macro Definition Documentation

◆ XQC_VERSION_NUMBER

#define XQC_VERSION_NUMBER   1

The version of the XQC API in this header file.

Enumeration Type Documentation

◆ XQC_BoundarySpaceMode

Boundary-space policy as defined in http://www.w3.org/TR/xquery/#static_context.

Enumerator
XQC_PRESERVE_SPACE 
XQC_STRIP_SPACE 

◆ XQC_ConstructionMode

Construction mode as defined in http://www.w3.org/TR/xquery/#static_context.

Enumerator
XQC_PRESERVE_CONS 
XQC_STRIP_CONS 

◆ XQC_Error

enum XQC_Error

The error enumeration used by all XQC functions to designate error condition.

All XQC functions return a value of type XQC_Error.

Enumerator
XQC_NO_ERROR 

No error.

XQC_END_OF_SEQUENCE 

The end of the XQC_Sequence has been reached.

XQC_NO_CURRENT_ITEM 
XQC_PARSE_ERROR 
XQC_INVALID_ARGUMENT 
XQC_NOT_NODE 
XQC_INTERNAL_ERROR 

An implementation specific error has occurred.

XQC_NOT_IMPLEMENTED 

The implementation does not implement that function.

XQC_UNRECOGNIZED_ENCODING 

The encoding of the query has not been recognized, or is not supported by the implementation.

All implementations must support queries in UTF-8.

XQC_STATIC_ERROR 

A static error has occured while preparing the query.

XQC_TYPE_ERROR 

A type error has occured while preparing or executing the query.

XQC_DYNAMIC_ERROR 

A dynamic error has occured while preparing or executing the query.

XQC_SERIALIZATION_ERROR 

A serialization error has occured while serializing the output of a query.

◆ XQC_InheritMode

Inherit part of the Copy-namespace mode as defined in http://www.w3.org/TR/xquery/#static_context.

Enumerator
XQC_INHERIT_NS 
XQC_NO_INHERIT_NS 

◆ XQC_ItemType

Enumerator
XQC_EMPTY_TYPE 
XQC_DOCUMENT_TYPE 
XQC_ELEMENT_TYPE 
XQC_ATTRIBUTE_TYPE 
XQC_TEXT_TYPE 
XQC_PROCESSING_INSTRUCTION_TYPE 
XQC_COMMENT_TYPE 
XQC_NAMESPACE_TYPE 
XQC_ANY_SIMPLE_TYPE 
XQC_ANY_URI_TYPE 
XQC_BASE_64_BINARY_TYPE 
XQC_BOOLEAN_TYPE 
XQC_DATE_TYPE 
XQC_DATE_TIME_TYPE 
XQC_DAY_TIME_DURATION_TYPE 
XQC_DECIMAL_TYPE 
XQC_DOUBLE_TYPE 
XQC_DURATION_TYPE 
XQC_FLOAT_TYPE 
XQC_G_DAY_TYPE 
XQC_G_MONTH_TYPE 
XQC_G_MONTH_DAY_TYPE 
XQC_G_YEAR_TYPE 
XQC_G_YEAR_MONTH_TYPE 
XQC_HEX_BINARY_TYPE 
XQC_NOTATION_TYPE 
XQC_QNAME_TYPE 
XQC_STRING_TYPE 
XQC_TIME_TYPE 
XQC_UNTYPED_ATOMIC_TYPE 
XQC_YEAR_MONTH_DURATION_TYPE 

◆ XQC_OrderEmptyMode

Default order for empty sequences as defined in http://www.w3.org/TR/xquery/#static_context.

Enumerator
XQC_EMPTY_GREATEST 
XQC_EMPTY_LEAST 

◆ XQC_OrderingMode

Ordering mode as defined in http://www.w3.org/TR/xquery/#static_context.

Enumerator
XQC_ORDERED 
XQC_UNORDERED 

◆ XQC_PreserveMode

Preserve part of the Copy-namespace mode as defined in http://www.w3.org/TR/xquery/#static_context.

Enumerator
XQC_PRESERVE_NS 
XQC_NO_PRESERVE_NS 

◆ XQC_XPath1Mode

XPath 1.0 compatibility mode as defined in http://www.w3.org/TR/xquery/#static_context.

Todo
Are there better enumeration names?
Enumerator
XQC_XPATH2_0 
XQC_XPATH1_0