This appendix describes the structure of the result tables used to store the output generated by the procedures in the CTX_QUERY
, CTX_DOC
, and CTX_THES
packages.
The following topics are discussed in this appendix:
For the CTX_QUERY
procedures that return results, tables for storing the results must be created before the procedure is called. The tables can be named anything, but must include columns with specific names and data types.
This section describes the following types of result tables, and their required columns:
Table A-1 describes the structure of the table to which CTX_QUERY.EXPLAIN writes its results.
Table A-1 EXPLAIN Result Table
Column Name | Datatype | Description |
---|---|---|
EXPLAIN_ID |
VARCHAR2(30) |
The value of the explain_id argument specified in the FEEDBACK call. |
ID |
NUMBER |
A number assigned to each node in the query execution tree. The root operation node has ID =1. The nodes are numbered in a top-down, left-first manner as they appear in the parse tree. |
PARENT_ID |
NUMBER |
The ID of the execution step that operates on the output of the ID step. Graphically, this is the parent node in the query execution tree. The root operation node (ID =1) has PARENT_ID = 0. |
OPERATION |
VARCHAR2(30) |
Name of the internal operation performed. Refer to Table A-2 for possible values. |
OPTIONS |
VARCHAR2(30) |
Characters that describe a variation on the operation described in the OPERATION column. When an OPERATION has more than one OPTIONS associated with it, OPTIONS values are concatenated in the order of processing. See Table A-3 for possible values. |
OBJECT_NAME |
VARCHAR2(80) |
Section name, wildcard term, weight, or threshold value or term to lookup in the index. |
POSITION |
NUMBER |
The order of processing for nodes that all have the same PARENT_ID.The positions are numbered in ascending order starting at 1. |
CARDINALITY |
NUMBER |
Reserved for future use. You should create this column for forward compatibility. |
Table A-2 shows the possible values for the OPERATION
column of the EXPLAIN
table.
Table A-2 EXPLAIN Table OPERATION Column
Operation Value | Query Operator | Equivalent Symbol |
---|---|---|
ABOUT |
ABOUT |
(none) |
ACCUMULATE |
ACCUM |
, |
AND |
AND |
& |
COMPOSITE |
(none) | (none) |
EQUIVALENCE |
EQUIV |
= |
MINUS |
MINUS |
- |
NEAR |
NEAR |
; |
NOT |
NOT |
~ |
NO_HITS |
(no hits will result from this query) | |
OR |
OR |
| |
PHRASE |
(a phrase term) | |
SECTION |
(section) | |
THRESHOLD |
> |
> |
WEIGHT |
* |
* |
WITHIN |
within |
(none) |
WORD |
(a single term) |
Table A-3 list the possible values for the OPTIONS
column of the EXPLAIN
table.
Table A-4 describes the table to which CTX_QUERY.HFEEDBACK writes its results.
Table A-4 HFEEDBACK Results Table
Column Name | Datatype | Description |
---|---|---|
FEEDBACK_ID |
VARCHAR2(30) |
The value of the feedback_id argument specified in the HFEEDBACK call. |
ID |
NUMBER |
A number assigned to each node in the query execution tree. The root operation node has ID =1. The nodes are numbered in a top-down, left-first manner as they appear in the parse tree. |
PARENT_ID |
NUMBER |
The ID of the execution step that operates on the output of the ID step. Graphically, this is the parent node in the query execution tree. The root operation node (ID =1) has PARENT_ID = 0. |
OPERATION |
VARCHAR2(30) |
Name of the internal operation performed. Refer to Table A-5 for possible values. |
OPTIONS |
VARCHAR2(30) |
Characters that describe a variation on the operation described in the OPERATION column. When an OPERATION has more than one OPTIONS associated with it, OPTIONS values are concatenated in the order of processing. See Table A-6 for possible values. |
OBJECT_NAME |
VARCHAR2(80) |
Section name, wildcard term, weight, threshold value or term to lookup in the index. |
POSITION |
NUMBER |
The order of processing for nodes that all have the same PARENT_ID.The positions are numbered in ascending order starting at 1. |
BT_FEEDBACK |
CTX_FEEDBACK_TYPE | Stores broader feedback terms. See Table A-7. |
PT_FEEDBACK |
CTX_FEEDBACK_TYPE | Stores related feedback terms. See Table A-7. |
NT_FEEDBACK |
CTX_FEEDBACK_TYPE | Stores narrower feedback terms. See Table A-7. |
Table A-5 shows the possible values for the OPERATION
column of the HFEEDBACK
table.
Table A-5 HFEEDBACK Results Table OPERATION Column
Operation Value | Query Operator | Equivalent Symbol |
---|---|---|
ABOUT |
ABOUT |
(none) |
ACCUMULATE |
ACCUM |
, |
AND |
AND |
& |
EQUIVALENCE |
EQUIV |
= |
MINUS |
MINUS |
- |
NEAR |
NEAR |
; |
NOT |
NOT |
~ |
OR |
OR |
| |
SECTION |
(section) | |
TEXT |
word or phrase of a text query | |
THEME |
word or phrase of an ABOUT query | |
THRESHOLD |
> |
> |
WEIGHT |
* |
* |
WITHIN |
within |
(none) |
The CTX_FEEDBACK_TYPE
is a nested table of objects. This datatype is pre-defined in the CTXSYS schema. Use this type to define the columns BT_FEEDBACK
, RT_FEEDBACK
, and NT_FEEDBACK
.
The nested table CTX_FEEDBACK_TYPE
holds objects of type CTX_FEEDBACK_ITEM_TYPE
, which is also pre-defined in the CTXSYS schema. This object is defined with three members and one method as follows:
Table A-7 CTX_FEEDBACK_ITEM_TYPE
CTX_FEEDBACK_ITEM_TYPE Members and Methods | Type | Description |
---|---|---|
text | NUMBER | Feedback term. |
cardinality | NUMBER | (reserved for future use.) |
score | NUMBER | (reserved for future use.) |
The SQL code that defines these objects is as follows:
CREATE OR REPLACE TYPE ctx_feedback_type AS TABLE OF ctx_feedback_item_type; CREATE OR REPLACE TYPE ctx_feedback_item_type AS OBJECT (text VARCHAR2(80), cardinality NUMBER, score NUMBER, MAP MEMBER FUNCTION rank RETURN REAL, PRAGMA RESTRICT_REFERENCES (rank, RNDS, WNDS, RNPS, WNPS) ); CREATE OR REPLACE TYPE BODY ctx_feedback_item_type AS MAP MEMBER FUNCTION rank RETURN REAL IS BEGIN RETURN score; END rank; END;
See Also: For an example of how to select from the HFEEDBACK table and its nested tables, refer to CTX_QUERY.HFEEDBACK in Chapter 10, "CTX_QUERY Package". |
The CTX_DOC
procedures return results stored in a table. Before calling a procedure, you must create the table. The tables can be named anything, but must include columns with specific names and data types.
This section describes the following result tables and their required columns:
A filter table stores one row for each filtered document returned by CTX_DOC.FILTER. Filtered documents can be plain text or HTML.
When you call CTX_DOC.FILTER
for a document, the document is processed through the filter defined for the text column and the results are stored in the filter table you specify.
Filter tables can be named anything, but must include the following columns, with names and datatypes as specified:
Column Name | Type | Description |
---|---|---|
QUERY_ID |
NUMBER |
The identifier for the results generated by a particular call to CTX_DOC.FILTER (only populated when table is used to store results from multiple FILTER calls) |
DOCUMENT |
CLOB |
Text of the document, stored in plain text or HTML. |
A Gist table stores one row for each Gist/theme summary generated by CTX_DOC.GIST
.
Gist tables can be named anything, but must include the following columns, with names and data types as specified:
Column Name | Type | Description |
---|---|---|
QUERY_ID |
NUMBER |
Query ID. |
POV |
VARCHAR2(80) |
Document theme. Case depends of how themes were used in document or represented in the knowledge base.
POV has the value of GENERIC for the document GIST. |
GIST |
CLOB |
Text of Gist or theme summary, stored as plain text |
A highlight table stores offset and length information for highlighted terms in a document. This information is generated by CTX_DOC.HIGHLIGHT. Highlighted terms can be the words or phrases that satisfy a word or an ABOUT
query.
If a document is formatted, the text is filtered into either plain text or HTML and the offset information is generated for the filtered text. The offset information can be used to highlight query terms for the same document filtered with CTX_DOC.FILTER.
Highlight tables can be named anything, but must include the following columns, with names and datatypes as specified:
Column Name | Type | Description |
---|---|---|
QUERY_ID |
NUMBER |
The identifier for the results generated by a particular call to CTX_DOC.HIGHLIGHT (only populated when table is used to store results from multiple HIGHLIGHT calls) |
OFFSET |
NUMBER |
The position of the highlight in the document, relative to the start of document which has a position of 1. |
LENGTH |
NUMBER |
The length of the highlight. |
A markup table stores documents in plain text or HTML format with the query terms in the documents highlighted by markup tags. This information is generated when you call CTX_DOC.MARKUP.
Markup tables can be named anything, but must include the following columns, with names and datatypes as specified:
Column Name | Type | Description |
---|---|---|
QUERY_ID |
NUMBER |
The identifier for the results generated by a particular call to CTX_DOC.MARKUP (only populated when table is used to store results from multiple MARKUP calls) |
DOCUMENT |
CLOB |
Marked-up text of the document, stored in plain text or HTML format |
A theme table stores one row for each theme generated by CTX_DOC.THEMES. The value stored in the THEME
column is either a single theme phrase or a string of parent themes, separated by colons.
Theme tables can be named anything, but must include the following columns, with names and data types as specified:
A token table stores the text tokens for a document as output by the CTX_DOC.TOKENS
procedure. Token tables can be named anything, but must include the following columns, with names and data types as specified.
Column Name | Type | Description |
---|---|---|
QUERY_ID |
NUMBER |
The identifier for the results generated by a particular call to CTX_DOC.HIGHLIGHT (only populated when table is used to store results from multiple HIGHLIGHT calls) |
TOKEN |
VARCHAR2(64) |
The token string in the text. |
OFFSET |
NUMBER |
The position of the token in the document, relative to the start of document which has a position of 1. |
LENGTH |
NUMBER |
The character length of the token. |
The CTX_THES
expansion functions such as BT
, NT
, and SYN
can return the expansions in a table of type EXP_TAB
. You can specify the name of your table with the restab argument.
The EXP_TAB
table type is a table of rows of type EXP_REC
.
The EXP_REC
and EXP_TAB
types are defined as follows in the CTXSYS
schema:
type exp_rec is record ( xrel varchar2(12), xlevel number, xphrase varchar2(256) ); type exp_tab is table of exp_rec index by binary_integer;
When you call a thesaurus expansion function and specify restab, the system returns the expansion as an EXP_TAB
table. Each row in this table is of type EXP_REC
and represents a word or phrase in the expansion. Table A-14 describes the fields in EXP_REC
:
Table A-14 EXP_TAB Table Type (EXP_REC)
EXP_REC Field | Description |
---|---|
xrel |
The xrel field contains the relation of the term to the input term (for example, 'SYN', 'PT', 'RT', and so on). The xrel value is PHRASE when the input term appears in the expansion. For translations, the xrel value is the language. |
xlevel |
The xlevel field is the level of the relation. This is used mainly when xrel is a hierarchical relation (BT*/NT*).
The The The |
xphrase |
The xphrase is the related term. This includes a qualifier in parentheses, if one exists for the related term. Compound terms are not de-compounded. |