timport -s <schema> <datafiles>
varchar headerDecode(varchar header)
Parameters:
header
- A raw varchar
header value
Returns:
varchar
header value
See also: headerGetItems
varchar headerGetItems(varchar header)
Parameters:
header
- A raw varchar
header value
Returns:
varstrlst
See also: headerDecode
, headerItemGetParameterValues
varstrlst headerItemGetParameterNames(varchar headerItem)
Parameters:
headerItem
- A varchar
raw header item
Returns:
varstrlst
decoded list of parameter names
See also: headerItemGetParameterValues
, mimeEntityGetHeaderParameterNames
varstrlst headerItemGetParameterValues(varchar headerItem [, varchar paramName])
Parameters:
headerItem
- A varchar
raw header itemparamName
- An optional varchar
parameter name
Returns:
varstrlst
decoded list of parameter values
See also: headerItemGetParameterNames
, mimeEntityGetHeaderParameterValues
varchar headerMailboxGetAddress(varchar mailbox)
Parameters:
mailbox
- A varchar
mailbox (with address and/or
display name)
Returns:
varchar
email address
See also: headerMailboxGetDisplayName
varchar headerMailboxGetDisplayName(varchar mailbox)
Parameters:
mailbox
- A varchar
mailbox (with address and/or
display name)
Returns:
varchar
display name
See also: headerMailboxGetAddress
varbyte mimeEntityGetBody(mimeEntity entityOrReader[, varchar flags])
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
objectflags
- An optional CSV list of flags:
reparented
" - Re-parent HTML if appropriate
Returns:
varbyte
body of the entity
See also: mimeEntityGetSafeFilename
, mimeEntityGetText
int mimeEntityGetChildNumber(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int
child number of the entity
See also: mimeEntityGetImapSectionSpecification
, mimeEntityIsLastChild
,
mimeEntityGetSequenceNumber
varchar mimeEntityGetContentLocation(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
content location URL of the entity
int mimeEntityGetDepth(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int
depth of the entity from root
See also: mimeEntityGetChildNumber
varstrlst mimeEntityGetHeaderNames(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varstrlst
list of header names
See also: mimeEntityGetHeaderValues
varstrlst mimeEntityGetHeaderParameterNames(mimeEntity entityOrReader, varchar headerName)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
objectheaderName
- The varchar
name of the header
Returns:
varstrlst
list of parameter names for header
See also: mimeEntityGetHeaderParameterValues
varstrlst mimeEntityGetHeaderParameterValues(mimeEntity entityOrReader, varchar headerName[, varchar paramName])
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
objectheaderName
- The varchar
name of the headerparamName
- The optional varchar
name of the parameter
Returns:
varstrlst
list of parameter values from header for
given parameter name
See also: mimeEntityGetHeaderParameterNames
varstrlst mimeEntityGetHeaderValues(mimeEntity entityOrReader, varchar headerName)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
objectheaderName
- The varchar
name of the header
Returns:
varstrlst
list of decoded value(s) of given header name
See also: mimeEntityGetHeaderNames
, mimeEntityGetHeaderParameterValues
varchar mimeEntityGetImapSectionSpecification(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
IMAP section specification
See also: mimeEntityGetChildNumber
varchar mimeEntityGetMessageFilename(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
filename for the entity, as specified in the message
See also: mimeEntityGetSafeFilename
varchar mimeEntityGetRawBody(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
raw (original encoded) body of entity
See also: mimeEntityGetBody
int64 mimeEntityGetRawBodyOffset(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int64
byte offset of raw (original encoded) body in message
See also: mimeEntityGetBody
int64 mimeEntityGetRawBodySize(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int64
byte size of raw (original encoded) body in message
See also: mimeEntityGetBody
varchar mimeEntityGetRawHeaderSection(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
raw (original encoded) header section of entity
See also: mimeEntityGetHeaderValues
int64 mimeEntityGetRawHeaderSectionOffset(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int64
byte offset of raw (original encoded) header section
of entity in message
See also: mimeEntityGetHeaderValues
int64 mimeEntityGetRawHeaderSectionSize(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int64
byte size of raw (original encoded) header section
of entity
See also: mimeEntityGetHeaderValues
varstrlst mimeEntityGetRawHeaderValues(mimeEntity entityOrReader, varchar headerName)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
objectheaderName
- The varchar
name of the header
Returns:
varchar
raw (original encoded) header named `headerName`
See also: mimeEntityGetHeaderValues
varchar mimeEntityGetSafeFilename(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
filename for entity, safe for filesystem
See also: mimeEntityGetMessageFilename
int mimeEntityGetSequenceNumber(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int
sequence number for the entity
See also: mimeEntityGetChildNumber
varchar mimeEntityGetText(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
formatted text of the entity's body
See also: mimeEntityGetBody
varchar mimeEntityGetTextCharset(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
charset of mimeEntityGetText
return data
See also: mimeEntityGetText
varchar mimeEntityGetTextFormatter(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
varchar
token indicating text formatter used for body text
See also: mimeEntityGetText
int mimeEntityIsLastChild(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int
boolean value indicating whether entity is the last
child of its parent
See also: mimeEntityGetChildNumber
int mimeEntityIsReparented(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int
boolean value indicating whether the
mimeEntityGetBody
value is reparented (if reparenting
requested)
See also: mimeEntityGetBody
int mimeEntityIsStartBodyPart(mimeEntity entityOrReader)
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
object
Returns:
int
boolean value indicating whether the entity is the
overall message start part
See also: mimeEntityGetSafeFilename
mimeEntity mimeReaderGetEntity(mimeReader reader)
Parameters:
reader
- A mimeReader
object
Returns:
mimeEntity
object for current entity
See also: mimeReaderGetFullEntity
mimeEntity mimeReaderGetFullEntity(mimeReader reader)
Parameters:
reader
- A mimeReader
object
Returns:
mimeEntity
object for entire entity tree at cursor
See also: mimeReaderGetEntity
, mimeReaderOpenEntity
int mimeReaderMoveToNextEntity(mimeReader reader)
Parameters:
reader
- A mimeReader
object
Returns:
int
value: 1 on success, 0 on EOF, -1 on error
See also: mimeReaderMoveToNextEntitySibling
int mimeReaderMoveToNextEntitySibling(mimeReader reader)
Parameters:
reader
- A mimeReader
object
Returns:
int
value: 1 on success, 0 on EOF, -1 on error
See also: mimeReaderMoveToNextEntity
mimeReader mimeReaderOpenEntity(mimeEntity entityOrReader [, int64 maxDepth[, varchar flags]])
Parameters:
entityOrReader
- A mimeEntity
or
mimeReader
objectmaxDepth
- An optional integer maximum depth to parse toflags
- An optional CSV list of flags:
inherittreeposition
" - Continue with same depth,
IMAP number, etc. of parent entityOrReader
Returns:
mimeReader
object
See also: mimeReaderOpenFile
mimeReader mimeReaderOpenFile(varchar file[, int64 maxDepth])
Parameters:
file
- A varchar
path to the MIME file to openmaxDepth
An optional integer maximum depth to parse to
Returns:
mimeReader
object for parsing the file
See also: mimeReaderOpenString
mimeReader mimeReaderOpenString(varchar string[, int64 maxDepth])
Parameters:
string
- A varchar
string with the MIME messagemaxDepth
An optional integer maximum depth to parse to
Returns:
mimeReader
object for parsing the message
See also: mimeReaderOpenFile
varchar refInfoGetAttribute(refInfo ref, varchar attrName)
Parameters:
ref
- A refInfo
objectattrName
- The varchar
name of the attribute to get
Returns:
varchar
value of the named attribute, HTML decoded,
in UTF-8.
See also: refInfoGetAttributes
varstrlst refInfoGetAttributes(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varstrlst
list of attribute names for the reference.
See also: refInfoGetAttribute
, refInfoGetTagName
varchar refInfoGetDescription(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varchar
human description of the reference.
See also: refInfoGetTypes
, refInfoGetFlags
varstrlst refInfoGetFlags(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varstrlst
list of flags for the reference
Flags may be zero or more of:
dynamic
The reference was created dynamically, i.e. via
JavaScript. The reference may have been directly created by a
script - e.g. setting document.location
- or indirectly
- e.g. via document.write('<a href="link.html">link</a>')
.
See also: refInfoGetTypes
, refInfoGetTagName
varchar refInfoGetLinkText(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varchar
link text for the reference, i.e. the visible text
a user would click on to follow it, HTML decoded, in UTF-8
See also: refInfoGetAttributes
int64 refInfoGetProcessedDocLength(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
int64
character length of the reference's element in the
processed document (HTML)
See also: refInfoGetRawDocLength
int64 refInfoGetProcessedDocOffset(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
int64
character offset of the reference's element in the
processed document (HTML)
See also: refInfoGetRawDocOffset
int64 refInfoGetRawDocLength(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
int64
character length of the reference's element in the
raw document (HTML)
See also: refInfoGetProcessedDocLength
int64 refInfoGetRawDocOffset(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
int64
character offset of the reference's element in the
raw document (HTML)
See also: refInfoGetProcessedDocOffset
varchar refInfoGetSourceAttribute(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varchar
name of the HTML attribute of the tag that
signified it as a reference
See also: refInfoGetTagName
varchar refInfoGetStrBaseUrl(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varchar
JavaScript base URL of the reference, if any.
varchar refInfoGetTagName(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varchar
name of the HTML tag that signifies it as a
reference
See also: refInfoGetSourceAttribute
int64 refInfoGetTextLength(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
int64
character length of the reference's formatted
text span.
See also: refInfoGetProcessedDocLength
int64 refInfoGetTextOffset(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
int64
character offset of the reference's element in the
formatted text
See also: refInfoGetProcessedDocOffset
varstrlst refInfoGetTypes(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varstrlst
list of one or more types for the reference
Types may be one or more of:
link
image
frame
iframe
strlink
See also: refInfoGetTagName
varchar refInfoGetUrl(refInfo ref)
Parameters:
ref
- A refInfo
object
Returns:
varchar
URL (link) of the reference
ALTER USER user-name IDENTIFIED BY password
Changes user-name's password to password. You must be logged in as that user or _SYSTEM to perform this operation.
CREATE [UNIQUE] | {[METAMORPH] [INVERTED | COUNTER]} INDEX index-name ON table-name (column-name1 [DESC] [, column-name2 [DESC] ] ...)
Index Type | Purpose | Updated |
---|---|---|
(unspecified) | A standard BTREE index used for fast lookup and ordering | Automatically as needed |
UNIQUE | Same as BTREE but prevents replicated keys and records from to being inserted | Automatically as needed |
INVERTED | Used only for DATE fields, it allows rapid ORDER BY Note: Be sure to create DESC if output is to be inverse chronological order | Automatically as needed |
METAMORPH | An index for text retrieval speed | On re-issue of CREATE METAMORPH INDEX command |
METAMORPH INVERTED | A larger METAMORPH index with additional speed for ranking and phrases | On re-issue of CREATE METAMORPH INDEX command |
METAMORPH COUNTER | A METAMORPH index with additional information for LIKEIN queries | On re-issue of CREATE METAMORPH INDEX command |
See also: Virtual Fields
CREATE TABLE table-name (column-name1 data-type [, column-name2 data-type ] ...)
data-type | description | BYTE(length) | unsigned 8 bit fixed | VARBYTE(length) | unsigned 8 bit variable | CHAR(length) | signed 8 bit fixed | CHARACTER(length) | same as char | VARCHAR(length) | signed 8 bit variable | DATE | 'C' time_t 32bit GMT | CTIME | same as date | COUNTER | 64 bit global unique value, may be converted to DATE | DOUBLE | 'C' double type | FLOAT | 'C' float type | INTEGER | 32 bit signed integer | LONG | Large signed integer (platform-dependent size) | INT64 | 64-bit signed integer (Texis version 6+) | UINT64 | 64-bit unsigned integer (Texis version 6+) | REAL | same as FLOAT | SMALLINT | 16 bit signed integer | INDIRECT | A file treated as a field |
---|
CREATE TABLE table-name AS SELECT {expression1 [, expression2]...}{...} FROM table-name1 [alias1] [, table-name2 [alias2] ]... [WHERE search-condition] [GROUP BY column-name1 [, column-name2]... [ORDER BY column-name3 [DESC] [, column-name4 [DESC] ] ...]
CREATE USER user-name IDENTIFIED BY password
Creates a new user with the specified user-name and password.
DELETE FROM table-name [WHERE search-condition]
DROP INDEX index-nameSee also: SYSINDEX system table
DROP TABLE table-nameSee also: SYSTABLES system table
DROP USER user-name
GRANT {ALL} {privilege1 [,privilege2]...} ON {table-name} {view-name} TO {PUBLIC} {userid1 [,userid2]...}
privilege | description |
---|---|
ALL | User can do anything (default) |
DELETE | User can delete records |
INSERT | User can insert records |
SELECT | User can read records |
UPDATE | User can update records |
See also: REVOKE, SYSUSERS system table, CHMOD(1), CHOWN(1)
INSERT INTO table-name[(col-name1 [, col-name2]...)] VALUES(value1 [, value2]...)
INSERT INTO table-name[(col-name1 [, col-name2]...)] SELECT-statement
SELECT [DISTINCT] {expression1 [[AS] alias1] [, expression2 [[AS alias2]]...}{...} FROM table-name1 [alias1] [, table-name2 [alias2] ]... [WHERE search-condition] [GROUP BY column-name1 [, column-name2]... [HAVING search-condition]] [ORDER BY column-name3 [DESC] [, column-name4 [DESC] ] ...]
comparison operators | |
---|---|
=, < ,> , != , >< , >= , <= | standard comparison for all data types |
[NOT] BETWEEN value1 AND value2 | bracketed range for all data types |
[NOT] LIKE | Metamorph query for text fields (exact match text retrieval) |
[NOT] LIKE3 | kewords only match within text field (very fast) |
LIKER | keyword Relevance ranking within text field (fast, ok precision) |
LIKEP | relevance ranking within text field (high quality) |
[NOT] MATCHES | standard SQL MATCH |
[NOT] IN | Set Membership |
logic operators | |
AND, OR, NOT | May be used to bind any set of conditions |
math operators | |
+, -, *, / | may be used on numeric and character data types |
See also: Text Queries
UPDATE table-name SET column-name1 = expression1 [, column-name2 = expression2]... [WHERE search-condition]
string xmlReaderGetAttribute(xmlReader reader, string name [, string nsURI])
Parameters:
xmlReader
- the xmlReader
objectname
- the name of the attribute whose value you
wantnsURI
(optional) - The URI or the namespace for
the attribute. Defaults to any namespace.
Returns:
See also: xmlReaderGetAttribute
xmlReaderGetAttributeCount
xmlReaderGetAttributeNumber
Function | Description |
---|---|
AVG() | Average of all the values |
COUNT() | Number of values |
MAX() | Maximum Value |
MIN() | Minimum Value |
SUM() | Total of all the values |
The first is that Texis WebScript will name the variable the same as the column name. If the default name of the column would be an illegal name, or would conflict with an existing variable, renaming the column lets you change the variable name at the same time.
The second situation is within the query itself. If you have a GROUP BY clause with either a HAVING clause or an ORDER BY clause, then any aggregate or calculated fields must be aliased, and the alias name used in the HAVING or ORDER BY clause. This is the only time the alias name can be used in the query.
<EXPORT $nquery> . . <SQL "select Body, text2mm(Body) nquery from ..."> $Body <A HREF=$url/morelike.html>Find Similar</A> </SQL>In the morelike function a LIKEP query is used to find the similar documents.
<A NAME=morelike> <SQL "select id, Title from ... WHERE Body LIKEP $nquery"> <showrow> </SQL> </A>
SELECT cust.name, orders.text FROM cust,orders WHERE cust.name = 'John Doe' and orders.custid = cust.id;If cust.name is indexed it will find the customer record with the index, and then use an index on orders.custid to find the orders. If you switched the FROM clause it would look at each order, find the corresponding customer, and see if the name was 'John Doe', which will be slower.
The range available in the numeric literals is machine dependent. You can typically count on at least the range in a long or double respectively.
Character strings are delimited by single quotes. To include a single quote in a string it should be doubled. For example:
'He''s one of us now.'
Function | Description |
---|---|
File Functions | |
fromfile(filename) fromfiletext(filename) | Returns the contents of a file |
totext(text or filename) | Converts a PDF or wordprocessor file to text |
toind(text) | Stores the text into a texis managed indirect and returns the filename |
String Functions | |
abstract(text[, maxsize[, style[, query]]]) | Abstract a block of text |
text2mm(text[, words]) | Generate a query from a block of text |
length(text) | Returns the length of a block of text |
lower(text) | Returns the lowercase form of a block of text |
upper(text) | Returns the uppercase form of a block of text |
initcap(text) | Returns the text with the first letter of every word in uppercase |
sandr(search, replace, text) | Returns the text with search replaced by replace |
Other Functions | |
exec(cmd[, args]) | Allows execution of external commands |
mminfo(query, text) | Find out hit offset information |
convert(data, type) | Converts fields from one type to another |
seq(increment[, init]) | Returns a number increment than the last, or init |
random(max[, seed]) | Returns a random number less than max |
math functions | acos, asin, atan, atan2, ceil, cos, cosh, exp, fabs, floor, fmod, log, log10, pow, sin, sinh, sqrt, tan, tanh |
date functions | dayname, month, monthname, dayofmonth, dayofweek, dayofyear, quarter, week, year, hour, minute, second |
The second, and more interesting use, is that it allows a table to be joined to itself. One example of this would be to generate a listing of employees and bosses.
SELECT boss.name Boss, emp.name Employee FROM employees emp, employees boss WHERE boss.id = emp.boss_id
SET property = valueThe value should be a literal string or number. In the following table are the most useful properties, and what they do:
Property | Value |
---|---|
indexspace | A directoy to store indices. You can put indices in a different directory either for space reasons, or to improve performance. |
addexp | An expression to use for creating metamorph indices. This adds to the expressions. The default expression is \alnum{2,99} which should catch most English words. |
Properties that affect Metamorph indices are kept with the index and do not need to be respecified. If you want to change the properties of an index you will need to drop it and re-create it. If searching must be maintained you can create a new index first with a different name, and then drop the old index.
The WHERE clause will affect which rows are selected from the table to be grouped. The HAVING clause will determine which groups are actually returned.
For example the query:
SELECT DEPT, AVG(SALARY) AVSAL FROM EMPLOYEES WHERE SALARY > 50000 GROUP BY DEPTwill select for each department the average salary of those people with a salary over 50,000. The query:
SELECT DEPT, AVG(SALARY) AVSAL FROM EMPLOYEES GROUP BY DEPT HAVING AVSAL > 50000will select only those departments having an average salary over 50,000.
<A NAME=name [PUBLIC | EXPORT | PRIVATE] [param[=value|$var] ...]> ... statements ... </A>
Defines a script function with given NAME
. param
s are
local to the function; if not passed arguments at call time, they are
initialized to no-values or the given value
or global
$var
, even if start function. param
s with no defaults
must be given args at call time (except if start function).
Flag | Makes function visible to |
PUBLIC | Same script file, included modules, web/command-line |
EXPORT | Same script file, included modules |
PUBLIC | Same script file only |
<abstract $text [$maxsz [$style [$query]]]>
Generates an abstract from $text
. Abstract will be at most
$maxsz
characters (default 230). $query
is a Metamorph
query to search for and focus abstract on. $style
is one of:
Style | Action |
dumb (0) | Use top of document |
smart (1) | Look for first meaningful chunk of text |
querysingle (2) | Contiguous chunk on best occurence of $query |
querymultiple (3) | Multiple chunks on each $query term |
querybest | Alias for best query-based style |
Default is smart
if neither $style
nor $query
given.
abstract
returns an abstract for each of the supplied texts.
<addtrailingslash = yes|no>
Whether to add a trailing slash (via a redirect) when the script is accessed via a "directory" URL without a trailing slash, e.g. /texis/dir/script becomes /texis/dir/script/.
See also: [Texis] Vortex Add Trailing Slash
setting in texis.ini
<adminsql [options ...] [statement ...]>
Execute an arbitrary SQL statement, the concatenation of
statement
args. SKIP=n
and MAX=n
can be given as
leading options
. No embedded Vortex variable parameters.
Results printed in an HTML <table>
.
adminsql
returns nothing.
<apicp $name $value [$value ...]>
Modify Metamorph control parameters. Boolean settings take on
,
true
or yes
to turn on, opposite to turn off. Defaults
for these can be set in texis.ini
[Apicp]
section.
Query protection settings:
Setting | Controls | Default |
alequivs | Allow equivalences (synonyms) | off |
alintersects | Allow intersections (@N ) | off |
allinear | Allow linear searches | off |
alnot | Allow "not" logic (- operator) | on |
alpostproc | Allow post-processing | off |
alwild | Allow wildcards | on |
alwithin | Allow within (w/ ) operator | off |
builtindefaults | Set Thunderstone defaults (ignore texis.ini [Apicp] ) | - |
defaults | Set defaults (use texis.ini [Apicp] ) | - |
denymode | Action to take on disallowed query: silent , warning or error | warning |
qmaxsets | Maximum number of sets (terms) in a query | 100 |
qmaxsetwords | Maximum number of words per set | 500 |
qmaxwords | Maximum number of words in a query, after expansion | 1100 |
qminprelen | Minimum prefix (non-wildcard) length of wildcard term | 2 |
qminwordlen | Minimum word length in queries | 2 |
querysettings | Alias for setting a group of settings; see below | - |
texisdefaults | Deprecated; use querysettings texis5defaults | - |
querysettings
values:
Sub-setting | Action |
defaults or 0 | Vortex defaults; same as <apicp defaults> |
texis5defaults or 1 | Texis version 5- defaults |
vortexdefaults or 2 | Vortex defaults; same as <apicp defaults> |
protectionoff or 3 | Turn off query protection settings |
Query processing settings:
Setting | Controls | Default |
defsuffrm | Remove trailing vowel/double-consonant | on |
edexp | End delimiter (if no W/ in query) | empty |
eqprefix | Equivalence/synonym file | builtin |
exactphrase | Exactly resolve noise words in phrases; on , off or ignorewordposition | off |
inced | Include end delimiters in hits (ignore for w/N ) | on |
incsd | Include start delimiters in hits (ignore for w/N ) | off |
intersects | Default intersections if no @N in query | -1 |
keepeqvs | Use equivalences (synonyms) of query words/phrases | off |
keepnoise | Preserve noise words in the query | off |
minwordlen | Minimum word length to prefix/suffix process to | 255 |
noise | Noise list | See manual |
olddelim | Emulate old/broken delimiter behavior | off |
phrasewordproc | Which words of phrases to suffix/wildcard process: mono , none , last | last |
prefix | Prefix list for prefix processing | See manual |
prefixproc | Do prefix processing | off |
rebuild | Do word rebuilding | on |
reqedelim | Require the end delimiter to be present in hits | on |
reqsdelim | Require the start delimiter to be present in hits | on |
sdexp | Start delimiter (if no w/ in query) | empty |
see | Whether to look up "see also" references during equivalences | off |
stringcomparemode | Case etc. fold mode for string compares | unicodemulti , respectcase |
suffix | Suffix list for suffix processing | See manual |
suffixeq | Suffix list for equivalence processing | ' ies s |
suffixproc | Do suffix processing | on |
textsearchmode | Case etc. fold mode for text searches | unicodemulti , ignorecase , ignorewidth , ignorediacritics , expandligatures |
ueqprefix | User (secondary) equivalence/synonym file | none |
withinmode | w/ operator mode: {char|word}[ {radius|span}] | word span |
withinproc | Process w/ operator in queries | on |
<apiinfo $setting>
Returns current value(s) for <apicp>
single-setting $setting
.
$setting
may also be "settings
" to return list of all
setting names.
See also: apicp
<BREAK>
Exits the innermost enclosing looping statement (WHILE
,
LOOP
etc.). $loop
/$next
are unchanged.
See also: CONTINUE
<cal [options] [$dates [$events [$var ...]]][ /]> [</cal>]
Print an HTML calendar of events with links. $dates
are the
dates, $events
are corresponding text to print. In looping
syntax, programmer must print each day's <td>
, text and
</td>
.
Option | Action | Default |
TYPE=type | Sets type: week, month, quarter or year | $dates range |
DATEVAR=date | Name of variable to set to each day's date | date |
DAYFUNC=/day.html | URL function/MIME extension for day-number links | /day.html |
EVENTFUNC=/event.html | URL function/MIME extension for event links | /event.html |
MAXEVENTS=5 | Max events to print per day | 5 |
BORDER=1 | BORDER value for table | 1 |
WIDTH=100% | WIDTH value for table | 100% |
HEIGHT=50% | HEIGHT value for table | 50% (except for week) |
CELLPADDING=1 | CELLPADDING value for table | 1 |
CELLSPACING=0 | CELLSPACING value for table | 0 |
WEEKLEN=1 | Length of weekday name strings to print | 1 for quarter and year, else full length |
MONTHFMT="%B %Y" | Date format to print month header | %B for year, else %B %Y |
DAYFMT="%e" | Date format for non-event days' numbers | %e for Unix, %#d for Windows |
NEWDAYFMT="%b %e" | Date format for week type days that start a new month | %b %e for Unix, %b %#d for Windows |
EVENTFMT="<b>%e</b>" | Date format for event days' numbers | <b>%e</b> for Unix, <b>%#d</b> for Windows |
MONTHCLASS=class | CSS class for month header | none |
WEEKCLASS=class | CSS class for weekday names | MONTHCLASS if given |
DAYCLASS=class | CSS class for non-event days | none |
EVENTCLASS=class | CSS class for event days | DAYCLASS if given |
START=date | Start date for calendar | Earliest $dates value |
END=date | End date for calendar | Latest $dates value |
NOHREF | Flag: do not link any days or events | off |
See also: calrule
<caldate $varprefix>
The caldate
function returns a list of dates from the
variables submitted by a form created with calendar
. The
value(s) of $varprefix
are the variable prefix(es) given to
calendar
.
See also: calendar
<calendar $yr $month $day $hour $min ["am"|"pm" [$prefix [flags ...]]]> <calendar $date [$prefix [flags ...]]>
Note: The calendar
function is obsolescent. Use cal
instead.
Prints a calendar HTML form. Submitted date(s) can be read with
caldate
.
Argument | Meaning |
$year | Year (4-digit) |
$month | Month number (1 = January) |
$day | Day of month |
$hour | Hour (24-hour unless am/pm flag) |
$minute | Minute (00-59) |
am/pm | AM/PM (and $hour is 12-hour) |
$prefix | Form variable name prefix (default cal ) |
$date | Texis-parseable date |
Flag | Meaning |
radio | Radio buttons for days (default) |
checkbox | Checkboxes for days |
julian | Julian days (day number in year, not month) |
calendar
returns nothing.
See also: caldate
<calrule [options] [RULE=]$rule[ /]> [</calrule>]
Translates a vCalendar or English calendar rule and returns the
Texis date(s) matching the rule. With </calrule>
, loops
over the date(s), and $loop
and $next
are set.
Option | Meaning |
RULE=$rule | vCalendar /English rule to iterate |
START=$date | Start date for rule (if needed) |
END=$date | End date for rule (if needed) |
SKIP=$n | Initially-returned dates to skip |
MAX=$n | Max dates to return (default 100) |
FIRST=$date | First date to return results on or after |
LAST=$date | Last date to return results on or before |
ROW | Do not accumulate nor loop-context $ret |
TOVCAL | Translate English rule to vCalendar and return it |
TOENGLISH | Translate vCalendar rule to English and return it |
<CAPTURE [flags]> ... Vortex code ... </CAPTURE>
CAPTURE
returns the standard output of the Vortex code within
the block, as one value.
See also: EXEC
<checkbox $name $values $selected $output [$classes [$ids [$titles]]]>
Prints HTML checkbox for each $output
value. $name
is
the name for the checkboxes, $values
are the values.
$values
matching any of the $selected
values are
pre-checked. $classes
gives CSS classes to assign, $id
gives id
attributes, $titles
gives titles (i.e. hover
text).
checkbox
returns nothing.
See also: options
, radiobutton
<clist $values>
clist
returns the $values
in one parenthetical,
comma-separated value, or an empty string if there are no values.
See also: slist
<code2geo $num>
code2geo
returns a string, the space-separated latitude and
longitude for the given geo2code
-encoded number.
See also: <geo2code>
Vortex function,
geocode2lat()
, geocode2lon()
SQL functions
<CONTINUE>
Continues the innermost enclosing looping statement (WHILE
,
LOOP
etc.) at the start of its next iteration.
$loop
/$next
are incremented as usual.
See also: BREAK
<COOKIES urldecode|asis>
Whether to URL-decode (or leave as-is) the value of cookes when importing into Vortex variables. The default is urldecode.
See also: [Texis]
Cookies
setting of texis.ini
<count $var>
count
returns the (integer) number of values the $var
variable has.
<createdb $db $syspass $publicpass>
The createdb
function creates a new database whose path is
given by $db
. The passwords for _SYSTEM
and
PUBLIC
are given as arguments. For security, the _SYSTEM
password $syspass
is required to be at least 6 characters and
contain punctuation. The PUBLIC
password $publicpass
may be empty.
createdb
returns "Creating database succeeded
" on
success, or "Creating database failed
" or nothing on error.
See also: adminsql
<DB = "path">
As a directive (before any functions), sets default database for SQL
statements, state table.
As a statement (inside a function), sets current database for
<sql>
statements.
Default if not set is from texis.ini
, or texis/testdb
in install dir.
<decrypt $crypt $key>
decrypt
returns each value of Unix-style encrypted data
$crypt
, decrypted using key $key
.
<doctype $langver [$type]>
doctype
prints a <!DOCTYPE>
declaration based on
$langver
and $type
.
$langver
values:
Value | Declaration printed |
html2.0 | HTML 2.0 |
html3.2 | HTML 3.2 |
html4.01 | HTML 4.01; a $type must be given also |
html5 | HTML 5 |
xhtml1.0 | XHTML 1.0; a $type must be given also |
xhtml1.1 | XHTML 1.1 |
$type
values:
Value | DTD printed |
strict | Strict DTD |
transitional or loose | Transitional DTD |
frameset | Frameset DTD |
doctype
returns 1 on success, or 0 on error.
<encrypt $data $key>
encrypt
returns each value of $data
, encrypted Unix style,
using key $key
.
<ENTRYFUNC = function> <EXITFUNC = function>
Directive: additional function to call first at entry ( ENTRYFUNC) before the start function, and last at exit ( EXITFUNC) after execution ends normally (without exit). Module entry and exit functions are called (in undefined order) before main script entry and exit functions.
See also: EntryScript
(vhttpd URL Settings),
ExitScript
(vhttpd URL Settings)
<EXEC [options] program [arg ...][ /]> ... input to program ... [</EXEC>]
Executes program with given args. Output of enclosed block becomes input to program.
Option | Action |
APPEND | The immediately preceeding TOFILE or STDERRTOFILE should append instead of truncate. May cause loss of output in Windows. |
BIN | Returned output is binary (varbyte ). Implies NOBR . |
BKGND | Run program in background: do not wait for completion, and return process id instead of output. |
CHDIR=$dir | Set working directory for program. Default is current dir. |
DOMAIN=$domain | Domain for USER option. Default taken from USER option if present, else ". ". Windows only. |
ENVCLR | Do not pass parent (Vortex) environment to program. |
ENVSET | Set environment vars for program: following option "assignments" are taken as environment var assignments. E.g. ENVSET LD_LIBRARY_PATH="/bin" . Default is current Vortex env. |
FASTLOGON | Use faster logon method for USER that requires less permissions. Windows only. |
FLAGS=$flags | Set flags given in CSV list $flags . Any of bin , bkgnd , envclr , fastlogon , msg , nobr , nomsg , noquoteargs , quoteargs . |
FROMFILE=$file | Redirect program input from $file . If empty, use /dev/null . If "- ", use Vortex script's standard input. If not given, input comes from <exec> block output. |
MAXSTDERR=$n | Max number of bytes of standard error to read. Default if empty or unspecified is unlimited. |
MAXSTDOUT=$n | Max number of bytes of standard output to read. Default if empty or unspecified is unlimited. |
MSG | Distribute putmsg s via normal mechanisms. Default is per <vxcp execmsg> , which defaults on. $ret.err is always set regardless. |
NOBR | Leave output intact, do not split into lines. |
NOMSG | Do not distribute putmsg s via normal mechanisms. $ret.err is always set regardless. |
NOQUOTEARGS | Do not double-quote program/arguments. |
PASS=$pass | Password to use with USER option. Windows only. |
QUOTEARGS | Windows: double-quote program and args that contain spaces and do not already contain double-quotes. Other OSes: do nothing. Defaults to texis.ini setting Exec Quote Args , which defaults to on . |
SKIPONFAIL | Skip inner block code if $file fails to open. |
STDERRTOFILE=$file | Redirect program standard error to $file . If empty, use /dev/null . If "- ", use Vortex script's standard error. If not given, standard error goes to $ret.stderr for foreground programs or /dev/null for BKGND . |
TIMEOUT=$n | Timeout: program is terminated if execution exceeds $n seconds. -1 or empty is no timeout. |
TOFILE=$file | Send program output to $file . Empty for /dev/null , "- " for Vortex standard output. |
USER=$user | User to login and run program as. Windows only. See full docs for caveats. |
-- (two dashes) | End of options: program and args follow. |
EXEC
returns the standard output of the program (unless
BKGND
or TOFILE
is given). If the NOBR
or
BIN
flags are given, the output is one value; otherwise the
output is split into one value per line.
See also: CAPTURE
<exit [$code]>
exit
terminates the script immediately. The optional
integer $code
becomes the exit code of the Vortex process
(default 0).
exit
returns nothing.
See also: RETURN
<EXPORT $var [$var ...] [flags]>
Marks variables to be saved and restored at next script invocation, i.e. session variables.
Vars | Saved to | When |
Non-LOOP /SQL vars | State table | First time $url printed when vars set |
LOOP /SQL vars | URL | Every time $url printed inside a loop of those vars |
<EXPORT QUERY> vars | URL query string | Every time $urlq printed |
<fetch [METHOD=$methods] $theurl [$rawdoc]>or
<fetch PARALLEL[=n] [METHOD=$methods] [URLS=]$urls [$loopvar ...]> ... </fetch>
Parallel version: all $urls
are retrieved, up to n
(default 10) at a time, using parallel protocol method(s) listed in
$methods
(default "GET
"). Completed URLs are
returned, fastest first, one per loop iteration. Use <urlinfo>
for information about current URL in loop. $loop
and
$next
incremented each iteration.
fetch
returns the raw document just fetched (after
content/transfer encodings decoded), or the value of $rawdoc
.
See also: submit
, urlinfo
, urlcp
<flush>
The flush
function flushes any pending (printed but not sent)
output to the server (and thus indirectly back to the web client).
flush
returns nothing.
<fmt format [arg ...]>or
<strfmt format [arg ...]>
Prints arguments formatted, to output or string.
Format codes:
Format code | Prints argument as |
%b | Binary integer |
%B | String, encoding to base64 |
%c | Single character |
%d or %i | Decimal integer |
%e | Floating-point exponential |
%E | Floating-point exponential with capital E |
%f | Floating-point (no exponent) |
%F | Floating-point fraction: whole number plus fraction |
%g | Floating-point (as %e or %f format) |
%G | Same as %g format, but with capital E |
%H | String, HTML-escaped |
%L | Latitude, longitude or location |
%o | Octal integer |
%Q | String, encoding to RFC 2045 quoted-printable |
%r | Lower-case Roman numeral integer |
%R | Uppercase Roman numeral integer |
%s | String |
%t | Local date/time |
%T | GMT/UTC date/time |
%u | Unsigned decimal integer |
%U | String, URL-encoded |
%v | String, encoding from UTF-8 to UTF-16 |
%V | String, encoding from ISO-8859-1 to UTF-8 |
%W | Encode from UTF-8 to RFC 2047 encoded-word format |
%x | Hexadecimal integer |
%X | Hexadecimal integer with capital hex letters |
%z | gzip |
%/ | Platform-specific directory separator (e.g. "/ " or "\ ") |
%: | Platform-specific search path separator (e.g. ": " or "; ") |
%% | Percent sign (no argument) |
Format flags:
Flag | Applies to codes | Action |
(space) | Numeric | Space before positive numbers |
! | H U V W B c z | Decode instead of encode |
# | o x X e E f g G b | Print in alternate format |
& | Numeric, string | Pad with instead of space |
+ | Numeric; L ; string | Always print + /- ; location; ellipsis if over precision |
- | Numeric, string, L | Left-justify instead of right; latitude |
0 (zero) | Numeric | Pad with zeros instead of spaces |
= (equal sign) | V | Input encoding is same as output; just validate |
a | t T L | Next arg (before date or lat/lon) is date or lat/lon format |
h | !V v | HTML-encode out-of-range chars |
h | V !v !W | Decode HTML entities in input first |
hh | V !V =V v !v W !W | Decode input entities; HTML-encode 7-bit chars |
hhh | V !V =V v !v W !W | HTML-encode 7-bit chars |
j | s H v V B Q and ! variants | Do newline translation |
k | Numeric | Print comma every 3 places left of decimal |
K | Numeric | Print next arg every 3 places left of decimal |
l (el) | H | Only encode 7-bit characters |
l (el) | !H | Decode entities to 7-bit strings instead of 8-bit chars |
l (el) | / : | Print REX expression to match separator, instead of separator |
m | s H V v | Metamorph hit markup (query is next arg) |
p | U | Path instead of query-string encoding (%20 instead of + ) |
p | !U | Path instead of query-string encoding (do not decode + ) |
p | s H | Paragraph markup |
P | s H | Paragraph markup, next arg is REX expression to match |
PP | s H | Paragraph markup, next 2 args are REX and replacement |
q | U | Full encoding: encode / and @ too |
q | !U | Safe decoding: only decode RFC 2396 unreserved chars |
q | W | Only use Q encoding; no base64 |
^ (caret) | V =V !V v !v W !W s | Replace XML-unsafe chars with ? |
_ (underscore) | Numeric, string | Pad with byte 160 instead of space |
_ (underscore) | v | Do not output a leading BOM |
_ (underscore) | !v | Preserve leading BOM in input |
_ (underscore) | Q !Q | Use Q encoding instead of quoted-printable |
| (pipe) | !V =V v W !W L | Take illegal input as ISO-8859-1; longitude |
Metamorph hit markup sub-flags (after m
):
Sub-flag | Action |
b | HTML bold highlighting |
B | VT100 bold highlighting |
c | Continue hit count into next query call |
C | Class (<span class=...> ) highlighting; differentiate terms |
e | Mark up exact query (no queryfixupmode /NOT processing) |
h | HTML HREF highlighting (default) |
I | Inline stylesheet (<span style=...> ) highlighting; differentiate terms |
n | Do not truncate/move hits overlapping tags |
N | Mark up NOT terms as well |
p | Paragraph formatting |
P | Paragraph formatting, next arg is REX expression to match |
PP | Paragraph formatting, next 2 args are REX and replacement |
q | Mark up query itself, not the text arg |
R | VT100 reverse-video highlighting |
U | VT100 underline highlighting |
Date/time format codes; note that these may vary by OS:
Date/time code | Prints |
%a | Abbreviated weekday name (Sun , Mon , etc.) |
%A | Full weekday name |
%b | Abbreviated month name (Jan , Feb , etc.) |
%B | Full month name |
%c | OS-preferred date and time representation |
%d | Day of month (00 through 31 ) |
%H | Hour, 24-hour clock (00 through 23 ) |
%I | Hour, 12-hour clock (01 through 12 ). |
%j | Day of year (001 through 366 ) |
%m | Month number (01 through 12 ) |
%M | Minute (00 through 59 ) |
%p | AM or PM |
%S | Second (00 through 61 ) |
%U | Week number of year, starting with first Sunday (00 - 53 ) |
%W | Week number of year, starting with first Monday (00 - 53 ) |
%w | Day of week as integer, Sunday being 0 |
%x | OS-preferred date representation without the time |
%X | OS-preferred time representation without the date |
%y | Year number without century (00 through 99 ) |
%Y | Year number including the century |
%Z | Time zone name or abbreviation |
%% | Literal percent character |
Subformat codes for %L
(latitude/longitude/location). For
%D
/%M
/%S
codes, width, precision, space, zero,
minus flags can be given, and d
, i
, f
, g
flags print according to that standard code:
Code | Prints |
%D | Degrees (default space-padded) |
%M | Minutes (default zero-padded) |
%S | Seconds (default zero-padded) |
%H | Hemisphere letter |
%h | Hemisphere sign |
%o | ISO-8859-1 degree sign |
%O | UTF-8 degree sign |
%% | Percent sign |
Format escape codes:
Format escape code | Prints as |
\a | Bell character (ASCII 7) |
\b | Backspace (ASCII 8) |
\e | Escape character (ASCII 27) |
\f | Form feed (ASCII 12) |
\n | Newline (ASCII 10) |
\r | Carriage return (ASCII 13) |
\t | Tab (ASCII 9) |
\v | Vertical tab (ASCII 11) |
\\ | Backslash |
\x hh | Hexadecimal escape. hh is 1 or more hex digits. |
\ ooo | Octal escape. ooo is 1 to 3 octal digits. |
fmt
returns nothing. strfmt
returns the formatted
output as a string in $ret
.
<fmtcp $setting [args ...]>
fmtcp
controls various facets of fmt
and variable
printing behavior. The possible settings are:
Setting | Action |
query $fmt $query | Sets <fmt> string and Metamorph query for hit markup |
sandblast [noesc] $search $replace | Set search and replace expressions for <sb> |
sandcall [noesc] $search $func | Set search expressions and callback functions for <sb> . Callback params: hit expn tag attrs vals |
promoteints on|off | Whether to automatically promote integer format codes in <fmt> to largest type available |
defaults | Restores default settings |
querystyle $CSSstyle|default | Sets inline style for highlighting entire query (with delimiters) |
querysetstyles [$CSSstyles ...]|[default] | Sets inline styles for sets' highlighting |
queryclass $class|default | Sets class name for highlighting the entire query (with delimiters) |
querysetclasses [$classes ...]|[default] | Sets class names for highlighting sets |
queryclassesprefix $prefix|default | Sets all highlighting classes to $prefix plus default name |
querysetcyclenum $n|default | Sets maximum number of distinct sets to highlight before recycling styles/classes |
highlightwithindoc on|off | Whether to use querystyle / queryclass when query has no delimiters or delimiters are whole document. Default off |
queryfixupmode withindot|findsets | How to modify queries during highlighting so all requested terms are highlighted |
fmtcp
has no effect on $ret
.
See also: fmt, strfmt
, mm
, sb
, rex, split
<fmtinfo $value>
fmtinfo
obtains the current values for various facets of
fmt
and variable printing behavior. The possible values are:
Setting | Returns |
stylesheet | CSS stylesheet for classes currently defined for query highlighting |
fmtinfo
returns a value according to its arguments.
<geo2code $lat $lon [$radius]>
geo2code
returns a long
integer for each
latitude/longitude coordinate pair given, for a BETWEEN(aaa,
bbb) GIS search. If a $radius
argument is given,
geo2code
returns a comma-separated parenthetical pair of
numbers instead, for the bounding box that contains a circle of that
radius centered on the point. All arguments are Texis/Vortex
DDDMMSS integers (DMS "degrees minutes seconds" format,
west-positive).
See also: <code2geo>
Vortex function,
latlon2geocode()
, latlong2geocodearea()
SQL functions
<getpid>
The getpid
function returns the integer Vortex process ID.
See also: sysinfo
, procexists
, kill
<getvar [NOMSG] $var>
The getvar
function returns the values of the (single) named
variable.
See also: setvar
, readvars
, varinfo
<hash [options ...] [DATA=]$buf[ /]>or
<hash [options ...]> ... </hash>
Options:
Option | Action | Default |
TYPE=$type | Type of hash to produce | gw |
OUTPUT=$what | What to print (not return) | none |
RET=$what | What to return (not print) | Depends on TYPE |
DATA=$buf | Source data to hash | Last unnamed param, or output of enclosed block |
PROVTYPE=$provtype | Optional provider type | Depends on TYPE |
PROVIDER=$provider | Optional crypto provider | Depends on TYPE |
Hash TYPE
s:
TYPE value | Supported by PROVTYPE s | Produces | Default return type |
gw | texis | gw (Webinator) style hash; default | counter |
crc32 | texis | CRC32-compatible 32-bit checksum | long |
adler32 | texis | Adler32-compatible 32-bit checksum | long |
OpenSSL digest name | openssl | OpenSSL hash (e.g. md5 ) | hex |
Microsoft CryptoAPI algorithm | PROV_ ... | Microsoft CALG_ ... hash | hex |
Microsoft CryptoAPI algorithm TYPE
s:
CALG_3DES | CALG_RC4 |
CALG_3DES_112 | CALG_RC5 |
CALG_AGREEDKEY_ANY | CALG_RSA_KEYX |
CALG_CYLINK_MEK | CALG_RSA_SIGN |
CALG_DES | CALG_SCHANNEL_ENC_KEY |
CALG_DH_EPHEM | CALG_SCHANNEL_MAC_KEY |
CALG_DH_SF | CALG_SCHANNEL_MASTER_HASH |
CALG_DSS_SIGN | CALG_SEAL |
CALG_HMAC | CALG_SHA |
CALG_HUGHES_MD5 | CALG_SHA1 |
CALG_KEA_KEYX | CALG_SKIPJACK |
CALG_MAC | CALG_SSL2_MASTER |
CALG_MD2 | CALG_SSL3_MASTER |
CALG_MD4 | CALG_SSL3_SHAMD5 |
CALG_MD5 | CALG_TEK |
CALG_PCT1_MASTER | CALG_TLS1_MASTER |
CALG_RC2 |
OUTPUT
and RET
values:
Value | Produces |
bin | varbyte hash |
counter | counter hash (big-endian) |
hex | hexadecimal varchar hash |
input | the input data (useful for OUTPUT ) |
long | long hash (big-endian) |
none | nothing |
PROVTYPE
s:
texis | PROV_FORTEZZA |
openssl | PROV_MS_EXCHANGE |
PROV_DH_SCHANNEL | PROV_RSA_AES |
PROV_DSS | PROV_RSA_FULL |
PROV_DSS_DH | PROV_RSA_SCHANNEL |
PROV_EC_ECDSA_FULL | PROV_RSA_SIG |
PROV_EC_ECDSA_SIG | PROV_SPYRUS_LYNKS |
PROV_EC_ECNRA_FULL | PROV_SSL |
PROV_EC_ECNRA_SIG |
PROVIDER
values:
PROVIDER value | Supported by PROVTYPE s |
texis | texis |
Registered OpenSSL engine | openssl |
MS_DEF_DSS_DH_PROV | PROV_ ... (Microsoft CryptoAPI) |
MS_DEF_DSS_PROV | PROV_ ... (Microsoft CryptoAPI) |
MS_DEF_PROV | PROV_ ... (Microsoft CryptoAPI) |
MS_DEF_RSA_SCHANNEL_PROV | PROV_ ... (Microsoft CryptoAPI) |
MS_DEF_RSA_SIG_PROV | PROV_ ... (Microsoft CryptoAPI) |
MS_ENHANCED_PROV | PROV_ ... (Microsoft CryptoAPI) |
MS_ENHANCED_RSA_SCHANNEL_PROV | PROV_ ... (Microsoft CryptoAPI) |
The hash
function returns a hash or checksum value for each
value of DATA=$buf
(or the output of the enclosed block). The
return type varies with options but defaults to counter
.
<header NAME=$name [VALUE=$value] [options]>or
<header COOKIE=$name [VALUE=$value] [options] [cookie-options]>
PRINTIF
valid for both NAME
and COOKIE
. All
other options are COOKIE
only:
Option | Effect |
PRINTIF=flag[,...] | Only print if protocol and content conditions true |
DOMAIN=.acme.com | Restrict cookie to domain acme.com (default remote client) |
MAX-AGE=seconds | Expire cookie after given number of seconds (default session) |
EXPIRES=time | Expire cookie after Texis-parseable time (default session) |
PATH=/path | Restrict cookie to given URL path (default / ) |
SECUREIF=flag[,...] | Set Secure flag if conditions met |
HTTPONLY | Set HttpOnly flag in header; prevents client script access |
PRINTIF
/ SECUREIF
condition flags:
Flag | Type | Condition |
http | protocol | True if running under CGI with HTTP |
https | protocol | True if running under CGI with HTTPs |
cmdline | protocol | True if running from command line |
headers | content | True if CGI and still printing headers (default) |
content | content | True if command line, or CGI and past headers |
always | protocol, content | Always true |
header
returns nothing.
See also: URL syntax, EXPORT
, RFC 2109 (cookie specification)
<IF condition1> ... statements if condition1 true ... [<ELSEIF condition2> ... statements if condition2 true ...] [<ELSE> ... statements if both are false ...] </IF>
Condition may be simple: arg1 op arg2 where op is one of:
eq | Equals |
neq or ne | Does not equal |
gt | Greater than |
gte or ge | Greater than or equal to |
lt | Less than |
lte or le | Less than or equal to |
nmod | Not mod: true if arg1 mod arg2 is 0 |
Or condition may be a SQL WHERE clause.
See also: SWITCH
<kill $pid [$sig]>
To each process id in $pid
, the kill
function sends
the signal in the corresponding value of $sig
. If fewer values
of $sig
are present than $pid
, the last is re-used; if
none are given, SIGTERM
(15) is used. Signals may be given as
numbers or names (e.g. "SIGHUP
" and 1 are generally
equivalent).
The kill
function returns 1 if the call succeeds, 0 if not.
In version 3.01.983500000 20010301 and earlier, nothing is returned.
See also: getpid
, procexists
<loadavg>
loadavg
returns a list of 3 double values representing the
system load averages. In the event of an error, -1 is returned for
one or more of the values.
See also: sysinfo
<LOCAL var[=value|$initValue] ...]> ... [</LOCAL>]
Defines and declares given variables to be local. Scope ends at
matching </LOCAL>
tag, or end of enclosing block if not given.
See also: Function definitions, Variable scope discussion
<loguser $REMOTE_ADDR [$limit]>
loguser
returns "Success
", or "Fail
" if
more than $limit
(default 5) distinct users have accessed the
server in the past minute (as counted by loguser
). The count
for the given user is updated in either case.
See also: userstats
, resetstats
<LOOP [SKIP=s] [MAX=m] [REV] $var1 ...> ... statements ... </LOOP>
Iterates over named variables, one value per loop iteration.
Option | Action |
SKIP=s | Skip initial s values |
MAX=n | Stop after n iterations |
REV | Loop in reverse order |
$loop
and $next
are set at start of each iteration and
at loop end:
Variable | Value |
$loop | SKIP plus number of previous iterations |
$next | $loop + 1 inside loop, $loop at end |
<lower $str [$mode]>
lower
returns its $str
parameter with all values
converted to lower case characters. $mode
is an optional
stringcomparemode
value.
varstrlst mailParseAliases(varchar aliases, varchar what [, varchar flags])
Parameters:
aliases
- A varchar
string in sendmail
/etc/aliases
formatwhat
- A varchar
field indicating what to return:
aliases
" - List of entries' aliases (left side)targets
" - List of entries' targets (right side)types
" - List of entries' types:
"include
", "fail
", "pipe
",
"file
", "address
"
flags
- An optional CSV list of flags:
includes
" - Parse include files (default)noincludes
" - Do not parse include files
Returns:
varstrlst
list of aliases, targets or types
<mm> ... $variables ... </mm>
Enables/disables automatic hit markup of printed variables,
previously configured with fmtcp
.
<mm>
and </mm>
have no effect on $ret
.
See also: fmtcp
, fmt, strfmt
, sb
<nsinfo $name [$which]>
Name | Returns |
addrs | List of IP addresses in reply |
name | Canonical host name |
aliases | Aliases known for the host |
errnum | Error code (not protocol code) |
errmsg | Error message |
replyheader | Text info about reply header: id, flags, opcode, response code |
replyrecords | Reply records text info. $which is query , answer , authority , additional or all |
rawreply | Raw varbyte packet data from reply |
Error codes and messages:
Code | Message |
0 | Ok |
1 | No recovery |
2 | Try again |
3 | Cannot open hosts file |
4 | Cannot connect to nameserver |
5 | Nameserver connection refused |
6 | Nameserver query timeout |
7 | Host not found |
8 | Bad IP address |
9 | Incorrect usage |
10 | Out of memory |
11 | Bad service |
12 | No data |
13 | Internal error |
14 | Unknown error |
nsinfo
returns the requested information from the last
nslookup
completed.
<nslookup [options] $host|$ip[ /]>or
<nslookup PARALLEL[=n] [opts] [HOSTS|ADDRS=]$hosts|$ips [$loopvar ...]> ... </nslookup>
Option | Action |
BYADDR | Do IP-to-name lookup (default if ADDRS= given) |
BYNAME | Do name-to-IP lookup (default if HOSTS= given) |
MTERR | Return empty string if item not resolved (default return as-is) |
[HOSTS=]$hosts or [ADDRS=]$ips | List of hosts or IPs to resolve |
nslookup
returns the resolved IP address or domain name, as
appropriate. On error, either the original value or an empty string
is returned, depending on the MTERR
flag.
See also: urlcp
, nsinfo
, fetch
<options $values $selected $output [$classes [$ids [$titles]]]>
Prints HTML <option>
for each $output
value;
$values
are the corresponding values. $values
matching
any of the $selected
values are pre-selected. $classes
gives CSS classes to assign, $id
gives id
attributes,
$titles
gives titles (i.e. hover text).
options
returns nothing.
See also: radiobutton
, checkbox
<pagelinks [options]>
Option | Action | Default |
SKIPVAR | Name of <SQL SKIP> variable | <SQL SKIP> var, or skip |
NUMROWS | Max total rows query will return | $rows.max |
PGSZ | Rows per page | <SQL MAX> value, or 10 |
MAXPGS | Max number of page links | 10 |
SUMFUNC | Function name to print "X through Y of Z documents" | sumfunc |
PREVFUNC | Function name to print previous-page link | prevfunc |
NEXTFUNC | Function name to print next-page link | nextfunc |
PGFUNC | Function name to print numbered page links | pgfunc |
ORDER | Call order for ...FUNC s | sum,prev,page,next |
URLEND | Function/MIME extension to add to URLs | /$urlfunc$urlext |
pagelinks
returns 0.
See also: SQL
and its special variables, especially $rows.min
and $rows.max
<pdfxml $query $Body [options ...]>
Prints XML for Adobe browser plugin to highlight terms while displaying a PDF. Options:
Option | Action |
$color | Color to highlight terms with; #RRGGBB form |
words | Hit markup should use word mode (default) |
characters | Hit markup should use character mode |
active | PDF viewer should jump to first match |
passive | PDF viewer should not jump to first match |
showhits | Include matching terms in XML output as comments |
startpage $pg or startpg $pg | Page that $Body starts at (default 0) |
charset $charset | Charset of $Body (default ISO-8859-1) |
The pdfxml
function returns a list of strings to be sent to
the Web browser's PDF viewer plugin.
<!-- pragma [push|pop] name [value] -->
Inline compiler directive; takes effect after location in code.
Name | Default | Controls |
strictcomment | on | Strict comments (<!-- not <! ) |
nestcomment | off | Nestable comments |
literalprint | on | Allow literal text and variable printing |
compilesqlexpressions | on | Compilation of SQL expressions |
See also: urlcp
<procexists $pid>
The procexists
function returns 1 if the process exists, or 0
if not, for each $pid
.
See also: sysinfo
, getpid
, kill
<profiler INIT $table [$profile [$field [$db]]]> <profiler GET $msg [$profile]>
Example usage:
... create table SearchTable with queries and index ...
<profiler INIT SearchTable testProfile QueryField>
... get new message $msg ...
<profiler GET $msg testProfile> <!-- trim the $msg -->
<SQL "select Name from SearchTable where QueryField likein $ret">
$Name matches the message
</SQL>
The profiler
INIT command returns "Ok" on
success, otherwise a human-readable error message. The
profiler
GET command returns the intersection of the
words in msg with those in the index.
See also: xtree
, wordlist
<PUTMSG call|log|print|all|override on|off|exceptiononly>
Directive: whether to log, print, and/or call <putmsg> on errors. <vxcp putmsg> usually overrides this. Default is log and print on, unless a <putmsg> function is defined, in which case default is call on and log / print exceptiononly. override and call are on / off only.
See also: vxcp
, Error Messages section (Vortex Error Messages),
ErrorScript
ErrorFile
settings in texis.ini
(Vortex texis.ini Configuration Settings)
<pwencrypt $pass $salt>
pwencrypt
returns each $pass
password, encrypted Unix-style.
A random salt is used if $salt
is empty.
<radiobutton $name $values $selected $output [$classes [$ids [$titles]]]>
Prints HTML radiobutton for each $output
value. $name
is
the name for the radiobuttons, $values
are the values.
$values
matching any of the $selected
values are
pre-checked. $classes
gives CSS classes to assign, $id
gives id
attributes, $titles
gives titles (i.e. hover
text).
radiobutton
returns nothing.
<rand $min $max>
rand
returns a pseudo-random integer n
, $min
<= n < $max
.
<randpick $var>
The randpick
function returns a single randomly-selected value
of $var
, as a string.
<read $files [$offset [$length]]>
read
returns a list of the contents of each file, from the
indicated offset and length. Empty value(s) indicate an error reading
the file or the file was empty.
See also: READLN
, spew
, fetch
, submit
<READLN [options] $file[ /]> ... statements ... [</READLN>]
Reads text one line at a time from $file
, looping over each.
Option | Action |
REV | Read file in reverse order, starting from end. |
START=$expr | Start returning lines with first match of REX expression $expr . |
END=$expr | Stop returning lines with first match of REX expression $expr |
MAX=$n | Return at most $n lines. |
MAXLINES=$lines | Read at most $lines from file. |
ROW | Do not append lines to, nor loop over, $ret . |
SKIP=$n | Skip (do not return) the first $n lines that would otherwise be returned. |
READLN
returns a list of the lines read from the file
(without newlines), or the last line read if ROW
is set.
<readvars $srcvarnames [$destvarnames] $urldata>
The readvars
function returns the number of values that were
URL-decoded and assigned from $urldata
. $srcvarnames
is
the list of valid $urldata
variable names; $destvarnames
is the optional list of Vortex variables to assign to.
See also: fmt "%U"
, fmt "%!U"
, getvar
, setvar
<resetstats $REMOTE_ADDR>
The resetstats
function resets the user access count -
maintained by loguser
- for the given user to 0. If the
$REMOTE_ADDR
argument is empty, all users are reset.
resetstats
returns nothing.
<RETURN [$value]>
End current function.
RETURN
sets a return value if an argument is given.
<rex $expr $data[ /]> <split $expr $data[ /]> or or <rex [options] $expr $data> <split [options] $expr $data> ... ... </rex> </split>
Specifying any option makes the statement looping. Options:
Option | Action |
ROW | Do not accumulate nor loop $ret |
SKIP=$n | Skip first $n matches; does not affect $loop |
MAX=$n | Return at most $n matches |
SPLIT | Act as <split> : return non-matches instead |
NONEMPTY | Only return non-empty matches |
SYNTAX=re2|rex | Expression syntax is RE2 or REX |
rex
returns a list of the matching hits from $data
.
split
returns a list of the non-matching data. If looping,
the corresponding byte offset into the current search item is returned
in $ret.off
as well.
<rmcommon $data $template [$maxrm]>
The rmcommon
function removes the prefix and suffix text from
each $data
value that is shared with the corresponding
$template
value. Up to $maxrm
characters are removed,
rounded down to the nearest word boundary; the default is the maximum
amount of common text. This function is useful in stripping common
header and footer text from web pages before indexing.
rmcommon
returns $data
with its common prefix/suffix
text removed.
<sandr $expr $replace $data>
Special replacement string characters:
Character sequence | Replaced with |
? | Same-position character from hit |
{ N} | Nth character from hit |
\ N | Nth subexpression hit (numbered from 1) |
\& | Full expression hit (sans \P and \F parts) |
+ | Incrementing decimal number |
# N | N subexpression in hexadecimal |
\x NN | Hexadecimal character NN |
sandr
returns the $data
list with any replacements made.
<sb> ... $variables ... </sb>
Enables/disables automatic search-and-blast (sandblast
) or
search-and-call (sandcall
) markup of printed variables,
previously configured with fmtcp
.
<sb>
and </sb>
have no effect on $ret
.
See also: fmtcp
, fmt
strfmt
, mm
<SCHEDULE [options] WHEN=schedule [--] [var=val] [...]>
Schedule script for periodic execution according to schedule, which is a vCalendar schedule or one of the following:
minutes
[EVERY] [n] DAY[S]|DAILY timeofday [minutes]
[EVERY] [n] WEEK[S|LY] [ON] weekday timeofday [minutes]
[EVERY] [n] MONTH[S|LY] [ON] [THE] FIRST|SECOND|THIRD|FOURTH|n [TO LAST]
weekday|DAY [OF THE MONTH] timeofday [minutes]
where:
minutes = [EVERY] [n] MIN[UTE[S]] [[REPEAT] n [TIME[S]]
timeofday = AT [h]h[:][[m]m] [A|P[M]]
weekday = SUN|MON|TUE|WED|THU|FRI|SAT
Option | Action |
START=date | Start schedule on or after Texis date . Default now . |
URLEND=/func.txt | Append /func.txt to URL when running. |
COMMENT=text | Add comment to -LS schedule listing. |
FLAGS=flags | Send space-separated flags , e.g. mutex , nomutex . |
-- | End of options (optional variable assignments follow). |
See also: Vortex Scheduling
<send $values>
send
prints each of the $values
out as-is, without the
HTML escapement normally done with variables.
send
returns nothing.
<setvar [flags] $var $values>
The setvar
function sets the single variable named by $var
to $values
, and returns nothing.
<sleep $seconds [wake]>
sleep
returns the number of seconds remaining to be slept (a
float), which is normally 0. However, if the "wake
" argument
is given, sleep
may wake up early and return a non-zero value,
if a signal was caught. (This can be used to wait for another process
to signal the script and wake it up.)
<slist $intersect $values>
slist
returns a Metamorph query for $intersect
intersections of the values of $values
.
See also: clist
, Metamorph documentation
<sort [flags] $var [ICASE|NUM] [DESC|ASC] [$var2 ...]>
Flags that may appear first, before any variables:
Flag | Action |
SHORTEST | Sort shortest variable's number of values |
LONGEST | Sort longest variable's number of values (default) |
sort
returns the sorted list in $ret
if one variable is given;
otherwise it returns nothing and the variables are sorted in place.
See also: uniq
<spew $files [$offset [$length]]>
The spew
function reads each file given in $files
and
prints it out verbatim. If "-
" (single dash) is given,
the standard input is sent.
spew
returns 1 for each value of $files
if successful,
or an empty string if not.
<SQL [options] "SQL command" ["SQL fragment" ...][ /]> ... Vortex statements ... [</SQL>]
Executes SQL command, looping for each row returned. Multiple arguments concatenated to produce SQL command. Returned columns become Vortex variables, one value per loop.
Option | Action |
SKIP=n | Skip first n rows. |
MAX=n | Return at most n rows. |
NOVARS[=varname[,varname,...]] | Do not return any variables from statement. If varname s given, skip those variables only. |
OKVARS=varname[,varname,...] | Only return variables in the given list. |
ROW | Do not append return variables: clear at each iteration. Do not enter loop context for return variables. |
DB=db | Database to use for this statement. Default is current database. |
USER=user | SQL user to access database as. Default is set with <USER> , or PUBLIC if not set. |
PASS=password | SQL password. Default is set with <PASS> , or empty if not set. |
NULL=value | $null for this statement. Defaults to $null variable value. |
NONULL | Use no-value $null for this statement. Defaults to $null variable value. |
OUTPUT=xml[:ado][:[no]utf8][:base64] | Also print returned variables' data, in specified format. |
PROVIDER=$provider | Windows: provider to use; default is texis . |
CONNECTSTR=$connectstr | Windows: ODBC connection string if PROVIDER is odbc . |
PARAMPREFIX=$prefix | Use Vortex variable parameter name prefix $prefix . |
Special variables set by <SQL>
. All are set at the start of
each iteration, and at normal loop end, unless otherwise noted:
Variable | Value |
$loop | Number of previous iterations (not including SKIP ) |
$next | SKIP + $loop (+ 1 if not loop end) |
$indexcount | (Deprecated) Number of index rows. Set at start of first iteration. |
$rows.min | (Deprecated) Minimum number of rows to be returned |
$rows.max | (Deprecated) Maximum number of rows to be returned |
$sqlresult.matchedmin | Minimum number of rows that will match |
$sqlresult.matchedmax | Maximum number of rows that will match |
$sqlresult.returnedmin | Minimum number of rows to be returned |
$sqlresult.returnedmax | Maximum number of rows to be returned |
$sqlresult.indexcount | Number of index rows, or -1 if unknown |
<SQLCACHE = n>
Directive: number of Texis handles to cache for SQL statements. Default is 2.
<sqlcp $name $value [...]>
Controls various low-level SQL parameters or actions not settable with
apicp
.
Setting | Action |
cache cleanupinterval $n | Interval in seconds to clean up SQL handle cache |
cache close [db|exceptdb $dbList] | Closes SQL handle cache (optionally just for/not-for given databases) |
cache stats | Print SQL cache statistics |
cache resetstats | Clears SQL cache statistics |
createlocksmethods $methods | Set createlocks methods |
expressioncache close|{maxnum $N} | Closes compiled SQL expression cache; or sets limit to $N |
singleuser | Set single-user mode (caution); default off |
arrayconvert [sql[,timport,assign,expr,all ...]] [params|results ...] on|off [$type ...] | Controls Vortex array conversion to/from SQL parameter |
arrayconvert default|builtin | Sets texis.ini or factory default |
nulloutputstring $string | Sets NULL output string |
tracesql | SQL tracing level (default 0; use 3) |
tracemetamorph | Metamorph tracing bit flags (default 0) |
tracerowfields | Texis read-rows trace table(s) and field(s) (default empty) |
traceindex | Metamorph index search tracing level (default 0) |
tracekdbf | KDBF tracing level; can be summary , a KDBF file, or bit flags (default 0) |
autocreatedb | Whether to automatically create databases when needed (default on) |
lookahead | Whether to do one-row look-ahead for SQL select (default on) |
rmlocks [force] [verbose] $db | Remove stale/all locks on database |
addtable $file [$tbname [$db [$com [$user [$pass [$bits]]]]]] | Add a raw .tbl file to database |
copydbf $src $dest [$skip [$max]] | Copies data from KDBF file $src , appends to or creates $dest |
sqlcp
returns a setting-specific value.
<srand $seed>
Seeds the pseudo-random number generator used by rand
. An
empty string for $seed
will cause a semi-random seed to be used.
The srand
function returns the previous seed value.
<STACK=n>
Directive: sets Vortex call stack limit (-1 for no limit). Default is 250. One stack level used per function, block or loop call.
See also: vxcp
<stat [options] $path[ /]> [</stat>]
Obtains information about file(s). Options:
Option | Action |
ROW | Do not accumulate nor loop-context return variables |
SKIP=n | Skip first n return values |
MAX=n | Return at most n values, after SKIP , globbing and recursion |
MAXDEPTH=n | Descend at most n directories deep from top-level $path (default 0; negative is no limit) |
NAME=wildcard | Only return files whose name (not path) matches wildcard spec. |
ALL | Return all entries; do not skip ". " and ".. " |
SAMEDEV | Stay on same device as current $path argument (may not work under Windows) |
DEPTHFIRST | Traverse directory contents before returning directory (default return dir first) |
SYMLINK | Return information about symlinks, not the files they point to. Does not affect $ret.symlink nor $ret.sympath ; affects $ret.mode etc. |
FOLLOWSYM | Follow symbolic links that point to directories when traversing |
GLOB | Do shell-style file globbing: expand * and ? wildcards in original $path (default no globbing) |
SORT=none|name|size|atime|mtime|ctime | Sort contents of each directory traversed (default name ) |
ASC | Sort directories' files in ascending order (default) |
DESC | Sort directories' files in descending order |
Returned variables:
Variable | Contains |
$ret | File path |
$ret.err | Error from stat() , or empty if no error |
$ret.depth | Number of directories traversed from an original $path to this file |
$ret.symlink | Raw target of the symlink (non-symlink files: empty) |
$ret.sympath | Target of symlink, as corrected path from top-level $path |
$ret.size (long , int64 or double ) | Size of file, in bytes |
$ret.owner | Owner of file |
$ret.group | Group of file |
$ret.isrd | 1 if file is readable with current permissions, 0 if not |
$ret.iswr | 1 if file is writable with current permissions, 0 if not |
$ret.isex | 1 if file is executable with current permissions, 0 if not |
$ret.mode | Type and permissions of the file, Unix 10-character ls style |
$ret.attrib | Windows file attributes, CSV |
$ret.atime | Last-access time of file |
$ret.mtime | Last-modify time of file |
$ret.ctime | Last-change (i.e. of attributes) time of file |
$ret.nlinks | Number of hard links to file |
$ret.devtype | Device type number file is on (Unix) |
$ret.dev | Device major/minor number (Unix); drive letter (Windows, unreliable) |
$ret.ino | Inode of file (Unix) |
$ret.blks | Blocks consumed by file |
$ret.blksize | Preferred block size for file's device |
stat
returns the file path in $ret
, plus various other
$ret.
... variables as listed above. If the looping syntax is
used (a closing </stat>
tag), $loop
and $next
are set as well as the other variables.
See also: sysutil
, read
, WRITE
<strcmp $a $b [$mode]> <strcmpi $a $b [$mode]>
The strcmp
function compares every value of $a
against
every value of $b
as a string. For each comparison, an integer
value is returned:
$a
< $b
$a
= $b
$a
> $b
The optional $mode
argument is a
stringcomparemode
-style (here)
compare mode to use; the default is the current apicp
stringcomparemode, with "ignorecase" added for
strcmpi
. The $mode
values are used in the same order as
$b
values. The $mode
argument was added in version 6.
strcmp
and strcmpi
return A*B integer values
(A and B being the number of values of $a
and $b
).
See also: strncmp
, strnicmp
, strfoldcmp
<strfold $str [$mode]>
strfold
returns its $str
argument with all values
folded according to the corresponding stringcomparemode
$mode
value.
See also: strfoldcmp
, upper
, lower
<strfoldcmp $a $b [$mode]>
strfoldcmp
returns an integer corresponding to the sort order
of $a
and $b
according to stringcomparemode
$mode
.
See also: strfold
, upper
, lower
<strlen $str [$mode]>
strlen
returns the character (not necessarily byte)
length of each string value of $str
, according to
stringcomparemode
$mode
.
See also: varinfo
<strncmp $a $b $len [$mode]> <strnicmp $a $b $len [$mode]>
Same as strcmp
and strcmpi
, but compare only up to
$len
characters (not necessarily bytes). $mode
is
a stringcomparemode
to use.
strncmp
and strnicmp
return A*B integer values
(A and B being the number of values of $a
and $b
).
See also: strcmp
, strcmpi
<strrev $str [$mode]>
strrev
returns the values of $str
reversed (as character
not byte strings), according to stringcomparemode
$mode
.
<strstr $needle $haystack [$mode]> <strstri $needle $haystack [$mode]>
strstr
and strstri
return N*H values (N
and H being the number of values in $needle
and
$haystack
), i.e. there is exactly one return value for each
$needle
/$haystack
combination. Each return value is the
character index into the $haystack
value where the
corresponding $needle
value was first found (0 for first
character), or -1 if the $needle
value was not found. The
first N return values are for the first $haystack
value
(in $needle
order), the next N return values are for the
second $haystack
value, etc. $mode
is a
stringcomparemode
value.
See also: substr
<strtonum $str>
strtonum
returns the double numeric value of each of its
string arguments, or 0
if unparseable.
See also: sum
<submit [options] URL=$theURL [var=value ...]>
Submits an HTML form, i.e. fetches a URL with variables set. Options are set before variable assignments:
Option | Action |
URL=$theURL | URL to fetch (required) |
METHOD=$method | HTTP (or other protocol) method to use (default POST ); OPTIONS , GET , HEAD , POST , PUT , DELETE , TRACE , MKDIR or RENAME |
DATA=$data | Raw data to send (instead of file or variable list) |
FROMFILE=$file | File to send (instead of data or variable list) |
TOFILE=$file | Save received content to file $file instead of variable $ret |
CONTENT-TYPE=$type | Content type of request (default none, or application/x-www-form-urlencoded if variables set) |
submit
returns the raw document fetched.
See also: fetch
, urlinfo
, urlcp
<substr $str $offset $len [$mode]>
substr
returns a list of S*O substrings of $str
(S and O being the number of values of $str
and
$offset
). Uses stringcomparemode
$mode
.
See also: strstr
<sum $fmt $var [$var ...]>
sum
returns the arithmetic sum or string concatenation of its
$var
arguments, depending on the $fmt
code.
See also: fmt, strfmt
<SWITCH switchval> <CASE value1[ /]> ... statements if switchval = value1 ... [</CASE>] <CASE op value2[ /]> ... statements if switchval op value2 is true ... [</CASE>] ... <DEFAULT[ /]> ... statements if no <CASE> matches ... [</DEFAULT>] </SWITCH>
switchval
is a single variable or literal. First matching/true
<CASE>
is executed. If none match and <DEFAULT>
is
present, it is executed. Same operators as <IF>
.
See also: IF, ELSE, ELSEIF
<syscp $what [$arg ...]>
Set system or OS parameters. Options are:
Option | Action |
chdir $dir or cd $dir | Change current working directory to $dir |
umask $mode | Change process's umask to $mode (chmod -style bitmask; these bits are masked off) |
setenv $varname $value [$overwrite] | Set environment variable (default $overwrite is yes ) |
syscp
returns an empty string on success, otherwise a string
describing the error.
<sysinfo $what [$arg ...]>
Obtains various system or OS information. Options:
Option | Returns |
time | Current wall-clock (real) time, in seconds (and fraction) since midnight Jan. 1 1970 GMT, as a double |
proctime | User, system and real process times, in seconds (and fraction) since process start, as 3 double values |
procmem | Virtual size and resident set size of process, in bytes, as 2 long values (-1 on error) |
physmem | Physical system memory, in bytes (-1 on error) |
getpid or pid | Process ID, as integer |
getppid or ppid | Parent process' ID, as an integer (not supported for Windows) |
procexists | 1 if process id exists, 0 if not |
loadavg | 3 system load averages as double s (-1 on error) |
cwd or pwd or getcwd | Current working directory of process |
platform | String describing the hardware, vendor, OS and file bit size that Texis executable was created for |
regquery $key $subkey $name [$default] | Windows registry query; return $default if not found or unimplemented |
resourcestat [$who] $statName | Usage of resource $statName |
umask | Process's umask, as a chmod -style symbolic string |
getenv $var | Value of environment variable named by $var |
availablespace $path | Free disk space for non-root in bytes for each filesystem in $path (-1 on error; inaccurate on some old platforms) |
freespace $path | Free disk space for root in bytes for each filesystem in $path (-1 on error; inaccurate on some old platforms) |
totalspace $path | Total disk space in bytes for each filesystem in $path (-1 on error; inaccurate on some old platforms) |
usedspacepercent $path | Percent disk space in use for each filesystem in $path (-1 on error; inaccurate on some old platforms) |
hostname | Machine's hostname as configured |
fullhostname | Machine's hostname, fully-qualified via DNS |
user or realuser | Current real user name running the script |
effectiveuser | Current effective user name running the script |
maxdescriptors | Maximum number of open file descriptors possible (-1 if unknown) |
opendescriptors | Current number of open file descriptors (-1 if unknown) |
sysinfo
returns various OS-level parameters depending on
its first argument.
<sysutil $action [option ...] $arg [...]>
Various system and OS utilities. Actions are:
Action | What it does |
mkdir|md $dir [...] | Creates each directory $dir |
chown|lchown $owner $file [...] | Changes ownership of each file or symlink $file |
chgrp|lchgrp $group $file [...] | Changes group of each file or symlink $file |
chmod $mode $file [...] | Changes file permissions of each $file ; $mode is octal or symbolic |
attrib $attrs $file [...] | Changes file attributes (Windows). $attrs may be octal or symbolic: {+|-|=}token[,token...][,{+|-|=}token[,token...]] . Tokens: readonly , hidden , system , volumelabel , directory , archive , device , normal , temporary , sparsefile , reparsepoint , compressed , offline , notcontentindexed , encrypted |
rm|del|delete $file [...] | Removes each $file |
rmdir|rd $dir [...] | Removes each directory $dir |
mv|rename $src [...] $dest | Moves each $src file to the corresponding value of $dest . |
cp|copy $src [...] $dest | Copies each $src file to the corresponding value of $dest |
link|symlink $target [...] $name | Creates a link $name to the specified $target . Unix only |
sync | Calls sync() to flush system write buffers to disk (Unix only) |
touch $file [...] | Touches (updates timestamps on) $file |
sysutil
returns an empty string on success, otherwise a string
describing the first error encountered.
See also: stat
, sysinfo
, syscp
<TIMEOUT = n[ /]> ... text/HTML to print on timeout ... [</TIMEOUT>]
The TIMEOUT
directive sets a timeout (in seconds) for the
execution of the Vortex script. If script execution takes longer than
n
seconds, the enclosed text or HTML is printed and the script exits.
Command-line option -t overrides this directive, and
<vxcp timeout>
overrides -t. The text to print can be
overridden at runtime (in version 7 and later) with <vxcp timeouttext>
.
The default timeout is 30 seconds.
See also: vxcp
<TIMPORT [options] $schema [FROMFILE] $data|$file> ... statements ... </TIMPORT>
Imports data from each $data
value (or file $file
if
FROMFILE
), using TIMPORT schema $schema
. Returned
fields assigned to Vortex variables, ala <SQL>
statement.
Option | Action |
SKIP=n | Skip first n rows. |
MAX=n | Return at most n rows. |
NOVARS[=varname[,varname,...]] | Do not return any variables from import. If varname s given, skip those variables only. |
OKVARS=varname[,varname,...] | Only return variables in the given list. |
ROW | Do not append return variables: clear at each iteration. Do not enter loop context for return variables. |
OUTPUT=xml[:ado][:[no]utf8][:base64] | Also print returned variables' data, in specified format. |
FROMFILE | Import from file $file instead of $data buffer. |
Special variables set by <TIMPORT>
. All are set at the start of
each iteration, and at normal loop end, unless otherwise noted:
Variable | Value |
$loop | Number of previous iterations (not including SKIP ) |
$next | SKIP + $loop (+ 1 if not loop end) |
<TRACESQL on|off|N>
Directive: turns SQL statement tracing (via putmsg
s) on, off,
or sets level N
.
See also: sqlcp
, -tracesql
command line option
<TRAP [CONNRESET=on|off|N] [[SIGNALS=]on|off|N]>
Directive: turns signal and connection-reset trapping on or off.
For debug use. Overridden by -x
command-line option,
<vxcp trap|connreset>
call.
SIGNALS
value is an integer whose bits mean the following:
SIGTERM
)SIGSEGV
)SIGHUP
signals (Unix)
The default value "on
" is the same as 0x1483; "off
" is 0.
The CONNRESET
flags are:
SIGIO
SO_ERROR
recognized errorSIGIO
MSG_PEEK
recognized errorSIGIO
MSG_PEEK
no dataSIGIO
The default value "on
" is the same as 7; "off
" is 0.
See also: vxcp
<uniq [flags] $var [ICASE|NUM] [DESC|ASC] [$var2 ...]> <uniqcount>
Flags that may appear first, before any variables:
Flag | Action |
SORTED | (Optional optimization) Variables are already sorted per given flags |
SHORTEST | Sort shortest variable's number of values |
LONGEST | Sort longest variable's number of values (default) |
uniq
returns the sorted, uniq list in $ret
if one
variable is given; otherwise it returns nothing and the variables are
sorted and unique'd in place. uniqcount
returns an integer
list in $ret
of the number of times each value/row occurred in
the previous uniq
call.
See also: sort
<upper $str [$mode]>
upper
returns its $str
parameter with all values
converted to upper case characters, according to stringcomparemode
$mode
.
<urlcp $setting [$arg ...]>
Control various URL-fetching parameters. Settings are:
Setting | Default | Controls |
8bithtml | on | Leave 8-bit HTML characters as-is when formatting HTML |
acceptcookiedels aka acceptcookiedeletes | on | Whether to accept cookie deletes, i.e. empty or expired values for cookies already seen |
acceptcookiemods | on | Whether to accept cookie modifications, i.e. new non-empty non-expired values for cookies already seen |
acceptcookies | on | A deprecated alias for acceptnewcookies , acceptcookiemods , acceptcookiedels all together (bit flags) |
accept $mediaranges $qualities | */* | Set HTTP Accept header list to media range and quality values |
acceptnewcookies | on | Whether to accept new cookies (i.e. first-time-seen) |
addentropy $entropy [$fraction] | From prngd daemon | Uses random data in string $entropy to help seed random number generator for SSL/HTTPS plugin initialization. $fraction is fraction of $random considered to be truly random; 0.0 to 1.0 (default 1.0) |
alarmclose | off | Whether to use an alarm() to terminate a blocking connection close() |
allowbadchunkedinfo | on | Allow bad chunked encoding info: pass through data as-is |
allowinputfiledefault | off | Allow default <input type="file"> values |
allowpunct | on | Allow punctuation in HTML tag/attribute names |
alttxt | on | Include ALT text from images and AREA s |
authschemes [add|del|set] [$schemes ...] | All but NTLMv1 | Which authentication schemes to use: one or more of anonymous (i.e. none), FTP , Basic , file , NTLM , NTLMv1 or NTLMv2 |
badhdrmidok or badheadermidok | on | Whether to accept malformed headers in the middle (i.e. not last) of response headers |
badhdrmsgs or badheadermsgs | on | Whether to issue a putmsg for malformed response headers |
baseurl | empty | Base URL for relative links when formatting; default if empty is page or <base> URL |
charsetconfigfromfile | texis.ini [Texis] Charset Config value | Load charset configuration from given file |
charsetconfigfromtext | texis.ini [Texis] Charset Config file contents | Parse given text as charset configuration |
charsetconverter | texis.ini [Texis] Charset Converter value, or "%INSTALLDIR%/etc/iconv" -f %CHARSETFROM% -t %CHARSETTO% -c | Charset converter; prefix with %ALL% to use for all charsets (not just external/unknown) or %NONE% for none |
charsetmsgs | on | Whether to issue a putmsg for charset conversion problems |
charsetpartialconvok | on | Whether to accept timeout/non-zero exit of external charset translator program, if at least some output was generated |
charsetsrc | As-detected | Character set of pages' fetched source (try charsetsrcdefault instead) |
charsetsrcdefault | unknown (as-detected) | Character set of pages' fetched source, when it is not labelled or detectable (fallback). Overridden by charsetsrc . |
charsettxt or charsettext | UTF-8 | Character set to return formatted text in (i.e. <urlinfo text> ). May be source to use source page's charset. Empty string sets default. |
checkidleconneof | on | Whether idle connections in the Keep-Alive cache are checked for EOF (i.e. server closure) before being reused |
clearheaders | no arg | Clear any headers set with header |
clearproxycache | no arg | Clears bad-proxy and bad-PAC-fetch cache |
closeidleconn | - | Closes any currently idle connections in the Keep-Alive cache |
contentlocationasbaseurl | on | Whether to interpret the Content-Location header (if present) as base URL for document (can be overridden by <base> tag) |
cookiedomainmatchself | on | Whether a cookie's Domain value should match itself when it has a leading dot |
cookiejar $cookies [append] | As fetched | Sets the "cookie jar" (internal list of cookies) by processing the text buffer $cookies , inNetscape or Microsoft Internet Explorer format |
cookiemsgs | off | Whether additional messages are printed when invalid cookies are received and discarded |
cookies | 15 | Controls the acceptnewcookies , sendcookies , acceptcookiemods and acceptcookiedels settings together |
cookiewildcards | off | Controls whether wildcards are acceptable in cookies set with cookiejar |
defaults | - | Resets all urlcp settings to default values |
delaysave | off | Whether to delay the saving (and truncating of previous file) of output when using <submit TOFILE=$file> until the connection starts returning data |
del | on | Inclusion of text inside <DEL> blocks in the formatted text obtained with <urlinfo text> |
dnsdomains or dnsdomain | Obtained from /etc/resolv.conf etc. | List of one or more search domains; limit 5 |
dnsignoretrunc or dnsigntc | on | Whether to ignore the TC (truncated message) flag in DNS replies |
dnsmode | intsys | Sets the routines to use for domain name resolution: int , sys or intsys (internal, but fallback to system if no nameservers found) |
dnsrecurse | on | Whether to request recursion to other nameservers when resolving hostnames |
dnsretrans | 5 | Initial retransmit interval (in seconds) for DNS lookups |
dnsretry | 4 | Max number of retries for DNS lookups |
dnsservices | Read from /etc/host.conf etc. | Name resolution services to use and their order: one or more of hosts , bind |
domvalue $dom $value | - | Sets the value of the page DOM item indicated by $dom to $value . Does not affect JavaScript DOM, For <urlinfo domvalue> . |
eatlinkspace | on | Whether to strip leading/trailing whitespace from links before processing into absolute links |
embedsecurity | off | Security level for subsidiary URLs: off , nodecrease , noincrease or sameprotocol |
emptyhttp09ok | off | Whether to accept empty HTTP/0.9 responses, i.e. a 0-byte response with no headers |
encodings [add|del|set] [$encodings ...] | 7bit 8bit binary identity chunked gzip deflate compress | Allowed content/transfer encodings |
entropypipe | texis.ini [Texis] Entropy Pipe setting | Sets the Unix file pipe path used to access the entropy daemon, for SSL/HTTPS plugin on some platforms |
fetchmeter | none | Whether to print a progress meter during fetches: simple , percent or none |
filedirrobotsfollow | on | file:// directory URLs' HTML will contain follow in their <meta> robots tags |
filedirrobotsindex | off | file:// directory URLs' HTML will contain index in their <meta> robots tags |
fileexclude | none for Windows; /dev/ , /proc/ , /debug/ for Unix | File trees to disallow for local file:// URL fetches |
fileinclude | non | List of required file prefixes for local file:// URL fetches |
filenonlocal | off | How to hanle non-localhost file:// URLs: off , unc , ftp |
fileroot | none | Root directory to prepend to local file:// URL paths |
filetypes [add|del|set] [file|dir|device|symlink|other ...] | file dir symlink | List of allowed file types for local file:// URLs |
formatxmlashtml | on | XML documents are formatted and parsed as HTML |
formtxt or formtext | on | Controls the select , input and textarea settings together |
ftpactivepassivefallback | on | Whether to change FTP active/passive mode on failure |
ftpdirrobotsfollow | on | ftp:// directory URLs' HTML will contain follow in their <meta> robots tags |
ftpdirrobotsindex | off | ftp:// directory URLs' HTML will contain index in their <meta> robots tags |
ftppassive | on | Whether to use FTP passive mode first |
ftprelativepaths | on | Assume FTP paths are login-dir-relative, e.g. ftp://host/dir/file.txt obtained with GET dir/file.txt . If off, use GET /dir/file.txt . |
ftpsendrelativepathsasabsolute | on | Send relative FTP paths as absolute, by prefixing FTP home dir (obtained with PWD ). |
getframes | off | Get subsidiary frames and append to formatted text |
getiframes | off | Get subsidiary iframes and merge in formatted text |
getscripts | off | Fetch remote scripts too (if javascript on); do not run just inline scripts |
header $name $value | As needed | Set or override HTTP request headers |
httpversion $version | 1.1 for v6, 1.0 for v5 | HTTP version to use for requests |
ifmodsince $time | none | Sets the HTTP If-Modified-Since header to the given time (Texis or HTTP) |
ignoreanchorframes | on | Whether to ignore src="\#" frames/iframes |
input | on | The VALUE of <INPUT TYPE=text> tags is included in the formatted text obtained with <urlinfo text> |
inputfileroot | none | Root directory to require <input type="file"> values to be under for <urlinfo domvalue "...submitContent"> |
javascript | off | Run JavaScript in fetched documents |
linelen | 75 | Formatted-text line length to word-wrap at |
linger | off | Whether to set SO_LINGER time of 4 seconds on sockets |
linkprotocols [add|del|set] [$protocols|allowed ...] | All protocols plus unknown | List of protocols allowed to be returned in links from a page |
maxconnidletime | 5 | Max idle time in seconds between requests on a Keep-Alive connection |
maxconnlifetime | 600 | Max total lifetime in seconds of a Keep-Alive connection |
maxdownloadsize | -1 | Max download (network transfer, not final) size of a response document (-1 is no limit; see also maxpgsize ) |
maxframes | 5 | Max number of subsidiary frames, iframes, and/or JavaScript pages to fetch for a document |
maxhdrsize | 128KB | Max size of response headers (-1 is no limit) |
maxidleconn | 2 | Max number of idle Keep-Alive connections to cache |
maxkeepaliverequests or maxconnrequests | 100 | Max number of requests to do on a single connection (-1 is no limit) |
maxpgcachesz | 5MB | Max page cache size in bytes (only subsidiary pages are cached) |
maxpgsize | 512KB | Max page size (after content/transfer decoding) that will be accepted |
maxprotspacecachesize | 128KB | Max protection space cache size in bytes |
maxprotspaceidletime | 3600 | Max idle time of a protection space in the cache, in seconds |
maxprotspacelifetime | -1 | Max lifetime of a protection space in the cache, in seconds |
maxredirs | 5 | Max number of redirects or re-fetches per user fetch |
methods [add|del|set] [$methods ...] | All methods | List of request methods allowed: zero or more of OPTIONS , GET , HEAD , POST , PUT , DELETE , TRACE , MKDIR , RENAME , SCHEDULE , COMPILE , RUN |
minclrdiff | 0 | Minimum foreground/background color difference that formatted text must have |
nameservers | Read from /etc/resolv.conf etc. | List of IPs of nameservers to use, in order, for DNS resolution |
nestcomment | off | Allow nested HTML comments |
netmode | int | Routines to use for page fetching: int or sys (for Windows) |
ntlm[v1|v2]128bitencryption | ignore | Whether to negotiate 128-bit encryption during NTLM session security: one of ignore , accept , request or require |
ntlm[v1|v2]ntlmv2sessionsecurity | request | Whether to negotiate NTLMv2 session security: same values as ntlm128bitencryption |
ntlm[v1|v2]sealing | ignore | Whether to negotiate NTLM sealing (message confidentiality): same values as ntlm128bitencryption |
ntlm[v1|v2]signing | ignore | Whether to negotiate NTLM signing (message integrity): same values as ntlm128bitencryption |
offsiteok | on | Whether documents that are off-site from the original URL will be fetched |
pacfetchretrydelay | 10 | Delay in retrying PAC fetch |
pacmsgs | on | Whether to issue PAC-related JavaScript messages |
pass | user@host for FTP, none for other protocols | Password to use for accessing secure URLs |
protocols [add|del|set] [$protocols ...] | http ftp gopher javascript https | Allowed URL protocols: zero or more of http , ftp , gopher , javascript , https or file |
proxy [type] $proxyUrl | none | HTTP/HTTPs URL to use as proxy for fetches |
proxymode | auto | Proxy mode: auto , proxy , tunnel |
proxypass | none | Proxy password to use when accessing documents via a proxy |
proxyretrydelay | 300 | Delay in retrying a bad PAC proxy when others available |
proxyuser | none | Proxy user to use when accessing documents via a proxy |
putmsg pass|save|all|clear [on|off [on|off ...]] | all on | Disposition of putmsg s from fetches |
redirmsgs | off | Whether to issue info messages about redirects |
refs add|del|set link[,image|frame|iframe] tag attr [attr2 val2] | Pre-set internal list | Which HTML tag/attributes are to be considered links, images etc. when processing HTML |
reparent | Empty string | Full path (e.g. /local/tree ): sets reroot reparent mode and uses path as local tree root. Full URL (e.g. http://somesite.com/dir/page.html : sets abs reparent mode and uses URL as page's URL (not recommended; links may become incorrect) |
reparentimg | on | Whether to reparent image links too, when reparenting |
reparentmode | off | How to reparent links in returned HTML: off , abs (absolute links), reroot (relative to reparent path), mirror (absolute, URL-encode links, and prefix reparent URL) |
saslmechanisms [add|del|set] [$mechanisms ...] | GSSAPI | SASL mechanisms for Negotiate auth |
saslpluginpath | etc/sasl/lib/sasl2 in install dir | SASL plugin search path |
savedownloaddoc | off | Whether to save network-transferred download doc, if it varies from post-content/transfer-decoded document |
screenheight | 1024 | Screen height as seen by JavaScript |
screenwidth | 1280 | Screen width as seen by JavaScript |
scriptevents [add|del|set] [$events ...] | See manual | Which JavaScript events to trigger to glean more links etc. |
scriptlinks | on | Execute javascript: protocol links found on a page |
scriptmaxtimer | 3 | Max script (not real) time in seconds to run JavaScript setInterval() and setTimeout() timers (-1 means no limit) |
scriptmem | 20MB | Max memory in bytes to allow the JavaScript engine to use |
scriptmsgs | off | Whether to issue messages about JavaScript errors |
scriptrealtimers | off | Whether to run JavaScript setInterval() and setTimeout() timers in real time |
scriptstrlinkabs or scriptstrlinksabs | on | Whether to absolute URLs from JavaScript String links |
scriptstrlinks | protocol file | Which types of JavaScript String links to scan for and return in <urlinfo strlinks> : one or more of none , file , protocol or all |
scripttimeout | 5 | Total real time in seconds to allow JavaScript to execute (-1 is no limit) |
scripturldecode | on | Whether to URL-decode javascript: -protocol links before execution |
scriptvaryevents | on | Rotate options, checkboxes and radio buttons on forms to generate more JavaScript events. |
secure | off | Whether pages are fetched securely (via SSL) or not: off , preferred or required |
select | on | Text within <SELECT> blocks is included in the formatted text obtainable with <urlinfo text> |
sendcookies | on | Whether to send cookies (i.e. send the appropriate cookies from the cookie jar) |
sendemptycontent | on | Whether to set Content-Length: 0 for empty requests |
sendlmresponse | on | Whether to send the LM response in NTLM authentication responses |
sendntlmresponse | on | Whether to send the NTLM response in NTLM authentication responses |
showwidgets [add|del|set] [widget|...|all] [...] | none | Which <form> input widgets to display in formatted text, with square brackets or parentheses; for debugging. Widgets: one or more of button , checkbox , file , hidden , image , password , radio , reset , select , select-one , select-multiple , submit , text , textarea , or all |
shutdownwr | on | Whether to use shutdown(SHUT_WR) on HTTP/Gopher sockets when all data has been sent and connection is no longer re-usable |
sslcacertificatefile $caCertFile | unset | Trusted SSL CA certificates (from file) |
sslcacertificate $caCertString | unset | Trusted SSL CA certificates (from string) |
sslcertificatefile $certFile | unset | SSL client certificate (from file) |
sslcertificate $certString | unset | SSL client certificate (from string) |
sslcertificatechainfile $chainFile [skipfirst] | unset | SSL client certificate chain (from file) |
sslcertificatechain $chainString [skipfirst] | unset | SSL client certificate chain (from string) |
sslcertificatekeyfile $keyFile [$password] | unset | SSL client certificate private key (from file) |
sslcertificatekey $keyString [$password] | unset | SSL client certificate private key (from string) |
sslciphers $cipherList | OpenSSL default | SSL ciphers to use (OpenSSL syntax) |
sslprotocols [add|del|set] [$sslprotocols ...] | TLSv1 TLSv1.1 TLSv1.2 | Which SSL protocol(s) to allow: zero or more of SSLv2 , SSLv3 , TLSv1 , TLSv1.1 , TLSv1.2 , all |
sslusesni $onOff | on | Whether to use SNI (Server Name Indication) with TLS |
sslverifydepth $depth | 1 | Max SSL server chain depth (beyond certificate) to allow |
sslverifyserver $onOffOrFlags | off | Whether to verify SSL server certificates |
sspi [add|del|set] [$packages ...] | Empty | SSPI packages for Negotiate auth |
strictcomment | on | Strict comments: must start with <!-- , not just <! |
strike | on | Text within <STRIKE> blocks is included in the formatted text |
textarea | on | Text within <TEXTAREA> blocks is included in the formatted text |
timeout | 30 | Max real time in seconds per network fetch |
traceauth | 0 | Trace message level for client/server authentication calls; bit flags |
tracecalls | 0 | Trace message level for fetch-related function calls; bit flags: 0x0001 <urlcp> calls; 0x0100 full arguments |
tracedns | 0 | Trace message level for DNS |
traceencoding | 0 | Trace message level for content and transfer encoding calls; bit flags |
tracefetch | 0 | Trace message level for fetch library calls; bit flags |
tracescript | 0 | Trace message level for JavaScript calls; bit flags |
traceskt | 0 | Trace message level for socket calls; bit flags |
urlcanonslash | on | Whether to canonicalize backslashes (\ ) to forward slashes (/ ) in URLs |
urlcollapseslashes | off | Whether to collapse multiple slashes (/ ) to one slash in URL paths |
urlnonprint | asis | How to treat non-printable bytes (outside the range ! through ) encountered in URL links of fetched pages: asis , strip or encode |
useragent | Mozilla/2.0 (compatible; T-H-U-N-D-E-R-S-T-O-N-E) | Sets the User-Agent header sent with HTTP requests |
user | anonymous for FTP, none for other protocols | User to use when accessing protected documents |
utf8badencasiso88591err | on | Interpretation of invalid UTF-8 bytes as ISO-8859-1 (when utf8badencasiso88591 is true) still causes an error to be reported (if charsetmsgs true) and returned in errnum |
utf8badencasiso88591 | on | Invalid bytes in UTF-8 source documents will be interpreted as ISO-8859-1 characters (and converted to charsettxt ) |
verbose | 0 | Verbosity level; used for debugging; bit flags |
writebuffersize | 32KB | Initial write buffer size for certain writes, transfer/content decodings |
xmltags | on | Tags that start with <? will be interpreted as an unknown HTML tag, i.e. suppressed from the formatted text |
traceauth
bit flags:
Integer bit flag | Prints messages for |
0x0001 | Protection spaces made (added, expanded, deleted etc.) |
0x0002 | Protection spaces used (attached, detached) |
0x0004 | Authentication objects used (stop, start, handle, connection closed, headers etc.) |
0x0008 | Authentication protocol-specific messages |
0x0010 | Keep-Alive (persistent connections) messages |
0x0020 | WWW-Authenticate parsing |
0x0040 | Connection open/close/idle/re-use |
0x0080 | Socket/descriptor/handle open/close |
tracedns
levels:
Integer level | Prints messages for |
0 | No tracing |
1 | gethostbyname() , gethostbyaddr() calls; miscellaneous warnings |
2 | Service calls (hosts/BIND/NIS); nsswitch.conf and host.conf parse |
3 | Packets sent/received |
4 | Individual config entries, /etc/hosts entities, reply RR entries |
5 | All socket calls |
traceencoding
bit flags:
Integer bit flag | Prints messages for |
0x0001 | Open/close objects |
0x0002 | ...TranslateEncoding filter calls |
0x0004 | Decoder object state changes etc. |
0x0040 | Data read |
0x0080 | Data written |
tracefetch
bit flags:
Integer bit flag | Prints messages for |
0x0001 | Top-level (user-initiated) fetch |
0x0002 | Sub-object (script/frame) fetch |
0x0004 | Sub-object fetch from cache |
0x0008 | Static (HTML) links added while formatting |
0x0010 | Script links added |
0x0020 | Static images/frames/etc. added |
0x0040 | Script images/frames/etc. added |
0x0080 | Top-level fetch from user-provided source |
0x0100 | Proxy cache activity (except script fetches) |
0x0200 | Redirect fetch |
0x0400 | Authorization fetch |
0x0800 | Proxy retry fetch (attempt with 2nd+ proxy) |
0x1000 | Empty-response retry fetch |
0x2000 | PAC script fetch |
tracescript
bit flags:
Integer bit flag | Prints messages for |
0x0001 | Inline scripts run |
0x0002 | Remote scripts run |
0x0004 | javascript & -protocol links run |
0x0008 | Timers run |
0x0010 | Objects checked for events |
0x0020 | Modify-and-call-event-handler objects run |
0x0040 | Event handlers run (normal or modify) |
0x0080 | Check-string-for-URL called |
0x0100 | Check-string-for-URL link added |
0x0200 | Script output inserted (into raw HTML parse buffer) |
0x0400 | Event handlers added |
0x0800 | Memory allocated |
0x1000 | Memory freed |
traceskt
bit flags:
Integer bit flag | Prints messages for |
0x00000001 | After open() , close() , accept() etc. |
0x00000002 | After select() |
0x00000004 | After reads |
0x00000008 | After writes |
0x00000010 | After ioctl() , getsockopt() |
0x00000020 | Currently unused |
0x00000040 | The data read |
0x00000080 | The data written, or sent with ioctl() |
0x00000100 | Details of SSL verification of peer certificate |
0x00010000 | Before open() , close() , accept() etc. |
0x00020000 | Before select() |
0x00040000 | Before reads |
0x00080000 | Before writes |
0x00100000 | Before ioctl() , getsockopt() |
0x00200000 | Currently unused |
0x00400000 | The data buffer before reads |
0x00800000 | The data buffer before writes or ioctl() |
0x01000000 | Request SSL peer certificate (if not already requested) |
0x10000000 | Datagram sockets too (i.e. DNS) |
<urlinfo $name [$which]>
Gets detailed info about most recent fetch
or submit
.
Option | Returns |
actualurl | Last URL retrieved (may differ from initial argument to fetch , e.g. if redirects) |
allrefs | List of all links, images, frames, iframes, strlinks |
authparam $param | Authentication parameter $param (e.g. realm for Basic, target , serverchallenge for NTLM) from the server response |
authparams | List of names of parsed authentication parameters in server response |
authscheme | Authentication scheme used (<urlcp authschemes> token) |
authschemehighest | Highest (most secure) authentication scheme used during entire transaction |
authschemes | Authentication schemes allowed |
charsetconfigtotext | Current charset configuration, in the format used by <urlcp charsetconfigfromfile> |
charsetdetected | Charset of source page, as detected by scanning document (sans meta/headers) |
charsetexplicit | Charset of source page, as explicitly set in header or meta; Unknown if unknown or not set |
charsetsrc or charsetsource | Charset of source page, as interpreted by the parser: charset as set by <urlcp charsetsrc> , charset explicitly set in header/meta, charset detected, or the <urlcp charsetsrcdefault> charset |
charsettxt or charsettext | Charset of formatted text returned by <urlinfo text> |
contenttype | Content-Type of page (sans parameters); from header, meta, or URL extension; lower-case |
contenttypeparams | List of names of Content-Type parameters; lower-case |
contenttypeparam $which | List of values of Content-Type parameter(s) $which |
contenttypesrc | How contenttype etc. was determined: one of generated , header , doctype , metaheader , urlpath , contentscan or unknown |
cookiejar [all] [netscape4x] | Contents of the "cookie jar", as a Netscape-cookie-file-like format text buffer. Persistent only; all cookies if all given. True Netscape format (sans IsHttpOnly column) if netscape4x given |
dnstime | Time in seconds (plus fraction) to resolve hostname(s) via DNS |
domvalue $dom | Value of DOM item indicated by $dom (from page not JavaScript). document.forms.myForm.{submitUrl|submitContent} for form submit URL and content. |
downloaddoc | Network-transferred downloaded document body. Same as rawdoc if no content/transfer encodings; encoded doc if encodings present. Must set <urlcp savedownloaddoc on> first. |
encodings | List of content/transfer encodings of response document, in order applied by server |
errmsg | Human-readable string description of fetch error. May change in future releases. |
errnum | Vortex fetch error code (not the HTTP/protocol code). 0 is no error |
errtoken | String token representing fetch error (e.g. DocNotFound ). For more readable/self-documenting code |
frames | List of frame URLs in document. If <urlcp getframes> is true, list is empty (frames were fetched and merged with doc) |
headers | Names of HTTP headers in response |
header $hdrName | Entire value(s) of HTTP header name(s) listed in single $hdrName |
headerparam $hdrName $paramName | Value(s) of single $paramName in HTTP header(s) with single name $hdrName |
headerparams $hdrName | Parameter names in HTTP header(s) with single name $hdrName |
headervalue $hdrName | Initial value(s) (before "; ") of HTTP header(s) with single name $hdrName |
httpcode | Value of protocol response code, if any. Varies by protocol; see errtoken for consistent token |
httpmsg | Protocol response string, if any. Varies by protocol; see errmsg for more consistent message |
iframes | List of <IFRAME> URLs in document. If <urlcp getiframes> is true, list is empty (iframes were fetched and merged with doc) |
images | List of image URLs in document |
insecure | Which parts of transaction were insecure (not via SSL). Same tokens as secure . |
intermediateurls | Intermediate redirects, file/dir retries etc. fetched before final URL |
links | List of non-image link URLs in document |
metaheaders | Unique names of <META HTTP-EQUIV> tags in document |
metaheader $hdrName | Entire value(s) of <META HTTP-EQUIV> tag(s) listed in single $hdrName |
metaheaderparam $hdrName $paramName | Value(s) of single parameter name $paramName in meta header(s) of single $hdrName |
metaheaderparams $hdrName | Parameter names in meta header(s) of single $hdrName |
metaheadervalue $hdrName | Initial value(s) (before "; ") of meta header(s) with single name $hdrName |
metanames | Names of <META NAME> tags in document |
metaname $hdrName | Entire value(s) of <META NAME> tag(s) listed in single $hdrName |
metanameparam $hdrName $paramName | Value(s) of single parameter name $paramName in meta name(s) with single $hdrName |
metanameparams $hdrName | Parameter names in meta name(s) of single $hdrName |
metanamevalue $hdrName | Initial value(s) (before "; ") of meta name(s) listed in single $hdrName |
originalurl | Original URL retrieved (i.e. the one given to fetch or submit ) |
prngdpid [$path] | PID of verb`prngd` daemon running on Unix file pipe path $path , 0 if none, -1 on error. If no/empty path, all standard paths (/var/run/egd-pool , /dev/egd-pool , /etc/egd-pool , /etc/entropy ) and configured path (texis.ini [Texis] Entropy Pipe value are checked |
processedchunks | Ordered list of raw buffer chunks parsed. May differ from rawdoc if latter is not UTF-8, or if JavaScript run. |
processedchunksbufnums | Ordered list of original buffer numbers that processedchunks come from. |
processeddoc | Concatenation of processedchunks . |
putmsgs | Fetch-related putmsg s since the most recent fetch. Only if <urlcp putmsg save on> (default). Disambiguates parallel fetch messages. |
rawdoc | Document source (after content/transfer encodings decoded, if enabled) |
redirs | Number of redirects encountered |
saslmechanisms | List of SASL mechanisms enabled |
saslmechanismsavailable | List of SASL mechanisms available |
saslpluginpath | Colon-separated dir path to look for SASL plugins |
secure | Which parts of transaction were conducted securely (via SSL); one or more of request (final URL request), response (final response), ancestors (all previous requests/responses), descendants (all requests/responses for subsidiary objects on final page), all (all requests/responses for entire transaction) |
sslciphers | SSL cipher list currently set |
sslclientcalist | SSL client-certificate issuer names the server deems acceptable |
sslservercertificate | SSL server certificate obtained |
sslverifyservererrtoken | String token identifying the sslverifyserver failure reason |
sspipackages | List of SSPI packages enabled |
sspipackagesavailable | List of SSPI packages available |
strbaseurls | List of JavaScript base URLs corresponding to strlinks |
strlinks | List of JavaScript String links. May be unreliable or require further processing. See <urlcp scriptstrlinksabs> . |
text | Formatted text of document |
textformatter | Token describing what formatter was used to produce <urlinfo text> value; one of: unknown , rawdoc (text is document source), text (plain-text formatter), gopher , html , rss , frame |
time or totaltime | Total time in seconds (plus fraction) to retrieve the page (DNS plus content transfer) |
title | Formatted title of document |
transfertime | Time in seconds (plus fraction) to transfer content to/from server |
The possible errnum
, errtoken
and errmsg
values are:
errtoken | errmsg | |
0 | Ok | Ok |
1 | ClientErr | Unknown client error |
2 | ServerErr | Server error |
3 | UnkResponseCode | Unrecognized response code |
4 | UnkProtocolVersion | Unrecognized protocol version |
5 | ConnTimeout | Connection timeout |
6 | UnkHost | Unknown host |
7 | CannotConn | Cannot connect to host |
8 | NotConn | Not connected |
9 | CannotCloseConn | Cannot close connection |
10 | CannotWriteConn | Cannot write to connection |
11 | CannotReadConn | Cannot read from connection |
12 | CannotWriteFile | Cannot write to file |
13 | OutOfMem | Out of memory |
14 | PageTrunc | Page not expected size, possibly truncated |
15 | MaxPageSizeExceeded | Max page size exceeded, truncated |
16 | TooManyRedirs | Too many redirects |
17 | OffsiteRef | Off-site or unapproved redirect or frame |
18 | UnkProtocol | Unknown/unimplemented access method |
19 | BadParam | Bad parameter |
20 | UnkErr | Unknown error |
21 | BadRedir | Bad redirect |
22 | DocUnauth | Document access unauthorized |
23 | DocForbidden | Document access forbidden |
24 | DocNotFound | Document not found |
25 | ServerNotImplemented | Server did not recognize request (unimplemented) |
26 | ServiceUnavailable | Service unavailable |
27 | UnkMethod | Unknown request method |
28 | CannotReadFile | Cannot read from file |
29 | CannotLoadLib | Cannot load dynamic library |
30 | ScriptErr | Script error |
31 | ScriptTimeout | Script timeout |
32 | ScriptMemExceeded | Script memory limit exceeded |
33 | DisallowedProtocol | Disallowed protocol |
34 | SslErr | SSL error |
35 | ProxyUnauth | Proxy access unauthorized |
36 | EmbeddedSecurityChange | Embedded object security change |
37 | DisallowedFilePrefix | Disallowed file prefix |
38 | DisallowedFileType | Disallowed file type |
39 | DisallowedNonlocalFileUrl | Disallowed non-local file URL |
40 | CannotConvertCharset | Cannot convert character set |
41 | DisallowedAuthScheme | Disallowed authentication scheme |
42 | SecureTransNotPossible | Secure transaction not possible |
43 | UnexpectedResponseCode | Unexpected server response |
44 | DisallowedMethod | Disallowed request method |
45 | ConnUpgradeToSslRequired | Connection upgrade to SSL required |
46 | FetchNotPermittedByLicense | Fetch not permitted by license |
47 | UnknownContentEncoding | Unknown Content- or Transfer-Encoding |
48 | DisallowedContentEncoding | Disallowed Content- or Transfer-Encoding |
49 | CannotDecodeContentEncoding | Cannot decode Content- or Transfer-Encoding |
errtoken | errmsg | |
50 | NotAcceptable | Client-acceptable version not found |
51 | CannotVerifyServerCertificate | Cannot verify server certificate |
52 | ConnectionNotReusable | Connection not reusable |
53 | CannotTunnelProtocol | Cannot tunnel protocol |
54 | PacError | Proxy auto-config error |
urlinfo
returns the requested value(s).
See also: fetch
, submit
, urlcp
<urltext> <urllinks>
urltext
returns the formatted text of the last-fetched
document. urllinks
returns a list of its non-image links, in
absolute path form.
See also: fetch
, submit
, urlinfo
, urlcp
<urlutil $action [$arg ...]>
URL/fetch related utilities.
Action | Returns |
abs|absurl $absurl $relurl | Absolute version of $relurl s |
charsetcanon $charset | Canonical name for charset name $charset |
charsetconv $buf $from [$to] | Text buffer $buf converted from charset $from to $to . Default for $to is current <urlcp charsettxt> setting |
charsetdetect $buf | Charset for text buffer $buf if detected, "Unknown " if unknown |
filepath $u | Local file path corresponding to file:// URL $u , as determined by current <urlcp fileroot> etc. settings |
pacinit | 1 if proxy auto-config successful, 0 if not |
split $u $parts | URL $u value split into one or more parts: protocol , user , pass , host , port , path , type , query or anchor |
sslcertificate $pem tostring | Human-readable string version of PEM string buffer |
inetabbrev $inet | Shortest representation of $inet ; empty string on error |
inetcanon $inet | Canonical representation of $inet (4 decimals, and a / N netmask), or empty string on error |
inetnetwork $inet | 4-decimal IP address with network bits of $inet , and host bits set to 0; empty string on error |
inethost $inet | 4-decimal IP address with host bits of $inet , and network bits set to 0; empty string on error |
inetbroadcast $inet | 4-decimal IP broadcast address for $inet , i.e. with network bits, and host bits set to 1; empty string on error |
inetnetmask $inet | 4-decimal IP netmask for $inet , i.e. with network bits set to 1, and host bits set to 0; empty string on error |
inetnetmasklen $inet | Integer netmask length of $inet ; -1 on error |
inetcontains $inetA $inetB | 1 if $inetA contains $inetB , 0 if not, or -1 on error |
inetclass $inet | Class of $inet , e.g. A , B , C , D , E or classless if different netmask is used; empty string on error |
inet2int $inet | Integer representation of IP network/host bits of $inet (sans netmask); -1 on error (or for 255.255.255.255 ) |
int2inet $i | inet string for integer $i taken as an IP address; empty string on error |
Several actions take inet
type arguments, which are IP network
and/or host address specification strings of the form:
N[.
N[.
N[.
N]]]{/
B|:
IP}]
where N is a decimal, octal or hexadecimal integer from 0 to 255,
B is a decimal, octal or hexadecimal netmask integer from 0 to 32,
and IP is an IP address netmask of the form
N[.
N[.
N[.
N]]]
. If only x Ns
are specified, the last N may be 5-x bytes in size instead of 1
byte. E.g. "1.2.65535
" is legal (last N is 2 bytes),
whereas "1.2.3.65535
" is not. If no netmask
(/
B|:
IP) is specified, the netmask will be
calculated from standard class A/B/C/D/E rules, but it will be at
least large enough to include all specified bytes of the IP. (Thus,
to get the class A/B/C/D/E netmask of an IP address via
inetnetmask
, just give the first/highest N byte of the IP, as
this is the sole determiner of class.) If an IP netmask is specified,
only the largest contiguous set of most-significant 1 bits are used.
Examples: "1.2.3.4
" (netmask is /32
because 4 bytes
given), "10
" (netmask is /8
because it is a Class A
address), "1.2.3.4/10
", "67305985
"
(e.g. 4.3.2.1
).
<USER = user> <PASS = pass>
The USER
and PASS
commands set the SQL user and
password for accessing databases. These values will be used by
future <SQL>
statements, unless overridden by the USER
and PASS
options to a particular <SQL>
(here).
See also: SQL
<userstats $REMOTE_ADDR [license|user]>
userstats
returns the (integer) number of accesses by the
given user in the last minute, or the current or highest number of
active users. license
gives builtin stats, user
gives
stats logged by <loguser>
.
See also: loguser
, resetstats
<USES [DATE=date] module[=file] [module[=file]]>
Directive: list of modules to be included during compilation. Modules read from library table, unless =file option specified. Revision at date used from library table if specified. Modules can use other modules.
See also: Vortex Library Modules
<$var = [value1 ...] > <$var = (SQL expression)>
<varinfo $action [flags ...] [$arg]>
Action | Returns |
list [$source] | Names of all known variables in current scope, including unlisted environment/CGI variables only accessible via getvar . Only from a single source if $source given: url (query string), env (environment), content (POST ), cgi (POST and query-string), cookie |
size $arg | Size in bytes of each variable named by $arg |
type $arg | SQL type of variable named by $arg |
dump $arg | Debug information about variable named by $arg (same format as $?myVar syntax) |
filename $arg | Filename for variable named by $arg ; for multipart file uploads only |
contenttype $arg | Content-Type for variable named by $arg ; multipart file uploads only |
The varinfo
function returns various information about variables,
per its arguments.
See also: getvar
<VERB [NOESC]> ... raw text to be output ... </VERB>
Text inside the block is output as-is (but with HTML escapement), without Vortex interpretation. If NOESC, text is not HTML-escaped.
VERB
has no effect on $ret
.
See also: send
<vxcp setting [args ...]>
Controls various low-level Vortex settings.
Option | Controls |
putmsg call|log|print|all on|off|exceptiononly | Action(s) to take for <putmsg> s |
putmsgbuffersize $sz | Size of <putmsg> buffer |
stack | Maximum Vortex stack depth |
timeout | Vortex script timeout (Texis date, or seconds from now |
timeouttext $text | Vortex script timeout text (text printed at timeout) |
trap | Debug: whether to trap signals. See <TRAP> directive. |
connreset | Debug: whether to trap connection-resets. See <TRAP> directive. |
tracealarm | Debug: integer bit flags for alarm tracing |
tracelib | Debug: integer bit flags for shared-library tracing |
tracepipe | Debug: integer bit flags for pipe tracing |
htmlmode | Whether to run in HTML mode (and escape variables) or not |
filemsg | Whether or not to issue putmsg for sysutil and some syscp file-oriented actions' errors; default on |
execmsg | Whether or not to issue putmsg for <EXEC> errors; default on. See also $ret.err |
libpath | Search path for dynamically-loadable libraries; overrides texis.ini [Texis] Lib Path |
libcheckversion $module on|off | Whether to check version of loadable $module when it is loaded; e.g. ssl |
transferlog $file | Web server transfer log for this transaction, if using integrated vhttpd environment |
errorlog $file | Web server error log (not Vortex log) for this transaction, if using integrated vhttpd environment |
applylicense $data $user $pass [$remoteUrl] | Applies Texis license update data $data . $user /$pass must match [License Update] settings in texis.ini . Return string combines error token and human-readable message. |
maxurllen $sz | Maximum URL length for $url /$urlq ; default 512 |
tracevortex log $file | Trace Vortex log file; default is script path sans extension plus .vstrace |
tracevortex forceflush on|off | Force flush of Trace Vortex log file after every write |
tracevortex on|off | Turn Trace Vortex on or off |
compatibilityversion $version | Set Texis compatibility version to $version |
Bit flags for tracepipe
; subject to change in future releases:
Integer bit flag | Messages issued |
0x00000001 | After open() , close() , TXcreatethread() , LogonUser() etc. |
0x00000002 | After select() , WaitForMultipleObjects() |
0x00000004 | After reads |
0x00000008 | After writes |
0x00000010 | After SetEvent() , ResetEvent() |
0x00000020 | After thread run (at soft exit in thread) |
0x00000040 | The data read |
0x00000080 | The data written |
0x00010000 | Before open() , close() , TXcreatethread() , LogonUser() etc. |
0x00020000 | Before select() , WaitForMultipleObjects() |
0x00040000 | Before reads |
0x00080000 | Before writes |
0x00100000 | Before SetEvent() , ResetEvent() |
0x00200000 | Before thread run (at start in thread) |
0x00400000 | The data buffer before reads |
0x00800000 | The data buffer before writes |
Bit flags for tracelib
; subject to change in future releases:
Integer bit flag | Messages issued |
0x01 | libpath expansion |
0x02 | Library file search and loading |
0x04 | Symbol/function lookup |
The vxcp
function returns setting-dependent value(s).
See also: sqlcp
, apicp
, urlcp
, PUTMSG
,
TIMEOUT
, STACK
, TRAP
<vxinfo $what [$arg ...]>
Option | Returns |
outputsz | Number of bytes output by script so far |
db | Current database path used by SQL statements |
globaldb | Global database, used for EXPORT TABLE |
version | Texis version string |
platform | Texis platform ID string (cpu-vendor-os-filebits-addrbits ) |
installdir | Texis install dir |
executabledir | Texis executables dir |
features | List of platform-dependent features: RE2 |
htmlmode | 1 if HTML mode, 0 if not |
release | Date of Vortex (texis ) executable's release |
license $name | Texis license value: violationmsg, violationtime, gentime, expiretime, verifytime, verifytrytime, serial, curhits, curhitstime, maxhits, curtblrows, maxtblrows, curtblsz, maxtblsz, curdbrows, maxdbrows, curdbsz, maxdbsz, curtotrows, maxtotrows, curtotsz, maxtotsz, texismonitorpid, equivpath, uequivpath, vortexlog, defaultdb, defaultscript, vortexflags, texisflags, schemas, inittime, maxversion, maxversionnum, prevhits, highhits, flags, fetchesToday, fetchesTodayStart (when fetchesToday count started), fetchesThisMinute, fetchRate3, fetchRate15, fetchRate60 (fetches/min. averaged over 3, 15, 60 minutes), maxfetches (licensed fetch limit per day; 0 is unlimited), metamorphsToday, metamorphsTodayStart, metamorphsThisMinute, metamorphRate3, metamorphRate15, metamorphRate60, maxmetamorphs (limit), thisMinuteStart (when minute for ...thisMinute vals started; >1 minute ago: may be invalid). |
content | Raw content of POST or multi-part MIME upload to the script, if any |
objectpath | File path to currently running object file |
cmdlnargs | Vortex command-line arguments |
scriptargs | Script command-line arguments |
stack dump [$N] | Current Vortex stack information Optional $N , which defaults to 0, is bitwise OR of flags: 1 Dump all items, not just function calls; 2 Dump parameters too; 4 Dump full length of parameter values; 8 Print global variables too |
texisconf [$section [$setting [$default]]] | Current texis.ini value for $setting in $section . $section may be numeric (from 0). If $default given, that value is returned if setting is not present. If $setting not given, all setting names in $section are returned. If $section not given, all section names in file are returned, in file order. |
texisconffrom $file [$section [$setting [$default]]] | Same as texisconf , but reads settings from $file instead of active config. If $file is empty, the default texis.ini file in the install dir is used. |
texisconffile | File path to texis.ini file used by current invocation of Vortex. Note that the file may not exist. |
sourcepath | File path to currently running script source |
sourcepathnoext | File path to currently running script source, but without its extension |
scriptroot | Full file path to effective Script Root. May be empty if Script Root is not applicable or computable in the current invocation |
execreadline | When called from within <EXEC> block, returns the next line of data from program's output, without trailing newline, blocking if needed until data is available. Returns empty (0 values) if EOF has been reached. Each line read is removed from (later) $ret return value of the closing </EXEC> . For "hot" interaction with an <exec> . |
compatibilityversion | Texis compatibility version number as a double , i.e. major.minor version Texis is attempting to emulate. |
The vxinfo
function returns option-dependent value(s).
See also: vxcp
<WHILE condition> ... statements ... </WHILE>
Loops over statements while condition is true. The
condition has the same syntax as for <if>. $loop
is
set every iteration, starting with 0 before the first iteration
(i.e. it may be used as a counter in the condition).
<BREAK> will exit the loop.
See also: IF
, BREAK
<wordlist $table [$field [$wordsOrWildcards [$options]]]> <wordcount> <wordoccurrencecounts>
wordlist
returns a list of the words found in a Metamorph
index. wordcount
returns the corresponding document
frequencies of those words. wordoccurrencecounts
returns the
hit counts (every word every doc).
<WRITE [APPEND] [OUTPUT] [SKIPONFAIL] [FLAGS=$flags] $file> ... output to file ... </WRITE>
Redirects output inside the block to $file
. Appends instead of
truncates $file
if APPEND
flag given. If $file
is "-
" (single dash), output goes to Vortex standard output
(i.e. no-op). If $file
is "--
" (two dashes), output
goes to top-level standard output, i.e. "breaks through" any outer
<CAPTURE> etc. blocks. "---
" (three dashes) prints
to stderr
.
In version 7 and later, OUTPUT
flag may be given to also copy
output normally to output; FLAGS
value may be given (CSV) to
dynamically set other flags at run-time; and SKIPONFAIL
will skip inner block code on failure of $file
open.
WRITE
has no effect on $ret
.
<xtree [XTREE=$treename] $command [$values] [$treename][ /]>or
<xtree [XTREE=$treename] [options] $command [$values] [$treename]> ... </xtree>
Giving any of these options (besides XTREE
) makes
<xtree>
looping:
Option | Action |
ROW | Do not accumulate hits in $ret /$ret.count /$ret.seq , and do not make them loop variables |
SKIP=$n | Skip the first $n values. Does not affect value of $loop . |
MAX=$n | Return at most $n values |
XTREE=$treename | Use tree named $treename instead of the default |
Commands:
Command | Action |
CLEAR | Clear tree: all counts set to 0, but tree and values remain in memory |
DUMP | Dump tree. Returns unique, sorted list of values in tree that have non-zero counts. In looping syntax, $ret.count and $ret.seq are set to the corresponding count and sequence numbers |
COUNT | Dump value counts from immediately previous non-looping DUMP , SEARCH or INSERT command on the same-named tree |
SEQ | Returns corresponding sequence numbers (starting at 0), from immediately previous non-looping DUMP , SEARCH or INSERT on the same-named tree |
INSERT | Adds $values to the tree (if not already present), and increments their counts. |
DELETE | Deletes $values from tree, i.e. sets their counts to 0. |
SEARCH | Returns a list of $values that are in tree. For looping syntax, $ret.count and $ret.seq are set. |
SET | Set option(s) given in $values |
GET | Get option(s) given in $values |
FLUSH | Remove tree and free its memory |
SET
options:
SET Option | Action |
noadd | Do not add new values to tree during INSERT |
clear | Also clear the tree during DUMP |
stringcomparemode $mode | Set string compare mode for tree to $mode |
storefolded $onOff | Set the store-folded flag for tree to $onOff |
defaults | Restore defaults |
GET
options:
GET Option | Returns |
noadd | 1 if not adding new values to tree during INSERT |
clear | 1 if also clearing the tree during DUMP |
stringcomparemode | String compare mode for tree |
storefolded | 1 if storing values folded |
numitems | Number of items in tree (that are DUMP able) |
numallocateditems | Number of allocated items (including "hidden" COUNT 0 items) |
memused | Memory in bytes used by the tree |
The xtree
function returns either nothing, a list of strings,
or a list of integer counts. If invoked as a looping command,
$ret.count
and $ret.seq
may be set as well.
See also: sort
, uniq
... LIKE 'iraq gulf %qadhafi'
... LIKE '~cat'will also return documents containing kitten or tiger.
If you want to supply the search terms which comprise the query term yourself you can do so as follows:
... LIKE '(cat,tiger,kitten)'
... WHERE text LIKE 'dog';If you want to find multiple keywords you can simply add them to the query, for example:
... WHERE text LIKE 'dog cat';Which will find documents having a sentence which contains the word cat and the word dog. Look at the proximity operators for searching within different blocks than a sentence. By default in Texis WebScript the linguistic settings are set such that it will only find the word as entered. To enable linguistic processing you can use the apicp function to set the minwordlen to 5.
... LIKE 'cancer #>0<1'which would match:
... LIKEP 'john smith'which would find, among others
John Smith John D. Smith Smith, JohnIf you only wanted to find John Smith, and none of the other variations you would use the query:
... LIKE '"John Smith"'
Expression | Meaning |
---|---|
line | within a line |
sent | within a sentence |
para | within a paragraph |
page | within a page |
all | within the field |
NUMBER | within NUMBER characters |
REX Expression | use expression as delimiter |
Examples:
Find cat and dog withing a paragraph
...LIKE 'cat dog w/para'Find President and congress within a section, which has uppercase SECTION headings.
...LIKE 'president congress w/\RSECTION'
'john david michael +smith @1'The + means that smith must occur. The @1 means that there should be at least one intersection (two sets) between the remaining sets (john, david and michael). The symbols available are:
In the ranking queries (LIKER, LIKEP), the intersects operator is ignored, and the + and - take on a different meaning. Normally the weight of a word is determined by its frequency. A + will give that word the maximum possible weight. A - will take the weight of the term, and negate it, so a document containing the weight will have its rank reduced.
... LIKE 'screwdriver /\alpha{3}\digit{4} w/line'
Within Rex the meaning of various characters is as follows:
Flags | Meaning |
---|---|
\R | Respect Case |
\I | Ignore Case (default) |
\L | Toggle Literal mode. Removes special meaning from characters |
\F \P | Followed/Preceded By. Allows the finding of an expression following or in front of another. The preceding or following expression is not counted as part of the hit. |
! | NOT the following expression |
>> | Use the following expression as the root, which means it will be found first. |
Character Class | Meaning |
\alpha \upper \lower \digit \xdigit \alnum \space \punct \print \graph \cntrl \ascii | Match the same characters that are would be matched by the respective is...() function, e.g. isalpha() |
[] | Matches any single character from those contained between the brackets. Ranges can be given with a '-' (e.g. a-z0-9). A '^' as the first character inverts the set. Case is respected. |
Single Characters | Value |
\xNN | NN is the hexadecimal code of the character |
$ | End of line. (Appropriate for operating system) |
. | Any Single Character |
Other | Matches itself |
\\ | Matches a backslash |
Repetition Operators | Meaning |
{x} | expression repeated x times |
{x,y} | repeated between x and y times |
* | zero or more occurences |
+ | one or more occurences |
Note that the repetition operators apply to entire preceding expression, not just the last character. So
\digit{1}abc{2,3}Will match 1abcABC, but not 1abcC
string xmlReaderGetAllContent(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetName
,
xmlReaderGetContent
,
xmlReaderGetAttribute
string xmlReaderGetAttribute(xmlReader reader, string name [, string nsURI])
Parameters:
xmlReader
- the xmlReader
objectname
- the name of the attribute whose value you
wantnsURI
(optional) - The URI or the namespace for
the attribute. Defaults to any namespace.
Returns:
See also: xmlReaderGetAttributeCount
,
xmlReaderGetAttributeNumber
int xmlReaderGetAttributeCount(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetAttribute
,
xmlReaderGetAttributeNumber
string xmlReaderGetAttributeNumber(xmlReader reader, int number)
Parameters:
reader
- the xmlReader
objectnumber
- the index of the attribute you want (starting at 0)
Returns:
See also: xmlReaderGetAttribute
,
xmlReaderGetAttributeCount
int xmlReaderGetBytesConsumed(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetColumn
,
xmlReaderGetDepth
,
xmlReaderGetLine
,
xmlReaderGetType
,
xmlReaderIsEmptyElement
int xmlReaderGetColumn(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetBytesConsumed
,
xmlReaderGetDepth
,
xmlReaderGetLine
,
xmlReaderGetType
,
xmlReaderIsEmptyElement
string xmlReaderGetContent(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetName
,
xmlReaderGetAllContent
int xmlReaderGetDepth(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetBytesConsumed
,
xmlReaderGetColumn
,
xmlReaderGetLine
,
xmlReaderGetType
,
xmlReaderIsEmptyElement
string xmlReaderGetEncoding(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetLang
,
xmlReaderGetVersion
string xmlReaderGetLang(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
xml:lang
attribute for the
current element(if any).
See also: xmlReaderGetEncoding
,
xmlReaderGetVersion
int xmlReaderGetLine(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetBytesConsumed
,
xmlReaderGetColumn
,
xmlReaderGetDepth
,
xmlReaderGetType
,
xmlReaderIsEmptyElement
string xmlReaderGetLocalName(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetNsURI
,
xmlReaderGetNsPrefix
string xmlReaderGetName(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetAllContent
,
xmlReaderGetContent
string xmlReaderGetNsPrefix(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetLocalName
,
xmlReaderGetNsURI
string xmlReaderGetNsURI(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetLocalName
,
xmlReaderGetNsPrefix
string xmlReaderGetType(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetBytesConsumed
,
xmlReaderGetColumn
,
xmlReaderGetDepth
,
xmlReaderGetLine
,
xmlReaderIsEmptyElement
string xmlReaderGetVersion(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
See also: xmlReaderGetEncoding
,
xmlReaderGetLang
int xmlReaderIsEmptyElement(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
<p/>
) element
See also: xmlReaderGetColumn
,
xmlReaderGetDepth
,
xmlReaderGetLine
,
xmlReaderGetType
int xmlReaderMoveToAttribute(xmlReader reader, string name)
Parameters:
reader
- the xmlReader
objectname
- the name of the attribute you want to move to
Returns:
1
- success0
- attribute not found-1
- other error
See also: xmlReaderMoveToAttributeNumber
,
xmlReaderMoveToElement
,
xmlReaderMoveToFirstAttribute
,
xmlReaderMoveToNextAttribute
,
xmlReaderRead
int xmlReaderMoveToAttributeNumber(xmlReader reader, int number)
Parameters:
reader
- the xmlReader
objectreader
- the index of the attribute you want to move to (starting at 0)
Returns:
1
- success0
- attribute not found-1
- other error
See also: xmlReaderMoveToAttribute
,
xmlReaderMoveToElement
,
xmlReaderMoveToFirstAttribute
,
xmlReaderMoveToNextAttribute
,
xmlReaderRead
int xmlReaderMoveToElement(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
1
- success0
- not moved-1
- other error
See also: xmlReaderMoveToAttribute
,
xmlReaderMoveToAttributeNumber
,
xmlReaderMoveToFirstAttribute
,
xmlReaderMoveToNextAttribute
,
xmlReaderRead
int xmlReaderMoveToFirstAttribute(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
1
- success0
- not found-1
- other error
See also: xmlReaderMoveToAttribute
,
xmlReaderMoveToAttributeNumber
,
xmlReaderMoveToElement
,
xmlReaderMoveToFirstAttribute
,
xmlReaderMoveToNextAttribute
,
xmlReaderRead
int xmlReaderMoveToNextAttribute(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
1
- success0
- not found-1
- other error
See also: xmlReaderMoveToAttribute
,
xmlReaderMoveToAttributeNumber
,
xmlReaderMoveToElement
,
xmlReaderMoveToFirstAttribute
,
xmlReaderRead
xmlReader xmlReaderNewFromFile(string filename [, string encoding ] [, string options ] )
Parameters:
filename
- the name of the XML file you'd like to readencoding
(optional) - encoding to use for the file.
If none given, xmlReader
will attempt to discover on its
own.options
(optional) - a comma-separated list of
parsing options (see below)
Returns:
xmlReader
for this file
See also: xmlReaderNewFromString
xmlReader xmlReaderNewFromString(string data [, string encoding ] [, string options ] )
Parameters:
data
- the XML you want to parse and readencoding
(optional) - encoding to use for the fileoptions
(optional) - a comma-separated list of
parsing options (see below)
Returns:
xmlReader
for this string
See also: xmlReaderNewFromFile
int xmlReaderRead(xmlReader reader)
Parameters:
reader
- the xmlReader
object
Returns:
1
- the next node was read successfully0
- there are no more nodes to read-1
- error
See also: xmlReaderMoveToAttribute
,
xmlReaderMoveToAttributeNumber
,
xmlReaderMoveToElement
,
xmlReaderMoveToFirstAttribute
,
xmlReaderMoveToNextAttribute
xmlNode xmlTreeAddChild(xmlNode parent, xmlNode child)
Parameters:
parent
- The node that you want to assign the
child
to.child
- The node that you want to move to being a child
of parent
.
Returns:
child
See also: xmlTreeAddChildList
,
xmlTreeAddNextSibling
,
xmlTreeAddPrevSibling
,
xmlTreeAddSibling
,
xmlTreeSetRootElement
xmlNode xmlTreeAddChildList(xmlNode parent, xmlNode child)
Parameters:
parent
- The node that you want to assign the
child
tochild
- The first node in the list of children that you
want to assign to parent
Returns:
child
See also: xmlTreeAddChild
,
xmlTreeAddChildList
,
xmlTreeAddNextSibling
,
xmlTreeAddPrevSibling
,
xmlTreeAddSibling
,
xmlTreeSetRootElement
xmlNode xmlTreeAddContent(xmlNode node, string content)
Parameters:
node
- the xmlNode
you want to add content tocontent
- the text content you want to add.
Returns:
node
See also: xmlTreeSetName
,
xmlTreeSetContent
xmlNode xmlTreeAddNextSibling(xmlNode node, xmlNode sibling)
Parameters:
node
- the xmlNode
that the sibling
is being added
next tosibling
- the xmlNode
that is being added as the next
sibling of node
Returns:
sibling
See also: xmlTreeAddChild
,
xmlTreeAddChildList
,
xmlTreeAddPrevSibling
,
xmlTreeAddSibling
,
xmlTreeSetRootElement
xmlNode xmlTreeAddPrevSibling(xmlNode node, xmlNode sibling)
Parameters:
node
- the xmlNode
that the sibling
is being added
next tosibling
- the xmlNode
that is being added as the previous
sibling of node
Returns:
sibling
See also: xmlTreeAddChild
,
xmlTreeAddChildList
,
xmlTreeAddNextSibling
,
xmlTreeAddSibling
,
xmlTreeSetRootElement
xmlNode xmlTreeAddSibling(xmlNode node, xmlNode sibling)
Parameters:
node
- the xmlNode
that the sibling
is
being added next tosibling
- the xmlNode
that is being added to the
node
's list of siblings.
Returns:
sibling
See also: xmlTreeAddChild
,
xmlTreeAddChildList
,
xmlTreeAddNextSibling
,
xmlTreeAddSibling
,
xmlTreeSetRootElement
void xmlTreeCleanup(xmlDoc doc [, int options])
Parameters:
doc
- the xmlDoc
to remove unlinked orphans fromoptions
- specifying 1
will cause verbose messages
to be printed about what it's cleaning up
int xmlTreeClearNs(xmlNs ns)
Parameters:
ns
- the namespace to clear
Returns:
0
- success<0
- error
See also: xmlTreeSetNsPrefix
,
xmlTreeSetNsURI
xmlNode xmlTreeCopyAttribute(xmlNode target, xmlNode attribute)
Parameters:
target
- the element that will receive the attributeattribute
- the attribute to be copied
Returns:
target
See also: xmlTreeCopyDoc
,
xmlTreeCopyNode
,
xmlTreeCopyNodeList
,
xmlTreeCopyAttribute
,
xmlTreeCopyAttributeList
xmlNode xmlTreeCopyAttributeList(xmlNode target, xmlNode attribute)
Parameters:
target
- the xmlNode
that will receive the attribute listattribute
- the first attribute in the list to be copied
Returns:
target
See also: xmlTreeCopyDoc
,
xmlTreeCopyNode
,
xmlTreeCopyNodeList
,
xmlTreeCopyAttribute
xmlDoc xmlTreeCopyDoc(xmlDoc doc)
Parameters:
doc
- the xmlDoc to copy
Returns:
xmlDoc
See also: xmlTreeCopyNode
,
xmlTreeCopyNodeList
,
xmlTreeCopyAttribute
,
xmlTreeCopyAttributeList
xmlNode xmlTreeCopyNode(xmlDoc targetDoc, xmlNode node [, int recursive])
Parameters:
targetDoc
- the xmlDoc
that the new node/nodes will be
placed into. This is only to help optimize internal string
operations. It's possible to specify no doc by passing in an empty
string (''
). If node
is going in the same document,
it's common to use xmlTreeGetDoc(node)
as this parameter.node
- the xmlNode
to be copiedrecursive
(optional) - If the node
to be
copied is an element (as opposed to a comment, CDATA, etc.), setting
recursive
to 1
will cause all child nodes of the
element to be copied too.
recursive
is 0
by default.
Returns:
node
See also: xmlTreeCopyDoc
,
xmlTreeCopyNodeList
,
xmlTreeCopyAttribute
,
xmlTreeCopyAttributeList
xmlNode xmlTreeCopyNodeList(xmlDoc targetDoc, xmlNode node)
Parameters:
targetDoc
- the xmlDoc
that the new node/nodes will be
placed into. This is only to help optimize internal string
operations. It's possible to specify no doc by passing in an empty
string (''
). If node
is going in the same document,
it's common to use xmlTreeGetDoc(node)
as this parameter.node
- the first xmlNode
of the node list to be copied
Returns:
xmlNode
of the new node list
See also: xmlTreeCopyDoc
,
xmlTreeCopyNode
,
xmlTreeCopyAttribute
,
xmlTreeCopyAttributeList
string xmlTreeDumpNode(xmlNode node [, string options])
Parameters:
node
- the node to dumpoptions
- content options (see below)
Returns:
node
See also: xmlTreeGetName
,
xmlTreeGetAllContent
,
xmlTreeGetChildrenContent
,
xmlTreeGetLine
,
xmlTreeGetType
,
xmlTreeIsBlankNode
,
xmlTreeGetAttributeContent
string xmlTreeGetAllContent(xmlNode node)
Parameters:
node
- the xmlNode
to get content from
Returns:
node
and all children
See also: xmlTreeDumpNode
,
xmlTreeGetName
,
xmlTreeGetContent
,
xmlTreeGetLine
,
xmlTreeGetType
,
xmlTreeIsBlankNode
,
xmlTreeGetAttributeContent
string xmlTreeGetAttributeContent(xmlNode element, string name [, string ns_URI])
Parameters:
element
- the element that contains the attribute you want
the value ofname
- the name of the attribute that you want the value ofns_URI
(optional) - the namespace URI of the attribute
you'd like to retrieve (defaults to any namespace)
Returns:
name
on the element
See also: xmlTreeGetName
,
xmlTreeGetContent
,
xmlTreeGetAllContent
,
xmlTreeGetLine
,
xmlTreeGetType
,
xmlTreeIsBlankNode
xmlNode[] xmlTreeGetAttributes(xmlNode element [, string name [, string ns_URI] ])
Parameters:
element
- the element to get the attribute(s) fromname
(optional) - the name of the attribute to
get. If not specified, all attributes are returned.ns_URI
(optional) - limit result to the attributes in
the namespace ns_URI
. If not specified, namespace is ignored.
Returns:
xmlNode
(s) of the attribute(s) requested
See also: xmlTreeGetFirstAttribute
xmlNode[] xmlTreeGetChildren(xmlNode parent [, string name [, string ns_URI]])
Parameters:
element
- the element to get the children fromname
(optional) - only get children with the
specified local name. If not specified, all children are returned.ns_URI
(optional) - limit result to the children in
the namespace ns_URI
. If not specified, namespace is ignored.
Returns:
xmlNode
children of the element parent
See also: xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetPrevious
,
xmlTreeGetParent
,
xmlTreeGetChildrenContent
string[] xmlTreeGetChildrenContent(xmlNode parent, string name [, string ns_URI])
Parameters:
parent
- the element to get the children's content fromname
- the local name of the child elements to get content fromns_URI
(optional) - limit result to the children in
the namespace ns_URI
. If not specified, namespace is ignored.
Returns:
See also: xmlTreeDumpNode
,
xmlTreeGetAllContent
,
xmlTreeGetContent
xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetPrevious
,
xmlTreeGetParent
string xmlTreeGetContent(xmlNode node [, string options])
Parameters:
node
- the node to get the content ofoptions
- content options (see below)
Returns:
node
See also: xmlTreeGetName
,
xmlTreeGetAllContent
,
xmlTreeGetChildrenContent
,
xmlTreeGetLine
,
xmlTreeGetType
,
xmlTreeIsBlankNode
,
xmlTreeGetAttributeContent
xmlDoc xmlTreeGetDoc(xmlNode node)
Parameters:
node
- the xmlNode
you want the xmlDoc
of
Returns:
xmlDoc
of node
See also: xmlTreeGetRootElement
,
xmlTreeGetChildren
,
xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetPrevious
,
xmlTreeGetParent
string xmlTreeGetEncoding(xmlTree tree)
Parameters:
doc
- the xmlDoc
object
Returns:
See also: xmlTreeGetVersion
string xmlTreeGetEntityType(xmlNode entity)
Parameters:
entity
- the XML_ENTITY_DECL
you want to get the
type from
Returns:
entity
See also: xmlTreeGetName
,
xmlTreeGetContent
string xmlTreeGetExternalID(xmlNode node)
Parameters:
node
- the XML_DTD_NODE
or XML_ENTITY_DECL
you want to get the External ID from
Returns:
node
See also: xmlTreeGetSystemID
xmlNode xmlTreeGetExternalSubset(xmlDoc doc)
Parameters:
doc
- the doc you want to get the external DTD from
Returns:
xmlNode
for the external DTD subset of doc
See also: xmlTreeGetInternalSubset
xmlNode xmlTreeGetFirstAttribute(xmlNode element)
Parameters:
element
- the element you want to get the first attribute of
Returns:
element
See also: xmlTreeGetChildren
,
xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetPrevious
,
xmlTreeGetParent
,
xmlTreeGetAttributes
xmlNode xmlTreeGetFirstChild(xmlNode node)
Parameters:
node
- the node to get the first child of
Returns:
node
See also: xmlTreeGetDoc
,
xmlTreeGetRootElement
,
xmlTreeGetChildren
,
xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetPrevious
,
xmlTreeGetParent
xmlNode xmlTreeGetInternalSubset(xmlDoc doc)
Parameters:
doc
- the doc you want to get the internal DTD from
Returns:
xmlNode
for the internal DTD subset of doc
See also: xmlTreeGetExternalSubset
int xmlTreeGetLine(xmlNode node)
Parameters:
node
- the xmlNode
you want the line number of
Returns:
node
occurs on
See also: xmlTreeGetName
,
xmlTreeGetContent
,
xmlTreeGetAllContent
,
xmlTreeGetType
,
xmlTreeIsBlankNode
,
xmlTreeGetAttributeContent
string xmlTreeGetName(xmlNode node)
Parameters:
node
- the xmlNode
you want the name of
Returns:
node
See also: xmlTreeGetName
,
xmlTreeGetContent
,
xmlTreeGetAllContent
,
xmlTreeGetLine
,
xmlTreeGetType
,
xmlTreeIsBlankNode
,
xmlTreeGetAttributeContent
xmlNode xmlTreeGetNext(xmlNode item) xmlNs xmlTreeGetNext(xmlNs item)
Parameters:
item
- the xmlNode/xmlNs
you want the next sibling of
Returns:
item
See also: xmlTreeGetChildren
,
xmlTreeGetFirstChild
,
xmlTreeGetPrevious
,
xmlTreeGetParent
xmlNs xmlTreeGetNs(xmlNode node)
Parameters:
node
- the element/attribute you want to get the namespace of
Returns:
node
See also: xmlTreeGetNsDef
xmlNs[] xmlTreeGetNsDef(xmlNode element)
Parameters:
element
- the element that you want to get the namespace
declarations from
Returns:
element
See also: xmlTreeGetNs
string xmlTreeGetNsPrefix(xmlNs ns)
Parameters:
ns
- the namespace to get the prefix of
Returns:
ns
See also: xmlTreeGetNsURI
,
xmlTreeLookupNsURI
,
xmlTreeLookupNsPrefix
string xmlTreeGetNsURI(xmlNs ns)
Parameters:
ns
- the namespace to get the URI from
Returns:
ns
See also: xmlTreeGetNsPrefix
,
xmlTreeLookupNsURI
,
xmlTreeLookupNsPrefix
xmlNode xmlTreeGetParent(xmlNode node)
Parameters:
node
- the xmlNode
to get the parent of
Returns:
node
See also: xmlTreeGetChildren
,
xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetPrevious
xmlNode xmlTreeGetPrevious(xmlNode node)
Parameters:
node
- the node to get the previous sibling of
Returns:
node
See also: xmlTreeGetChildren
,
xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetParent
xmlNode xmlTreeGetRootElement(xmlDoc doc)
Parameters:
doc
- the document you want to get the root element from
Returns:
doc
See also: xmlTreeGetDoc
,
xmlTreeGetChildren
,
xmlTreeGetFirstChild
,
xmlTreeGetNext
,
xmlTreeGetPrevious
,
xmlTreeGetParent
string xmlTreeGetSystemID(xmlNode node)
Parameters:
node
- the XML_DTD_NODE
or XML_ENTITY_DECL
you want to get the System ID from
Returns:
node
See also: xmlTreeGetSystemID
string xmlTreeGetType(xmlNode node)
Parameters:
node
- the xmlNode
to get the type of
Returns:
See also: xmlTreeGetName
,
xmlTreeGetContent
,
xmlTreeGetAllContent
,
xmlTreeGetLine
,
xmlTreeIsBlankNode
,
xmlTreeGetAttributeContent
string xmlTreeGetVersion(xmlDoc doc)
Parameters:
doc
- the xmlDoc
to get the XML version from
Returns:
See also: xmlTreeGetEncoding
int xmlTreeIsBlankNode(xmlNode node)
Parameters:
node
- the xmlNode
in question
Returns:
0
- the node
is not a blank text node1
- the node
is a blank text node
See also: xmlTreeGetName
,
xmlTreeGetContent
,
xmlTreeGetAllContent
,
xmlTreeGetLine
,
xmlTreeGetType
,
xmlTreeGetAttributeContent
xmlNs xmlTreeLookupNsPrefix(xmlNode node, string prefix)
Parameters:
node
- the xmlNode
to lookup the namespace fromprefix
- the prefix of the namespace to lookup
Returns:
prefix
See also: xmlTreeGetNsURI
,
xmlTreeGetNsPrefix
,
xmlTreeLookupNsURI
xmlNs xmlTreeLookupNsURI(xmlNode node, string URI)
Parameters:
node
- the node you want to look up the namespace fromURI
- the namespace URI you want to look up
Returns:
xmlNs
for the URI
namespace.
See also: xmlTreeGetNsURI
,
xmlTreeGetNsPrefix
,
xmlTreeLookupNsPrefix
xmlNode xmlTreeNewAttribute(xmlNode parent, string name, [, string content[, xmlNs ns]])
Parameters:
parent
- the xmlNode
to create the attribute onname
- the name of the new attributecontent
(optional) - the content for the attributens
(optional) - the namespace to use for the attribute
Returns:
xmlNode
for the new attribute
See also: xmlTreeNewElement
,
xmlTreeNewPI
,
xmlTreeNewText
,
xmlTreeNewCDATA
,
xmlTreeNewComment
,
xmlTreeNewNs
xmlNode xmlTreeNewCDATA(xmlNode parent, string content)
Parameters:
parent
- the parent of the new CDATA section (can specify
none with ''
)content
- the content for the new CDATA section
Returns:
xmlNode
for the new CDATA section
See also: xmlTreeNewElement
,
xmlTreeNewPI
,
xmlTreeNewText
,
xmlTreeNewComment
xmlNode xmlTreeNewComment(xmlNode parent, string content)
Parameters:
parent
- the parent of the new comment node (can specify
none with ''
)content
- the content of the new comment
Returns:
xmlNode
of the new comment
See also: xmlTreeNewElement
,
xmlTreeNewPI
,
xmlTreeNewText
,
xmlTreeNewCDATA
xmlDoc xmlTreeNewDoc(string version)
Parameters:
version
- the XML version for the doc (usually 1.0
or 1.1
)
Returns:
xmlDoc
See also: xmlTreeNewDocFromFile
,
xmlTreeNewDocFromString
,
xmlTreePrintDoc
,
xmlTreeSaveDoc
xmlDoc xmlTreeNewDocFromFile(string filename [, string encoding] [, string options])
Parameters:
filename
- the filename of the XML file to readencoding
optional - encoding to use for the file.
If none given, the parser will attempt to discover on its own.options
optional - a comma-separated list of parsing
options (see below)
Returns:
xmlDoc
of the file
See also: xmlTreeNewDoc
,
xmlTreeNewDocFromString
,
xmlTreePrintDoc
,
xmlTreeSaveDoc
xmlDoc xmlTreeNewDocFromString(string data [, string encoding] [, string options])
Parameters:
data
- the XML data to parseencoding
optional - encoding to use for the file.
If none given, the parser will attempt to discover on its own.options
optional - a comma-separated list of
parsing options (see below)
Returns:
xmlDoc
from the text data
See also: xmlTreeNewDoc
,
xmlTreeNewDocFromFile
,
xmlTreePrintDoc
,
xmlTreeSaveDoc
xmlNode xmlTreeNewElement(xmlNode parent, string name, [, string content[, xmlNs ns]])
Parameters:
parent
- the xmlNode
to create the element onname
- the name of the new elementcontent
(optional) - the text content for the elementns
(optional) - the namespace to use for the element
Returns:
xmlNode
for the new element
See also: xmlTreeNewPI
,
xmlTreeNewText
,
xmlTreeNewCDATA
,
xmlTreeNewComment
xmlNs xmlTreeNewNs(xmlNode element, string prefix, string URI)
Parameters:
parent
- the element that will be parent of this xmlNsprefix
- the prefix for the new namespace. ''
may
be used to indicate no prefix.URI
- the URI for the new namespace. ''
may be
used for the default, empty namespace.
Returns:
xmlNs
of the new namespace
See also: xmlTreeNewElement
,
xmlTreeNewPI
,
xmlTreeNewText
,
xmlTreeNewCDATA
,
xmlTreeNewComment
,
xmlTreeNewAttribute
xmlNode xmlTreeNewPI(xmlNode parent, string target, string content)
Parameters:
parent
- the xmlNode
that will be the parent of
the new processing instructiontarget
- the application to which the processing
instruction is directedcontent
- the content for the new processing instruction
Returns:
xmlNode
for the new processing instruction
See also: xmlTreeNewElement
,
xmlTreeNewText
,
xmlTreeNewCDATA
,
xmlTreeNewComment
xmlNode xmlTreeNewText(xmlNode parent, string content)
Parameters:
parent
- the xmlNode
that will be the parent of
the new text nodecontent
- the text content of the new text node
Returns:
xmlNode
for the new text node
See also: xmlTreeNewElement
,
xmlTreeNewPI
,
xmlTreeNewCDATA
,
xmlTreeNewComment
xmlXPath xmlTreeNewXPath(xmlDoc doc)
Parameters:
doc
- the xmlDoc
to create the XPath for
Returns:
xmlXPath
engine
See also: xmlTreeXPathExecute
,
xmlTreeXPathRegisterNs
xmlTreeXPathSetContext
string xmlTreePrintDoc(xmlDoc doc [, string encoding] [, string options])
Parameters:
doc
- the xmlDoc
to be printedencoding
- the character encoding to use when serializing
the document. Defaults to UTF-8
.options
- the options to use when saving (see below)
Returns:
doc
See also: xmlTreeSaveDoc
string[] xmlTreeQuickXPath(string xmlRaw, string xpathQuery [, string[] xmlns)
Parameters:
xmlRaw
- the plain text of the XML document you want to
extract information fromxpathQuery
- the XPath expression that identifies the
nodes you want to extract the data fromxmlns
(optional) - an array of prefix=URI
namespaces to use in the XPath query
Returns:
xmlRaw
that match xpathQuery
See also: xmlTreeNewXPath
,
xmlTreeXPathExecute
,
xmlTreeXPathRegisterNs
int xmlTreeSaveDoc(xmlDoc doc, string filename, [, string encoding] [, string options])
Parameters:
doc
- the xmlDoc
to be saved to a file.filename
- the file to save doc
toencoding
(optional) - the character encoding to
use. Default is UTF-8
.options
(optional) - the options to use when saving
(see below)
Returns:
-1
in the case of error.
See also: xmlTreePrintDoc
xmlNode xmlTreeSetContent(xmlNode node, string content)
Parameters:
node
- the xmlNode
to set the content forcontent
- the text to set as the content of node
Returns:
node
See also: xmlTreeSetName
,
xmlTreeAddContent
xmlNode xmlTreeSetName(xmlNode node, string name)
Parameters:
node
- the xmlNode
you want to set the name ofname
- the name you want to use for node
Returns:
node
See also: xmlTreeSetContent
,
xmlTreeAddContent
xmlNode xmlTreeSetNs(xmlNode node, xmlNs ns)
Parameters:
node
- the xmlNode
to set the namespace forns
- the namespace to use for node
Returns:
node
See also: xmlTreeGetNs
,
xmlTreeNewNs
string xmlTreeSetNsPrefix(xmlNs ns, string prefix)
Parameters:
ns
- the xmlNs
whose prefix you want to changeprefix
- the new namespace prefix to use for ns
Returns:
ns
(if any)
See also: xmlTreeSetNsURI
,
xmlTreeClearNs
string xmlTreeSetNsURI(xmlNs ns, string URI)
Parameters:
ns
- the xmlNs
whose prefix you want to changeURI
- the new namespace URI to use for ns
Returns:
ns
(if any)
See also: xmlTreeClearNs
,
xmlTreeSetNsURI
xmlNode xmlTreeSetRootElement(xmlDoc doc, xmlNode element)
Parameters:
doc
- the xmlDoc
to set the root element ofelement
- the element to set as the root of doc
Returns:
See also: xmlTreeAddChild
,
xmlTreeAddChildList
,
xmlTreeAddNextSibling
,
xmlTreeAddPrevSibling
,
xmlTreeAddSibling
xmlNode xmlTreeUnlinkNode(xmlNode node)
Parameters:
node
- the xmlNode
you want to unlink
Returns:
node
See also: xmlTreeAddChild
,
xmlTreeAddChildList
,
xmlTreeAddNextSibling
,
xmlTreeAddPrevSibling
,
xmlTreeAddSibling
,
xmlTreeSetRootElement
xmlNode xmlTreeXPathExecute(xmlXPath xpath, string expression)
Parameters:
xpath
- an xmlXPath
objectexpression
- the XPath expression to execute
Returns:
xmlNode
's that match the XPath expression
See also: xmlTreeNewXPath
,
xmlTreeXPathRegisterNs
xmlTreeXPathSetContext
int xmlTreeXPathRegisterNs(xmlXPath xpath, string prefix, string URI)
Parameters:
xpath
- the xmlXPath
to register a namespace forprefix
- the prefix for the namespaceURI
- the URI for the namespace
Returns:
0
- success-1
- error
See also: xmlTreeNewXPath
,
xmlTreeXPathExecute
xmlNode xmlTreeXPathSetContext(xmlXPath xpath, xmlNode node)
Parameters:
xpath
- the xmlXPath
to set a context fornode
- the new starting context for xpath
Returns:
See also: xmlTreeNewXPath
,
xmlTreeXPathExecute
int xmlWriterEndAttribute(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterStartAttribute
,
xmlWriterWrite
,
xmlWriterWriteAttribute
int xmlWriterEndCDATA(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterStartCDATA
,
xmlWriterWrite
,
xmlWriterWriteCDATA
int xmlWriterEndComment(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterStartComment
,
xmlWriterWrite
,
xmlWriterWriteComment
int xmlWriterEndDocument(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterGetContent
int xmlWriterEndElement(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterStartElement
,
xmlWriterWrite
,
xmlWriterWriteElement
int xmlWriterEndPI(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterStartPI
,
xmlWriterWrite
,
xmlWriterWritePI
string xmlWriterGetContent(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
writer
See also: xmlWriterEndDocument
xmlWriterNewToFile(string filename)
Parameters:
filename
- the file to write the XML document to
Returns:
xmlWriter
object
See also: xmlWriterNewToString
,
xmlWriterSetIndent
,
xmlWriterStartDocument
xmlWriter xmlWriterNewToString(string options)
Parameters:
options
- currently no options, use the empty string ''
Returns:
xmlWriter
object
See also: xmlWriterNewToFile
,
xmlWriterSetIndent
,
xmlWriterStartDocument
int xmlWriterSetIndent(xmlWriter writer, int indent [, string indentString])
Parameters:
writer
- the xmlWriter
indent
0
(default) - do not indent1
- indent output
indentString
(optional) - What string to use for
indenting. The default is a single space.
Returns:
0
- success-1
- error
See also: xmlWriterNewToFile
,
xmlWriterNewToString
,
xmlWriterStartDocument
int xmlWriterStartAttribute(xmlWriter writer, string name [, string prefix [, string URI]])
Parameters:
writer
- the xmlWriter
name
- the name of the attributeprefix
(optional) - the XML namespace prefix for
the attributeURI
(optional) - the URI for the namespace
Returns:
See also: xmlWriterWrite
,
xmlWriterEndAttribute
,
xmlWriterWriteAttribute
int xmlWriterStartCDATA(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterWrite
,
xmlWriterEndCDATA
,
xmlWriterWriteCDATA
int xmlWriterStartComment(xmlWriter writer)
Parameters:
writer
- the xmlWriter
Returns:
See also: xmlWriterWrite
,
xmlWriterEndComment
,
xmlWriterWriteComment
int xmlWriterStartDocument(xmlWriter writer, string version [, string encoding [, string standalone]])
Parameters:
writer
- the xmlWriter
version
- the XML version to use (usually 1.0
)encoding
(optional) - what character encoding to use
for the document. UTF-8 is used by default.standalone
(optional) - pass yes
to make this
a standalone XML document. See
http://www.w3.org/TR/REC-xml/#sec-rmd
for more information.
The value no
may be passed to make the document not standalone
(default).
Returns:
See also: xmlWriterNewToFile
,
xmlWriterNewToString
,
xmlWriterSetIndent
int xmlWriterStartElement(xmlWriter writer, string name [, string prefix [, string URI]] )
Parameters:
writer
- the xmlWriter
name
- the name of the new elementprefix
(optional) - the namespace prefix to use for
this element. Default is no prefix.URI
(optional) - declare the prefix
namespace
to be URI
Returns:
See also: xmlWriterWrite
,
xmlWriterEndElement
,
xmlWriterWriteElement
int xmlWriterStartPI(xmlWriter writer, string target)
Parameters:
writer
- the xmlWriter
target
- the application to which the processing
instruction is directed
Returns:
See also: xmlWriterWrite
,
xmlWriterEndPI
,
xmlWriterWritePI
int xmlWriterWrite(xmlWriter writer, string content)
Parameters:
writer
- the xmlWriter
content
- the content you want to write
Returns:
See also: xmlWriterWriteRaw
int xmlWriterWriteAttribute(xmlWriter writer, string name, string content [, string prefix [, string URI]])
Parameters:
writer
- the xmlWriter
name
- the name of the attributecontent
- the content of the attributeprefix
(optional) - the namespace prefix of the
attributeURI
(optional) - the namespace URI for prefix
Returns:
See also: xmlWriterStartAttribute
,
xmlWriterWrite
,
xmlWriterEndAttribute
int xmlWriterWriteCDATA(xmlWriter writer, string content)
Parameters:
writer
- the xmlWriter
content
- the content of the CDATA section
Returns:
See also: xmlWriterStartCDATA
,
xmlWriterWrite
,
xmlWriterEndCDATA
int xmlWriterWriteElement(xmlWriter writer, string name, string content [, string prefix [, string URI]])
Parameters:
writer
- the xmlWriter
name
- the name of the elementcontent
- the content of the elementprefix
(optional) - the namespace prefix of the
elementURI
(optional) - the namespace URI for prefix
Returns:
int xmlWriterWritePI(xmlWriter writer, string target, string content)
Parameters:
writer
- the xmlWriter
target
- the application to which the processing
instruction is directedcontent
- the contents of the processing instruction
Returns:
See also: xmlWriterStartPI
,
xmlWriterWrite
,
xmlWriterEndPI
int xmlWriterWriteRaw(xmlWriter writer, string content)
Parameters:
writer
- the xmlWriter
content
- the raw content to write to writer
Returns:
See also: xmlWriterWrite
xmlDoc xsltApplyStylesheet(xmlDoc doc, xsltStylesheet style [, string[] names, string[] values] )
Parameters:
doc
- the XML document to you want to transformstyle
- the XSL stylesheet that will be used to transform
the docnames
(optional) - an array of parameter names to
pass in to the transformationvalues
(optional) - an array of parameter values
that correspond to the names
Returns:
xmlDoc
See also: xsltParseStylesheetDoc
,
xsltParseStylesheetFile
,
xsltParseStylesheetString
xsltStylesheet xsltParseStylesheetDoc(xmlDoc doc)
Parameters:
doc
- the XML document to build the stylesheet from
Returns:
xsltStylesheet
See also: xsltApplyStylesheet
,
xsltParseStylesheetFile
,
xsltParseStylesheetString
xsltStylesheet xsltParseStylesheetFile(string filename)
Parameters:
doc
- the XSL file to read
Returns:
xsltStylesheet
See also: xsltApplyStylesheet
,
xsltParseStylesheetDoc
,
xsltParseStylesheetString
xsltStylesheet xsltParseStylesheetString(string xsl)
Parameters:
doc
- the XSL data to parse
Returns:
xsltStylesheet
See also: xsltApplyStylesheet
,
xsltParseStylesheetDoc
,
xsltParseStylesheetFile