Overview Units Class Hierarchy Classes, Interfaces, Objects and Records Types Variables Constants Functions and Procedures Identifiers |
Class TXQStaticContext
Unit
xquery
Declaration
type TXQStaticContext = class(TObject)
Description
Static context containing values read during parsing and not changed during evaluation. Mostly corresponds to the "static context" in the XQuery spec
Hierarchy
Overview
Fields
Methods
|
procedure assign(sc: TXQStaticContext); |
|
function clone(): TXQStaticContext; virtual; |
|
destructor Destroy; override; |
|
function findSchema(const namespace: string): TXSSchema; |
|
function findNamespace(const nsprefix: string; const defaultNamespaceKind: TXQDefaultNamespaceKind): INamespace; |
|
function findNamespaceURL(const nsprefix: string; const defaultNamespaceKind: TXQDefaultNamespaceKind): string; |
|
function findNamespaceURLMandatory(const nsprefix: string; const defaultNamespaceKind: TXQDefaultNamespaceKind): string; |
|
procedure splitRawQName(out namespace: INamespace; var name: string; const defaultNamespaceKind: TXQDefaultNamespaceKind); |
|
procedure splitRawQName(out namespace: string; var name: string; const defaultNamespaceKind: TXQDefaultNamespaceKind); |
|
function resolveDocURI(url: string): string; |
|
function retrieveFromURI(url: string; out contenttype: string; failErrCode: string): string; |
|
function retrieveFromFile(url: string; out contenttype: string; failErrCode: string): string; |
|
function ImplicitTimezoneInMinutes: integer; inline; |
|
function CurrentDateTime: TDateTime; inline; |
|
function findModule(const namespaceURL: string): TXQuery; |
|
function findModuleStaticContext(const namespaceURL: string): TXQStaticContext; |
|
function findFunction(const anamespace, alocalname: string; const argcount: integer): TXQValueFunction; |
|
function findVariableDeclaration( v: TXQTermVariable): TXQTermDefineVariable; |
|
function findVariableDeclaration(const namespace, varname: string): TXQTermDefineVariable; |
|
function isLibraryModule: boolean; |
|
function compareAtomic(a, b: TXQValue; overrideCollation: TXQCollation): integer; |
|
function compareAtomic(const a, b: IXQValue; overrideCollation: TXQCollation = nil): integer; inline; |
|
procedure compareAtomic(const a, b: IXQValue; out result: IXQValue; accept1: integer; accept2: integer = 9999); |
|
function equalAtomic(a, b: TXQValue; overrideCollation: TXQCollation): boolean; |
|
function equalAtomic(const a, b: IXQValue; overrideCollation: TXQCollation): boolean; |
|
function compareGeneral(a, b: TXQValue; overrideCollation: TXQCollation; accept1: integer; accept2: integer = 9999): boolean; |
|
function compareGeneral(a, b: IXQValue; overrideCollation: TXQCollation; accept1: integer; accept2: integer = 9999): boolean; |
|
procedure compareGeneral(a, b: IXQValue; out result: IXQValue; accept1: integer; accept2: integer = 9999); |
|
function compareDeepAtomic(a, b: TXQValue; overrideCollation: TXQCollation): integer; |
|
function compareDeepAtomic(const a, b: IXQValue; overrideCollation: TXQCollation): integer; inline; |
|
function equalDeepAtomic(a, b: TXQValue; overrideCollation: TXQCollation): boolean; |
|
function equalDeepAtomic(const a, b: IXQValue; overrideCollation: TXQCollation): boolean; inline; |
|
class function comparableTypes(const a, b: TXQValue): boolean; static; |
Properties
Description
Fields
|
moduleNamespace: INamespace; |
The namespace of this module or nil
|
|
functions: array of TXQValueFunction; |
All declared functions . Each function contain a pointer to a TXQTerm and a dynamic context containing a pointer to this staticcontext
|
|
associatedModules: TFPList; |
|
|
importedModules: TStringList; |
All imported modules as (prefix, module: TXQuery) tuples
|
|
importedSchemas: TNamespaceList; |
All imported schemas. Currently they are just treated as to be equivalent to xs: {TODO.}
|
|
defaultElementTypeNamespace: INamespace; |
Default element type namespace (default is empty)
|
|
decimalNumberFormats: TFPList; |
|
|
baseURI: string; |
Static base uri
|
|
collation: TXQCollation; |
Default collation for string comparisons
|
|
stripBoundarySpace: boolean; |
If <a> </a> is equivalent to <a/>. Only used during parsing of the query, ignored during evaluation
|
|
copyNamespacePreserve: boolean; |
|
|
copyNamespaceInherit: boolean; |
|
|
defaultTypeNamespace: INamespace; |
Extension: default type namespace. Behaves like the default element type namespace, but does not change the namespace of constructed elements. (default is http://www.w3.org/2001/XMLSchema)
|
|
stringEncoding: TSystemCodePage; |
Encoding of strings. Currently only affects the decoding of entities in direct element constructors
|
|
strictTypeChecking: boolean; |
Activates strict type checking. If enabled, things like "2" + 3 raise an exception, otherwise it is evaluated to 5. Does not affect *correct* queries (and it makes it slower, so there is no reason to enable this option unless you need compatibility to other interpreters)
|
|
useLocalNamespaces: boolean; |
When a statically unknown namespace is encountered in a matching expression it is resolved using the in-scope-namespaces of the possible matching elements
|
|
objectsRestrictedToJSONTypes: boolean; |
When false, all values can be stored in object properties; when true all property values are JSON values (e.g. sequences become arrays, () becomes null, xml is serialized, ...)
|
|
jsonPXPExtensions: boolean; |
Allows further json extensions, going beyond jsoniq (especially child and descendant axis test matching object properties) (for dot operator, see TXQParsingOptions) (default is true)
|
|
ordering: boolean; |
unused
|
|
constructionPreserve: boolean; |
unused
|
Methods
|
destructor Destroy; override; |
|
|
function findSchema(const namespace: string): TXSSchema; |
|
|
function findNamespaceURLMandatory(const nsprefix: string; const defaultNamespaceKind: TXQDefaultNamespaceKind): string; |
|
|
procedure splitRawQName(out namespace: string; var name: string; const defaultNamespaceKind: TXQDefaultNamespaceKind); |
|
|
function resolveDocURI(url: string): string; |
|
|
function retrieveFromURI(url: string; out contenttype: string; failErrCode: string): string; |
|
|
function retrieveFromFile(url: string; out contenttype: string; failErrCode: string): string; |
|
|
function ImplicitTimezoneInMinutes: integer; inline; |
|
|
function CurrentDateTime: TDateTime; inline; |
|
|
function findModule(const namespaceURL: string): TXQuery; |
|
|
function findFunction(const anamespace, alocalname: string; const argcount: integer): TXQValueFunction; |
|
|
function isLibraryModule: boolean; |
|
|
function compareAtomic(a, b: TXQValue; overrideCollation: TXQCollation): integer; |
Compares two values atomically (eq,ne,..) and returns 0 if equal, -1 for a < b, and +1 for a > b; -2 for unknown
|
|
function compareAtomic(const a, b: IXQValue; overrideCollation: TXQCollation = nil): integer; inline; |
Compares two values atomically (eq,ne,..) and returns 0 if equal, -1 for a < b, and +1 for a > b; -2 for unknown
|
|
procedure compareAtomic(const a, b: IXQValue; out result: IXQValue; accept1: integer; accept2: integer = 9999); |
|
|
function compareGeneral(a, b: TXQValue; overrideCollation: TXQCollation; accept1: integer; accept2: integer = 9999): boolean; |
Compares two values (=,!=,...) and returns true if the compare value is \in [accept1,accept2] (Remember that these xpath comparison operators search for a matching pair in the product of the sequences)
|
|
function compareGeneral(a, b: IXQValue; overrideCollation: TXQCollation; accept1: integer; accept2: integer = 9999): boolean; |
Compares two values (=,!=,...) and returns true if the compare value is \in [accept1,accept2] (Remember that these xpath comparison operators search for a matching pair in the product of the sequences)
|
|
procedure compareGeneral(a, b: IXQValue; out result: IXQValue; accept1: integer; accept2: integer = 9999); |
|
|
function compareDeepAtomic(a, b: TXQValue; overrideCollation: TXQCollation): integer; |
Compares two atomic values and returns 0 as the deepEqual function would if equal, -1 for a < b, and +1 for a > b; -2 for unknown
|
|
class function comparableTypes(const a, b: TXQValue): boolean; static; |
internally used (Returns if the eq operator is defined for the types of a and b)
|
Properties
|
property NodeCollation: TXQCollation read getNodeCollation write FNodeCollation; |
|
Generated by PasDoc 0.14.0.
|