<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE language SYSTEM "language.dtd">
<!-- Oracle10g SQL and PL/SQL syntax - ANSI SQL 2003 superset -->
<!-- This file is maintained by Anders Lund <anders@alweb.dk> since 2005-11-06 -->
<!-- kate: space-indent on; indent-width 2; replace-tabs on; -->
<language name="SQL" version="1.17" kateversion="2.4" section="Database" extensions="*.sql;*.SQL;*.ddl;*.DDL" mimetype="text/x-sql" casesensitive="0" author="Yury Lebedev (yurylebedev@mail.ru)" license="LGPL">
  <highlighting>
    <list name="keywords">
      <item> ACCESS </item>
      <item> ACCOUNT </item>
      <item> ADD </item>
      <item> ADMIN </item>
      <item> ADMINISTER </item>
      <item> ADVISE </item>
      <item> AFTER </item>
      <item> AGENT </item>
      <item> ALL </item>
      <item> ALLOCATE </item>
      <item> ALL_ROWS </item>
      <item> ALTER </item>
      <item> ANALYZE </item>
      <item> ANCILLARY </item>
      <item> AND </item>
      <item> ANY </item>
      <item> ARCHIVE </item>
      <item> ARCHIVELOG </item>
      <item> AS </item>
      <item> ASC </item>
      <item> ASSERTION </item>
      <item> ASSOCIATE </item>
      <item> AT </item>
      <item> ATTRIBUTE </item>
      <item> ATTRIBUTES </item>
      <item> AUDIT </item>
      <item> AUTHENTICATED </item>
      <item> AUTHID </item>
      <item> AUTHORIZATION </item>
      <item> AUTOALLOCATE </item>
      <item> AUTOEXTEND </item>
      <item> AUTOMATIC </item>
      <item> BACKUP </item>
      <item> BECOME </item>
      <item> BEFORE </item>
      <item> BEGIN </item>
      <item> BEHALF </item>
      <item> BETWEEN </item>
      <item> BINDING </item>
      <item> BITMAP </item>
      <item> BLOCK </item>
      <item> BLOCK_RANGE </item>
      <item> BODY </item>
      <item> BOTH </item>
      <item> BOUND </item>
      <item> BREAK </item>
      <item> BROADCAST </item>
      <item> BTITLE </item>
      <item> BUFFER_POOL </item>
      <item> BUILD </item>
      <item> BULK </item>
      <item> BY </item>
      <item> CACHE </item>
      <item> CACHE_INSTANCES </item>
      <item> CALL </item>
      <item> CANCEL </item>
      <item> CASCADE </item>
      <item> CASE </item>
      <item> CATEGORY </item>
      <item> CHAINED </item>
      <item> CHANGE </item>
      <item> CHECK </item>
      <item> CHECKPOINT </item>
      <item> CHILD </item>
      <item> CHOOSE </item>
      <item> CHUNK </item>
      <item> CLASS </item>
      <item> CLEAR </item>
      <item> CLONE </item>
      <item> CLOSE </item>
      <item> CLOSE_CACHED_OPEN_CURSORS </item>
      <item> CLUSTER </item>
      <item> COALESCE </item>
      <item> COLUMN </item>
      <item> COLUMNS </item>
      <item> COLUMN_VALUE </item>
      <item> COMMENT </item>
      <item> COMMIT </item>
      <item> COMMITTED </item>
      <item> COMPATIBILITY </item>
      <item> COMPILE </item>
      <item> COMPLETE </item>
      <item> COMPOSITE_LIMIT </item>
      <item> COMPRESS </item>
      <item> COMPUTE </item>
      <item> CONNECT </item>
      <item> CONNECT_TIME </item>
      <item> CONSIDER </item>
      <item> CONSISTENT </item>
      <item> CONSTANT </item>
      <item> CONSTRAINT </item>
      <item> CONSTRAINTS </item>
      <item> CONTAINER </item>
      <item> CONTENTS </item>
      <item> CONTEXT </item>
      <item> CONTINUE </item>
      <item> CONTROLFILE </item>
      <item> COPY </item>
      <item> COST </item>
      <item> CPU_PER_CALL </item>
      <item> CPU_PER_SESSION </item>
      <item> CREATE </item>
      <item> CREATE_STORED_OUTLINES </item>
      <item> CROSS </item>
      <item> CUBE </item>
      <item> CURRENT </item>
      <item> CURSOR </item>
      <item> CYCLE </item>
      <item> DANGLING </item>
      <item> DATA </item>
      <item> DATABASE </item>
      <item> DATAFILE </item>
      <item> DATAFILES </item>
      <item> DBA </item>
      <item> DDL </item>
      <item> DEALLOCATE </item>
      <item> DEBUG </item>
      <item> DECLARE </item>
      <item> DEFAULT </item>
      <item> DEFERRABLE </item>
      <item> DEFERRED </item>
      <item> DEFINER </item>
      <item> DEGREE </item>
      <item> DELETE </item>
      <item> DEMAND </item>
      <item> DESC </item>
      <item> DETERMINES </item>
      <item> DICTIONARY </item>
      <item> DIMENSION </item>
      <item> DIRECTORY </item>
      <item> DISABLE </item>
      <item> DISASSOCIATE </item>
      <item> DISCONNECT </item>
      <item> DISKGROUP </item>
      <item> DISMOUNT </item>
      <item> DISTINCT </item>
      <item> DISTRIBUTED </item>
      <item> DOMAIN </item>
      <item> DROP </item>
      <item> DYNAMIC </item>
      <item> EACH </item>
      <item> ELSE </item>
      <item> ELSIF </item>
      <item> EMPTY </item>
      <item> ENABLE </item>
      <item> END </item>
      <item> ENFORCE </item>
      <item> ENTRY </item>
      <item> ESCAPE </item>
      <item> ESTIMATE </item>
      <item> EVENTS </item>
      <item> EXCEPT </item>
      <item> EXCEPTION </item>
      <item> EXCEPTIONS </item>
      <item> EXCHANGE </item>
      <item> EXCLUDING </item>
      <item> EXCLUSIVE </item>
      <item> EXEC </item>
      <item> EXECUTE </item>
      <item> EXISTS </item>
      <item> EXPIRE </item>
      <item> EXPLAIN </item>
      <item> EXPLOSION </item>
      <item> EXTENDS </item>
      <item> EXTENT </item>
      <item> EXTENTS </item>
      <item> EXTERNALLY </item>
      <item> FAILED_LOGIN_ATTEMPTS </item>
      <item> FALSE </item>
      <item> FAST </item>
      <item> FILE </item>
      <item> FILTER </item>
      <item> FIRST_ROWS </item>
      <item> FLAGGER </item>
      <item> FLASHBACK </item>
      <item> FLUSH </item>
      <item> FOLLOWING </item>
      <item> FOR </item>
      <item> FORCE </item>
      <item> FOREIGN </item>
      <item> FREELIST </item>
      <item> FREELISTS </item>
      <item> FRESH </item>
      <item> FROM </item>
      <item> FULL </item>
      <item> FUNCTION </item>
      <item> FUNCTIONS </item>
      <item> GENERATED </item>
      <item> GLOBAL </item>
      <item> GLOBALLY </item>
      <item> GLOBAL_NAME </item>
      <item> GRANT </item>
      <item> GROUP </item>
      <item> GROUPS </item>
      <item> HASH </item>
      <item> HASHKEYS </item>
      <item> HAVING </item>
      <item> HEADER </item>
      <item> HEAP </item>
      <item> HIERARCHY </item>
      <item> HOUR </item>
      <item> ID </item>
      <item> IDENTIFIED </item>
      <item> IDENTIFIER </item>
      <item> IDGENERATORS </item>
      <item> IDLE_TIME </item>
      <item> IF </item>
      <item> IMMEDIATE </item>
      <item> IN </item>
      <item> INCLUDING </item>
      <item> INCREMENT </item>
      <item> INCREMENTAL </item>
      <item> INDEX </item>
      <item> INDEXED </item>
      <item> INDEXES </item>
      <item> INDEXTYPE </item>
      <item> INDEXTYPES </item>
      <item> INDICATOR </item>
      <item> INITIAL </item>
      <item> INITIALIZED </item>
      <item> INITIALLY </item>
      <item> INITRANS </item>
      <item> INNER </item>
      <item> INSERT </item>
      <item> INSTANCE </item>
      <item> INSTANCES </item>
      <item> INSTEAD </item>
      <item> INTERMEDIATE </item>
      <item> INTERSECT </item>
      <item> INTO </item>
      <item> INVALIDATE </item>
      <item> IS </item>
      <item> ISOLATION </item>
      <item> ISOLATION_LEVEL </item>
      <item> JAVA </item>
      <item> JOIN </item>
      <item> KEEP </item>
      <item> KEY </item>
      <item> KILL </item>
      <item> LABEL </item>
      <item> LAYER </item>
      <item> LEADING </item>
      <item> LEFT </item>
      <item> LESS </item>
      <item> LEVEL </item>
      <item> LIBRARY </item>
      <item> LIKE </item>
      <item> LIMIT </item>
      <item> LINK </item>
      <item> LIST </item>
      <item> LOCAL </item>
      <item> LOCATOR </item>
      <item> LOCK </item>
      <item> LOCKED </item>
      <item> LOGFILE </item>
      <item> LOGGING </item>
      <item> LOGICAL_READS_PER_CALL </item>
      <item> LOGICAL_READS_PER_SESSION </item>
      <item> LOGOFF </item>
      <item> LOGON </item>
      <item> LOOP </item>
      <item> MANAGE </item>
      <item> MANAGED </item>
      <item> MANAGEMENT </item>
      <item> MASTER </item>
      <item> MATERIALIZED </item>
      <item> MAXARCHLOGS </item>
      <item> MAXDATAFILES </item>
      <item> MAXEXTENTS </item>
      <item> MAXINSTANCES </item>
      <item> MAXLOGFILES </item>
      <item> MAXLOGHISTORY </item>
      <item> MAXLOGMEMBERS </item>
      <item> MAXSIZE </item>
      <item> MAXTRANS </item>
      <item> MAXVALUE </item>
      <item> MEMBER </item>
      <item> MERGE </item>
      <item> METHOD </item>
      <item> MINEXTENTS </item>
      <item> MINIMIZE </item>
      <item> MINIMUM </item>
      <item> MINUS </item>
      <item> MINUTE </item>
      <item> MINVALUE </item>
      <item> MODE </item>
      <item> MODIFY </item>
      <item> MONITORING </item>
      <item> MOUNT </item>
      <item> MOVE </item>
      <item> MOVEMENT </item>
      <item> MTS_DISPATCHERS </item>
      <item> MULTISET </item>
      <item> NAMED </item>
      <item> NATURAL </item>
      <item> NEEDED </item>
      <item> NESTED </item>
      <item> NESTED_TABLE_ID </item>
      <item> NETWORK </item>
      <item> NEVER </item>
      <item> NEW </item>
      <item> NEXT </item>
      <item> NLS_CALENDAR </item>
      <item> NLS_CHARACTERSET </item>
      <item> NLS_COMP </item>
      <item> NLS_CURRENCY </item>
      <item> NLS_DATE_FORMAT </item>
      <item> NLS_DATE_LANGUAGE </item>
      <item> NLS_ISO_CURRENCY </item>
      <item> NLS_LANG </item>
      <item> NLS_LANGUAGE </item>
      <item> NLS_NUMERIC_CHARACTERS </item>
      <item> NLS_SORT </item>
      <item> NLS_SPECIAL_CHARS </item>
      <item> NLS_TERRITORY </item>
      <item> NO </item>
      <item> NOARCHIVELOG </item>
      <item> NOAUDIT </item>
      <item> NOCACHE </item>
      <item> NOCOMPRESS </item>
      <item> NOCYCLE </item>
      <item> NOFORCE </item>
      <item> NOLOGGING </item>
      <item> NOMAXVALUE </item>
      <item> NOMINIMIZE </item>
      <item> NOMINVALUE </item>
      <item> NOMONITORING </item>
      <item> NONE </item>
      <item> NOORDER </item>
      <item> NOOVERRIDE </item>
      <item> NOPARALLEL </item>
      <item> NORELY </item>
      <item> NORESETLOGS </item>
      <item> NOREVERSE </item>
      <item> NORMAL </item>
      <item> NOSEGMENT </item>
      <item> NOSORT </item>
      <item> NOT </item>
      <item> NOTHING </item>
      <item> NOVALIDATE </item>
      <item> NOWAIT </item>
      <item> NULL </item>
      <item> NULLS </item>
      <item> OBJNO </item>
      <item> OBJNO_REUSE </item>
      <item> OF </item>
      <item> OFF </item>
      <item> OFFLINE </item>
      <item> OID </item>
      <item> OIDINDEX </item>
      <item> OLD </item>
      <item> ON </item>
      <item> ONLINE </item>
      <item> ONLY </item>
      <item> OPCODE </item>
      <item> OPEN </item>
      <item> OPERATOR </item>
      <item> OPTIMAL </item>
      <item> OPTIMIZER_GOAL </item>
      <item> OPTION </item>
      <item> OR </item>
      <item> ORDER </item>
      <item> ORGANIZATION </item>
      <item> OUT </item>
      <item> OUTER </item>
      <item> OUTLINE </item>
      <item> OVER </item>
      <item> OVERFLOW </item>
      <item> OVERLAPS </item>
      <item> OWN </item>
      <item> PACKAGE </item>
      <item> PACKAGES </item>
      <item> PARALLEL </item>
      <item> PARAMETERS </item>
      <item> PARENT </item>
      <item> PARTITION </item>
      <item> PARTITIONS </item>
      <item> PARTITION_HASH </item>
      <item> PARTITION_RANGE </item>
      <item> PASSWORD </item>
      <item> PASSWORD_GRACE_TIME </item>
      <item> PASSWORD_LIFE_TIME </item>
      <item> PASSWORD_LOCK_TIME </item>
      <item> PASSWORD_REUSE_MAX </item>
      <item> PASSWORD_REUSE_TIME </item>
      <item> PASSWORD_VERIFY_FUNCTION </item>
      <item> PCTFREE </item>
      <item> PCTINCREASE </item>
      <item> PCTTHRESHOLD </item>
      <item> PCTUSED </item>
      <item> PCTVERSION </item>
      <item> PERCENT </item>
      <item> PERMANENT </item>
      <item> PLAN </item>
      <item> PLSQL_DEBUG </item>
      <item> POST_TRANSACTION </item>
      <item> PREBUILT </item>
      <item> PRECEDING </item>
      <item> PREPARE </item>
      <item> PRESENT </item>
      <item> PRESERVE </item>
      <item> PREVIOUS </item>
      <item> PRIMARY </item>
      <item> PRIOR </item>
      <item> PRIVATE </item>
      <item> PRIVATE_SGA </item>
      <item> PRIVILEGE </item>
      <item> PRIVILEGES </item>
      <item> PROCEDURE </item>
      <item> PROFILE </item>
      <item> PUBLIC </item>
      <item> PURGE </item>
      <item> QUERY </item>
      <item> QUEUE </item>
      <item> QUOTA </item>
      <item> RANDOM </item>
      <item> RANGE </item>
      <item> RBA </item>
      <item> READ </item>
      <item> READS </item>
      <item> REBUILD </item>
      <item> RECORDS_PER_BLOCK </item>
      <item> RECOVER </item>
      <item> RECOVERABLE </item>
      <item> RECOVERY </item>
      <item> RECYCLE </item>
      <item> REDUCED </item>
      <item> REFERENCES </item>
      <item> REFERENCING </item>
      <item> REFRESH </item>
      <item> RELY </item>
      <item> RENAME </item>
      <item> REPLACE </item>
      <item> RESET </item>
      <item> RESETLOGS </item>
      <item> RESIZE </item>
      <item> RESOLVE </item>
      <item> RESOLVER </item>
      <item> RESOURCE </item>
      <item> RESTRICT </item>
      <item> RESTRICTED </item>
      <item> RESUME </item>
      <item> RETURN </item>
      <item> RETURNING </item>
      <item> REUSE </item>
      <item> REVERSE </item>
      <item> REVOKE </item>
      <item> REWRITE </item>
      <item> RIGHT </item>
      <item> ROLE </item>
      <item> ROLES </item>
      <item> ROLLBACK </item>
      <item> ROLLUP </item>
      <item> ROW </item>
      <item> ROWNUM </item>
      <item> ROWS </item>
      <item> RULE </item>
      <item> SAMPLE </item>
      <item> SAVEPOINT </item>
      <item> SCAN </item>
      <item> SCAN_INSTANCES </item>
      <item> SCHEMA </item>
      <item> SCN </item>
      <item> SCOPE </item>
      <item> SD_ALL </item>
      <item> SD_INHIBIT </item>
      <item> SD_SHOW </item>
      <item> SEGMENT </item>
      <item> SEG_BLOCK </item>
      <item> SEG_FILE </item>
      <item> SELECT </item>
      <item> SELECTIVITY </item>
      <item> SEQUENCE </item>
      <item> SERIALIZABLE </item>
      <item> SERVERERROR </item>
      <item> SESSION </item>
      <item> SESSIONS_PER_USER </item>
      <item> SESSION_CACHED_CURSORS </item>
      <item> SET </item>
      <item> SHARE </item>
      <item> SHARED </item>
      <item> SHARED_POOL </item>
      <item> SHRINK </item>
      <item> SHUTDOWN </item>
      <item> SINGLETASK </item>
      <item> SIZE </item>
      <item> SKIP </item>
      <item> SKIP_UNUSABLE_INDEXES </item>
      <item> SNAPSHOT </item>
      <item> SOME </item>
      <item> SORT </item>
      <item> SOURCE </item>
      <item> SPECIFICATION </item>
      <item> SPLIT </item>
      <item> SQL_TRACE </item>
      <item> STANDBY </item>
      <item> START </item>
      <item> STARTUP </item>
      <item> STATEMENT_ID </item>
      <item> STATIC </item>
      <item> STATISTICS </item>
      <item> STOP </item>
      <item> STORAGE </item>
      <item> STORE </item>
      <item> STRUCTURE </item>
      <item> SUBMULTISET </item>
      <item> SUBPARTITION </item>
      <item> SUBPARTITIONS </item>
      <item> SUCCESSFUL </item>
      <item> SUMMARY </item>
      <item> SUPPLEMENTAL </item>
      <item> SUSPEND </item>
      <item> SWITCH </item>
      <item> SYNONYM </item>
      <item> SYSDBA </item>
      <item> SYSOPER </item>
      <item> SYSTEM </item>
      <item> SYS_OP_BITVEC </item>
      <item> SYS_OP_ENFORCE_NOT_NULL$ </item>
      <item> SYS_OP_NOEXPAND </item>
      <item> SYS_OP_NTCIMG$ </item>
      <item> TABLE </item>
      <item> TABLES </item>
      <item> TABLESPACE </item>
      <item> TABLESPACE_NO </item>
      <item> TABNO </item>
      <item> TEMPFILE </item>
      <item> TEMPORARY </item>
      <item> THAN </item>
      <item> THE </item>
      <item> THEN </item>
      <item> THREAD </item>
      <item> THROUGH </item>
      <item> TIMEOUT </item>
      <item> TIMEZONE_HOUR </item>
      <item> TIMEZONE_MINUTE </item>
      <item> TIME_ZONE </item>
      <item> TO </item>
      <item> TOPLEVEL </item>
      <item> TRACE </item>
      <item> TRACING </item>
      <item> TRAILING </item>
      <item> TRANSACTION </item>
      <item> TRANSITIONAL </item>
      <item> TRIGGER </item>
      <item> TRIGGERS </item>
      <item> TRUE </item>
      <item> TRUNCATE </item>
      <item> TYPE </item>
      <item> TYPES </item>
      <item> UNARCHIVED </item>
      <item> UNBOUND </item>
      <item> UNBOUNDED </item>
      <item> UNDO </item>
      <item> UNIFORM </item>
      <item> UNION </item>
      <item> UNIQUE </item>
      <item> UNLIMITED </item>
      <item> UNLOCK </item>
      <item> UNRECOVERABLE </item>
      <item> UNTIL </item>
      <item> UNUSABLE </item>
      <item> UNUSED </item>
      <item> UPDATABLE </item>
      <item> UPDATE </item>
      <item> UPD_INDEXES </item>
      <item> UPPPER </item>
      <item> USAGE </item>
      <item> USE </item>
      <item> USER_DEFINED </item>
      <item> USE_STORED_OUTLINES </item>
      <item> USING </item>
      <item> VALIDATE </item>
      <item> VALIDATION </item>
      <item> VALUES </item>
      <item> VIEW </item>
      <item> WHEN </item>
      <item> WHENEVER </item>
      <item> WHERE </item>
      <item> WHILE </item>
      <item> WITH </item>
      <item> WITHOUT </item>
      <item> WORK </item>
      <item> WRITE </item>
    </list>
    <list name="operators">
      <item> + </item>
      <item> - </item>
      <item> * </item>
      <item> / </item>
      <item> || </item>
      <item> = </item>
      <item> != </item>
      <item> &lt;&gt; </item>
      <item> &lt; </item>
      <item> &lt;= </item>
      <item> &gt; </item>
      <item> &gt;= </item>
      <item> ~= </item>
      <item> ^= </item>
      <item> := </item>
      <item> =&gt; </item>
      <item> ** </item>
      <item> .. </item>
    </list>
    <list name="functions">
      <item> ABS </item>
      <item> ACOS </item>
      <item> ADD_MONTHS </item>
      <item> ASCII </item>
      <item> ASCIISTR </item>
      <item> ASIN </item>
      <item> ATAN </item>
      <item> ATAN2 </item>
      <item> AVG </item>
      <item> BFILENAME </item>
      <item> BIN_TO_NUM </item>
      <item> BITAND </item>
      <item> CARDINALITY </item>
      <item> CAST </item>
      <item> CEIL </item>
      <item> CHARTOROWID </item>
      <item> CHR </item>
      <item> COALESCE </item>
      <item> COLLECT </item>
      <item> COMPOSE </item>
      <item> CONCAT </item>
      <item> CONVERT </item>
      <item> CORR </item>
      <item> CORR_K </item>
      <item> CORR_S </item>
      <item> COS </item>
      <item> COSH </item>
      <item> COUNT </item>
      <item> COVAR_POP </item>
      <item> COVAR_SAMP </item>
      <item> CUME_DIST </item>
      <item> CURRENT_DATE </item>
      <item> CURRENT_TIMESTAMP </item>
      <item> CV </item>
      <item> DBTIMEZONE </item>
      <item> DECODE </item>
      <item> DECOMPOSE </item>
      <item> DENSE_RANK </item>
      <item> DEPTH </item>
      <item> DEREF </item>
      <item> DUMP </item>
      <item> EMPTY_BLOB </item>
      <item> EMPTY_CLOB </item>
      <item> EXISTSNODE </item>
      <item> EXP </item>
      <item> EXTRACT </item>
      <item> EXTRACTVALUE </item>
      <item> FIRST </item>
      <item> FIRST_VALUE </item>
      <item> FLOOR </item>
      <item> FROM_TZ </item>
      <item> GREATEST </item>
      <item> GROUP_ID </item>
      <item> GROUPING </item>
      <item> GROUPING_ID </item>
      <item> HEXTORAW </item>
      <item> INITCAP </item>
      <item> INSTR </item>
      <item> INSTRB </item>
      <item> LAG </item>
      <item> LAST </item>
      <item> LAST_DAY </item>
      <item> LAST_VALUE </item>
      <item> LEAD </item>
      <item> LEAST </item>
      <item> LENGTH </item>
      <item> LENGTHB </item>
      <item> LN </item>
      <item> LNNVL </item>
      <item> LOCALTIMESTAMP </item>
      <item> LOG </item>
      <item> LOWER </item>
      <item> LPAD </item>
      <item> LTRIM </item>
      <item> MAKE_REF </item>
      <item> MAX </item>
      <item> MEDIAN </item>
      <item> MIN </item>
      <item> MOD </item>
      <item> MONTHS_BETWEEN </item>
      <item> NANVL </item>
      <item> NCHR </item>
      <item> NEW_TIME </item>
      <item> NEXT_DAY </item>
      <item> NLS_CHARSET_DECL_LEN </item>
      <item> NLS_CHARSET_ID </item>
      <item> NLS_CHARSET_NAME </item>
      <item> NLS_INITCAP </item>
      <item> NLS_LOWER </item>
      <item> NLS_UPPER </item>
      <item> NLSSORT </item>
      <item> NTILE </item>
      <item> NULLIF </item>
      <item> NUMTODSINTERVAL </item>
      <item> NUMTOYMINTERVAL </item>
      <item> NVL </item>
      <item> NVL2 </item>
      <item> ORA_HASH </item>
      <item> ORA_ROWSCN </item>
      <item> PERCENT_RANK </item>
      <item> PERCENTILE_CONT </item>
      <item> PERCENTILE_DISC </item>
      <item> POWER </item>
      <item> POWERMULTISET </item>
      <item> POWERMULTISET_BY_CARDINALITY </item>
      <item> PRESENTNNV </item>
      <item> PRESENTV </item>
      <item> RANK </item>
      <item> RATIO_TO_REPORT </item>
      <item> RAWTOHEX </item>
      <item> RAWTONHEX </item>
      <item> REF </item>
      <item> REFTOHEX </item>
      <item> REGEXP_INSTR </item>
      <item> REGEXP_LIKE </item>
      <item> REGEXP_REPLACE </item>
      <item> REGEXP_SUBSTR </item>
      <item> REGR_SLOPE </item>
      <item> REGR_INTERCEPT </item>
      <item> REGR_COUNT </item>
      <item> REGR_R2 </item>
      <item> REGR_AVGX </item>
      <item> REGR_AVGY </item>
      <item> REGR_SXX </item>
      <item> REGR_SYY </item>
      <item> REGR_SXY </item>
      <item> REMAINDER </item>
      <item> ROUND </item>
      <item> ROW_NUMBER </item>
      <item> ROWIDTOCHAR </item>
      <item> ROWIDTONCHAR </item>
      <item> RPAD </item>
      <item> RTRIM </item>
      <item> SCN_TO_TIMESTAMP </item>
      <item> SESSIONTIMEZONE </item>
      <item> SIGN </item>
      <item> SIN </item>
      <item> SINH </item>
      <item> SOUNDEX </item>
      <item> SQRT </item>
      <item> STATS_BINOMIAL_TEST </item>
      <item> STATS_CROSSTAB </item>
      <item> STATS_F_TEST </item>
      <item> STATS_KS_TEST </item>
      <item> STATS_MODE </item>
      <item> STATS_MW_TEST </item>
      <item> STATS_ONE_WAY_ANOVA </item>
      <item> STATS_T_TEST_ONE </item>
      <item> STATS_T_TEST_PAIRED </item>
      <item> STATS_T_TEST_INDEP </item>
      <item> STATS_T_TEST_INDEPU </item>
      <item> STATS_WSR_TEST </item>
      <item> STDDEV </item>
      <item> STDDEV_POP </item>
      <item> STDDEV_SAMP </item>
      <item> SUBSTR </item>
      <item> SUBSTRB </item>
      <item> SUM </item>
      <item> SYS_CONNECT_BY_PATH </item>
      <item> SYS_CONTEXT </item>
      <item> SYS_DBURIGEN </item>
      <item> SYS_EXTRACT_UTC </item>
      <item> SYS_GUID </item>
      <item> SYS_TYPEID </item>
      <item> SYS_XMLAGG </item>
      <item> SYS_XMLGEN </item>
      <item> SYSDATE </item>
      <item> SYSTIMESTAMP </item>
      <item> TAN </item>
      <item> TANH </item>
      <item> TIMESTAMP_TO_SCN </item>
      <item> TO_BINARY_DOUBLE </item>
      <item> TO_BINARY_FLOAT </item>
      <item> TO_CHAR </item>
      <item> TO_CLOB </item>
      <item> TO_DATE </item>
      <item> TO_DSINTERVAL </item>
      <item> TO_LOB </item>
      <item> TO_MULTI_BYTE </item>
      <item> TO_NCHAR </item>
      <item> TO_NCLOB </item>
      <item> TO_NUMBER </item>
      <item> TO_SINGLE_BYTE </item>
      <item> TO_TIMESTAMP </item>
      <item> TO_TIMESTAMP_TZ </item>
      <item> TO_YMINTERVAL </item>
      <item> TRANSLATE </item>
      <item> TREAT </item>
      <item> TRIM </item>
      <item> TRUNC </item>
      <item> TZ_OFFSET </item>
      <item> UID </item>
      <item> UNISTR </item>
      <item> UPDATEXML </item>
      <item> UPPER </item>
      <item> USER </item>
      <item> USERENV </item>
      <item> VALUE </item>
      <item> VAR_POP </item>
      <item> VAR_SAMP </item>
      <item> VARIANCE </item>
      <item> VSIZE </item>
      <item> WIDTH_BUCKET </item>
      <item> XMLAGG </item>
      <item> XMLCOLATTVAL </item>
      <item> XMLCONCAT </item>
      <item> XMLELEMENT </item>
      <item> XMLFOREST </item>
      <item> XMLSEQUENCE </item>
      <item> XMLTRANSFORM </item>
    </list>
    <list name="types">
      <item> ANYDATA </item>
      <item> ANYDATASET </item>
      <item> ANYTYPE </item>
      <item> ARRAY </item>
      <item> BFILE </item>
      <item> BINARY_DOUBLE </item>
      <item> BINARY_FLOAT </item>
      <item> BINARY_INTEGER </item>
      <item> BLOB </item>
      <item> BOOLEAN </item>
      <item> CFILE </item>
      <item> CHAR </item>
      <item> CHARACTER </item>
      <item> CLOB </item>
      <item> DATE </item>
      <item> DAY </item>
      <item> DBURITYPE </item>
      <item> DEC </item>
      <item> DECIMAL </item>
      <item> DOUBLE </item>
      <item> FLOAT </item>
      <item> FLOB </item>
      <item> HTTPURITYPE </item>
      <item> INT </item>
      <item> INTEGER </item>
      <item> INTERVAL </item>
      <item> LOB </item>
      <item> LONG </item>
      <item> MLSLABEL </item>
      <item> MONTH </item>
      <item> NATIONAL </item>
      <item> NCHAR </item>
      <item> NCLOB </item>
      <item> NUMBER </item>
      <item> NUMERIC </item>
      <item> NVARCHAR </item>
      <item> OBJECT </item>
      <item> PLS_INTEGER </item>
      <item> PRECISION </item>
      <item> RAW </item>
      <item> REAL </item>
      <item> RECORD </item>
      <item> ROWID </item>
      <item> SECOND </item>
      <item> SINGLE </item>
      <item> SMALLINT </item>
      <item> TIME </item>
      <item> TIMESTAMP </item>
      <item> URIFACTORYTYPE </item>
      <item> URITYPE </item>
      <item> UROWID </item>
      <item> VARCHAR </item>
      <item> VARCHAR2 </item>
      <item> VARRAY </item>
      <item> VARYING </item>
      <item> XMLTYPE </item>
      <item> YEAR </item>
      <item> ZONE </item>
    </list>
    <contexts>
      <context name="Normal" attribute="Normal Text" lineEndContext="#stay">
        <DetectSpaces/>

        <keyword attribute="Keyword" String="keywords" context="#stay"/>
        <keyword attribute="Operator" String="operators" context="#stay"/>
        <keyword attribute="Function" String="functions" context="#stay"/>
        <keyword attribute="Data Type" String="types" context="#stay"/>

        <DetectIdentifier/>
        <!-- extra data types -->
        <RegExpr attribute="Data Type" context="#stay" String="%(?:bulk_(?:exceptions|rowcount)|found|isopen|notfound|rowcount|rowtype|type)\b" insensitive="true"/>
        <!-- numbers -->
        <HlCHex attribute="Hex" context="#stay"/>
        <Float attribute="Float" context="#stay"/>
        <Int attribute="Decimal" context="#stay"/>
        <!-- strings -->
        <DetectChar attribute="String" context="String literal" char="'"/>
        <!-- comments -->
        <Detect2Chars attribute="Comment" context="Singleline PL/SQL-style comment" char="-" char1="-"/>
        <Detect2Chars attribute="Comment" context="Multiline C-style comment" char="/" char1="*" beginRegion="Comment"/>
        <RegExpr attribute="Comment" context="SQL*Plus remark directive" String="^rem\b" insensitive="true" column="0"/>

        <DetectChar attribute="Identifier" context="User-defined identifier" char="&quot;"/>
        <RegExpr attribute="External Variable" context="#stay" String="(:|&amp;&amp;?)\w+"/>
        <RegExpr attribute="Symbol" context="#stay" String="^/$" column="0"/>
        <RegExpr attribute="Preprocessor" context="SQL*Plus directive to include file" String="^@@?[^@ \t\r\n]" column="0"/>
      </context>
      <context name="String literal" attribute="String" lineEndContext="#stay">
        <Detect2Chars attribute="String" context="#pop" char="\" char1="'"/>
        <HlCStringChar attribute="String Char" context="#stay"/>
        <RegExpr attribute="External Variable" context="#stay" String="&amp;&amp;?\w+"/>
        <Detect2Chars attribute="String Char" context="#stay" char="'" char1="'"/>
        <DetectChar attribute="String" context="#pop" char="'"/>
      </context>
      <context name="Singleline PL/SQL-style comment" attribute="Comment" lineEndContext="#pop"/>
      <context name="Multiline C-style comment" attribute="Comment" lineEndContext="#stay">
        <Detect2Chars attribute="Comment" context="#pop" char="*" char1="/" endRegion="Comment"/>
      </context>
      <context name="SQL*Plus remark directive" attribute="Comment" lineEndContext="#pop"/>
      <context name="User-defined identifier" attribute="Identifier" lineEndContext="#pop">
        <DetectChar attribute="Identifier" context="#pop" char="&quot;"/>
      </context>
      <context name="SQL*Plus directive to include file" attribute="Preprocessor" lineEndContext="#pop"/>
    </contexts>
    <itemDatas>
      <itemData name="Normal Text"       defStyleNum="dsNormal"/>
      <itemData name="Keyword"           defStyleNum="dsKeyword"/>
      <itemData name="Operator"          defStyleNum="dsNormal"/>
      <itemData name="Function"          defStyleNum="dsFunction"/>
      <itemData name="Data Type"         defStyleNum="dsDataType"/>
      <itemData name="Decimal"           defStyleNum="dsDecVal"/>
      <itemData name="Hex"               defStyleNum="dsBaseN"/>
      <itemData name="Float"             defStyleNum="dsFloat"/>
      <itemData name="String"            defStyleNum="dsString"/>
      <itemData name="String Char"       defStyleNum="dsChar"/>
      <itemData name="Comment"           defStyleNum="dsComment"/>
      <itemData name="Identifier"        defStyleNum="dsOthers"/>
      <itemData name="External Variable" defStyleNum="dsChar"/>
      <itemData name="Symbol"            defStyleNum="dsChar"/>
      <itemData name="Preprocessor"      defStyleNum="dsOthers"/>
    </itemDatas>
  </highlighting>
  <general>
    <comments>
      <comment name="singleLine" start="--"/>
      <comment name="multiLine" start="/*" end="*/"/>
    </comments>
    <keywords casesensitive="0" weakDeliminator="+-*/|=!&lt;&gt;~^:."/>
  </general>
</language>
