Try OpenEdge Now
skip to main content
Programming Interfaces
Data Management : Database Access : The CONTAINS operator : Using word-break tables : Understanding the syntax of word-break tables
 
Understanding the syntax of word-break tables
Word delimiter attributes form the heart of word break tables, and you specify them using the following syntax:

Syntax

[ #define symbolic-name symbol-value]...

[ Version = 9
   Codepage = codepage-name
   wordrules-name = wordrules-name
   type = table-type
]

word_attr =
{
  {char-literal|hex-value |decimal-value } , word-delimiter-attribute
      [ ,{char-literal|hex-value | decimal-value }
           , word-delimiter-attribute ]...};
symbolic-name
The name of a symbol. For example: DOLLAR-SIGN
symbol-value
The value of the symbol. For example: "$'
Note: Although some versions of ABL let you compile word-break tables that omit all items within the second pair of square brackets, Progress Software Corporation (PSC) recommends that you always include these items. If the source-code version of a compiled word-break table lacks these items, and the associated database is not so large as to make this unfeasible, PSC recommends that you add these items to the table, recompile the table, reassociate the table with the database, and rebuild the indexes.
codepage-name
The name, not surrounded by quotes, of the code page the word-break table is associated with. The maximum length is 20 characters. For example: UTF–8
wordrules-name
The name, not surrounded by quotes, of the compiled word-break table. The maximum length is 20 characters. For example: utf8sample
table-type
The number 2.
Note: Some earlier versions of Progress allow a table type of 1. Although this is still supported, Progress Software Corporation (PSC) recommends, if feasible, that you change the table type to 2, recompile the word-break table, reassociate it with the database, and rebuild the indexes.
char-literal
A character within single quotes or a symbolicname, which represents a character in the code page. For example: '#'
hex-literal
A hexadecimal value or a symbolicname, which represents a character in the code page. For example: 0xAC
decimal-literal
A decimal value or a symbolicname, which represents a character in the code page. For example: 39
word-delimiter-attribute
In what context the character is a word delimiter. You can use one of the following:
*LETTER
*DIGIT
*USE_IT
*BEFORE_LETTER
*BEFORE_DIGIT
*BEFORE_LET_DIG
*IGNORE
*TERMINATOR