#
# JBoss, Home of Professional Open Source.
# See the COPYRIGHT.txt file distributed with this work for information
# regarding copyright ownership.  Some portions may be licensed
# to Red Hat, Inc. under one or more contributor license agreements.
# 
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# 
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# Lesser General Public License for more details.
# 
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
# 02110-1301 USA.
#

# Error messages for query (015) project to address internationalization
# Format:
#

# function (001)
TEIID30382=Cannot find implementation for known function {0}
TEIID30384=Error while evaluating function {0}
TEIID30385=Unable to access function implementation for [{0}]
ERR.015.001.0005=ERROR loading system functions: {0}
TEIID30402=Pad length must be > 0.
TEIID30403=Pad string for lpad/rpad must have length greater than 0.
TEIID30404=Source and destination character lists must be the same length.
TEIID30405=Error converting [{0}] of type {1} to type {2}
TEIID30406=The context function may only be used in XML queries.
TEIID30411=Illegal argument for formating: {0}
TEIID30412=Could not parse number using format: {0} {1}
ERR.015.001.0044=Function metadata source is of invalid type: {0}
TEIID30011=The function "{0}" will not be added because a function with the same name and signature already exists.
TEIID30389=Unexpected exception while loading "{1}.{2}" for UDF "{0}"
TEIID30387=Could not load UDF "{0}", since its invocation class "{1}" could not be found.
TEIID30388=UDF "{0}" could not be loaded, since no method on class "{1}" with name "{2}" has a matching type signature.
TEIID30424=Unable to represent average value from {0} / {1}
TEIID30425=Unable to compute aggregate function {0} on data of type {1}
TEIID30429={0} must be non-null.
TEIID30427=Method parameter must be non-null.
TEIID30428=Type is unknown: {0}
TEIID30430={0} exceeds maximum length of {1}
TEIID30432={0} has invalid first character: {1}
TEIID30434={0} cannot end with a ''.''
TEIID30399=<start> value of {0} is invalid, which should never be less than zero or bigger than the length of original string {1}
TEIID30400=<length> value of {0} is invalid, which should never less be than zero.
TEIID30401=Input String is an empty string but start value or/and length value is bigger than zero.
ERR.015.001.0066=Unknown type signature for evaluating function of: {0} ({1})
ERR.015.001.0069=Unknown type signature for evaluating function of: {0} ({1})

# mapping (002)
ERR.015.002.0009=Search direction arg ''{0}'' is not one of the search constants defined in MappingNodeConstants.
ERR.015.002.0010=Value for property ''{0}'' is null.
ERR.015.002.0011=Invalid type: {0}


# parser (005)
TEIID31100=Parsing error: {0}
QueryParser.nullSqlCrit=Parser cannot parse a null sql criteria.
QueryParser.lexicalError=Lexical error. Character is not a valid token: {0} 
QueryParser.nullSqlExpr=Parser cannot parse a null sql expression.
TEIID30378=Direct usage of XQuery is no longer supported, use XMLQUERY instead.

# processor (006)
TEIID30311=Unknown criteria type: {0}
TEIID30312=Unable to evaluate {0} expression of {1}
TEIID30448=Failed to create regular expression from match pattern: {0}. {1}
TEIID30323=Unable to evaluate expression of {0}
TEIID30329=Unknown expression type: {0}
TEIID30342=Unable to evaluate LOOKUP function.
TEIID30326=Unknown subquery comparison predicate quantifier: {0}
TEIID30345=The command of this scalar subquery returned more than one value: {0}


# resolver (008)
TEIID30112=Only one XML document may be specified in the FROM clause of a query.
TEIID30061={1} is not allowed on the view {0}.  A procedure may be needed to handle the {1} since: {2}
TEIID30127=INSERT statement must have the same number of elements and values specified.  This statement has {0} elements and {1} values.
TEIID30065=Error parsing query plan transformation for {0}
TEIID30136=Unable to resolve element: {0}
TEIID30137=Element is ambiguous and must be qualified: {0}
ERR.015.008.0022=Failed parsing reference binding: {0}
ERR.015.008.0025=Binding reference cannot be a function: {0}
TEIID30083=Expression ''{0}'' has a parameter with non-determinable type information.  The use of an explicit convert may be necessary.
TEIID30074=This criteria must have string or CLOB expressions on each side: {0}
TEIID30093=There must be exactly one projected symbol of the subquery: {0}
TEIID30094=The left expression must have a type convertible to the type of the subquery projected symbol: {0}
TEIID30067=Type was null for {0} in function {1}
TEIID30068=The function ''{0}'' is an unknown form.  Check that the function name and number of arguments is correct.
TEIID30069=The function ''{0}'' has more than one possible signature.
TEIID31150=The function ''{0}'' is ambiguous.  Use schema qualification.
TEIID30071=The conversion from {0} to {1} is not allowed.
TEIID30070=The function ''{0}'' is a valid function form, but the arguments do not match a known type signature and cannot be converted using implicit type conversions.
TEIID30082=Expected value of type ''{0}'' but ''{1}'' is of type ''{2}'' and no implicit conversion is available.
TEIID30084=Element ''{0}'' in ORDER BY is ambiguous and may refer to more than one element of SELECT clause.
TEIID30087=Element ''{0}'' in ORDER BY was not found in the FROM clause.
TEIID30060=Failed parsing {1} plan for {0}
ERR.015.008.0046=The symbol {0} may only be used once in the FROM clause.
ERR.015.008.0047=The symbol {0} refers to a group not defined in the FROM clause.
ERR.015.008.0049=Bindings must be specified
TEIID31119=Symbol {0} is specified with an unknown group context
TEIID31117=Element "{0}" is ambiguous and should be qualified, at a single scope it exists in {1}
TEIID31118=Element "{0}" is not defined by any relevant group.
ERR.015.008.0055=Group specified is ambiguous, resubmit the query by fully qualifying the group name
TEIID30358=Procedure ''{0}'' is ambiguous, use the fully qualified name instead
ERR.015.008.0056=Group does not exist
TEIID30143=Unable to resolve stored procedure {0} the datatype for the parameter {1} is not specified.
TEIID30099=Unable to resolve key element referred to by LOOKUP function: {0}
TEIID30095=The first three arguments for the LOOKUP function must be specified as constants.
TEIID30096=Group {0} is not allowed in LOOKUP function.
TEIID30079=Could not find a common type to which all {0} expressions can be implicitly converted: {1}
TEIID30135=Aliased Select Symbols are not valid in XML Queries.
TEIID30134=Expressions cannot be selected by XML Queries
TEIID30129=Aliased subquery contexts are not allowed: {0}
TEIID30075=Type cannot be null for expression: {0}
TEIID30077=This criteria must have values only of the same type as the left expression: {0}

# sql (010)
ERR.015.010.0001=Invalid compare operator: {0}
ERR.015.010.0002= Invalid logical operator: {0}
ERR.015.010.0003=Cannot set null collection of elements on GroupBy
ERR.015.010.0006=Invalid parameter type [{0}] must be IN, OUT, INOUT, RETURN_VALUE, RESULT_SET
ERR.015.010.0009=No columns exist.
ERR.015.010.0010=Invalid column index: {0}
ERR.015.010.0011=Parameter cannot be null
ERR.015.010.0014=Constant type should never be null
ERR.015.010.0015=Unknown constant type: {0}
ERR.015.010.0016=A group symbol may not resolve to a null metadata ID.
ERR.015.010.0017=The name of a symbol may not be null.
ERR.015.010.0018=Inconsistent number of elements in transformation projected symbols and virtual group.
ERR.015.010.0021=Elements cannot be null
ERR.015.010.0022=Functions cannot be null
ERR.015.010.0023=Groups cannot be null
ERR.015.010.0029=Cannot create AliasSymbol wrapping AliasSymbol
ERR.015.010.0031=Illegal variable name ''{1}''.  Variable names can only be prefixed with the special group name ''{0}''.
ERR.015.010.0032=Variable {0} was previously declared.
ERR.015.010.0035=The <expression> cannot be null in CASE <expression>
ERR.015.010.0036=There must be at least one WHEN expression and one THEN expression. The number of WHEN and THEN expressions must be equal.
ERR.015.010.0037=The WHEN part of the CASE expression must contain an expression.
ERR.015.010.0038=The THEN part of the CASE expression must contain an expression
ERR.015.010.0039=The WHEN part of the searched CASE expression must contain a criteria.

# util (011)

# validator (012)
ERR.015.012.0001 = The updatable view query must be simple (containing a FROM clause and not using SELECT INTO) or a UNION ALL of simple queries.
ERR.015.012.0002 = The updatable view query has a WITH clause, pass-through processing will not be used for UPDATE/DELETE operations.
ERR.015.012.0003 = The updatable view query projects a column from a non-updatable group {0}.
ERR.015.012.0004 = The updatable view query has a non key preserving group {0}, which cannot be targeted by INSERT/UPDATE/DELETE operations.
ERR.015.012.0005 = The updatable view has no valid target for UPDATEs.
ERR.015.012.0006 = The updatable view query must not use aggregates or grouping.
ERR.015.012.0007 = The updatable view query has a non-updatable expression {0} for view column {1}.
ERR.015.012.0008 = The updatable view query cannot use SELECT DISTINCT.
ERR.015.012.0009 = The updatable view query has a FROM clause that is not a single table, pass-through processing will not be used for UPDATE/DELETE operations.
ERR.015.012.0010 = The updatable view query does not project the column {0}, which is required to make {1} a target of INSERT operations.
ERR.015.012.0011 = There must be exactly one projected symbol in the subcommand of an IN clause.
ERR.015.012.0013 = The query defining an updatable virtual group cannot use LIMIT.
ERR.015.012.0014 = The non-simple query defining an updatable view does not have a valid key preserving delete target.
ERR.015.012.0015 = The query defining an updatable view has no valid target for INSERTs.
ERR.015.012.0016 = Variable {0} not assigned any value in this procedure.
ERR.015.012.0017 = Variables declared the procedure''s DeclareStatement cannot be one of the special variables: {0}, {1} and {2}.
ERR.015.012.0018 = Inherent INSERT is not possible on a view defined by a non-partitioned UNION.
ERR.015.012.0024 = The following data elements are not supported in the SELECT clause: {0}.
ERR.015.012.0025 = Command must project at least one symbol
ERR.015.012.0026 = Non-comparable expression of type {1} cannot be used in SELECT DISTINCT, ORDER BY, GROUP BY, KEYS, or non-all set queries: [{0}]
ERR.015.012.0027 = Non-comparable expression of type {1} cannot be used in comparison: {0}.
ValidationVisitor.expression_requires_name = Non-column expressions require a name in XMLATTRIBUTES, XMLFOREST, QUERYSTRING, or TEXTAGG with HEADER
ValidationVisitor.invalid_lookup_key=Non-comparable expression of type {1} cannot be used as LOOKUP key columns: {0}.
ValidationVisitor.limit_not_valid_for_xml=The limit clause cannot be used on an XML document query.
ValidationVisitor.union_insert = Select into is not allowed under a set operation: {0}.
ValidationVisitor.multisource_insert = A multi-source table, {0}, cannot be used in an INSERT with query expression, a SELECT INTO statement, or in an insert with values that do not include the multi-source column.
ValidationVisitor.invalid_encoding = Invalid encoding: {0}.
ValidationVisitor.invalid_alter=Cannot alter an object {0} from an imported model.
TEIID30376=The specified change set {0} against an inherently updatable view does not map to a key preserving group.
TEIID30239=Inserts with query expressions cannot be performed against a partitioned UNION view {0}.
TEIID30241=Could not determine INSERT target for a partitioned UNION view {0} with values {1}.
ValidationVisitor.duplicate_block_label = Duplicate label {0}.
ValidationVisitor.no_loop = CONTINUE/BREAK can only be used in a LOOP/WHILE statement.
ValidationVisitor.invalid_label = CONTINUE/BREAK labels can only target LOOP/WHILE statements. {0} targets a block.
ValidationVisitor.unknown_block_label = No label found in containing scope with name {0}.
ValidationVisitor.encoding_for_binary=The XMLSERIALIZE ENCODING option is only for binary serialization types.
ERR.015.012.0029 = INSERT, UPDATE, and DELETE not allowed on XML documents
ERR.015.012.0030 = Commands used in stored procedure language not allowed on XML documents
TEIID30130=Queries against XML documents can not have a GROUP By clause
TEIID30131=Queries against XML documents can not have a HAVING clause
ERR.015.012.0033 = Metadata does not allow updates on the group: {0}
ERR.015.012.0034 = Queries involving UNIONs, INTERSECTs and EXCEPTs not allowed on XML documents
TEIID30147=Queries combined with the set operator {0} must have the same number of output elements.
ERR.015.012.0037 = {0} cannot be used outside of aggregate functions since they are not present in a GROUP BY clause.
ERR.015.012.0039 = Nested aggregate expressions are not allowed: {0}
ERR.015.012.0041 = The aggregate function {0} cannot be used with non-numeric expressions: {1}
ValidationVisitor.aggregate_type = The aggregate function {0} has argument types that are not compatible with the function.
ERR.015.012.0042 = A windowed aggregate function {0} cannot use its own order by clause or be distinct with an OVER ORDER BY: {1}
AggregateValidationVisitor.non_comparable = The aggregate function {0} cannot be used with non-comparable expressions: {1}
AggregateValidationVisitor.non_xml = The XMLAGG aggregate function {0} requires an expression of type XML: {1}
AggregateValidationVisitor.non_boolean=The boolean aggregate functions ANY, SOME, EVERY require a boolean expression.
AggregateValidationVisitor.invalid_distinct=The enhanced numeric aggregate functions STDDEV_POP, STDDEV_SAMP, VAR_POP, VAR_SAMP cannot have DISTINCT specified.
ValidationVisitor.distinct_orderby_agg=With DISTINCT an aggregate order by is required to reference the aggregate arguments: {0}
ERR.015.012.0052 = The element [{0}] is in an INSERT but does not support updates.
ERR.015.012.0053 = Element {1} of {0} is neither nullable nor has a default value. A value must be specified in the insert.
TEIID30126=Column variables do not reference columns on group "{0}": {1}
ERR.015.012.0055 = Element {0} does not allow nulls.
ERR.015.012.0059 = Left side of update expression must be an element that supports update: {0}
ERR.015.012.0060 = Element {0} does not allow nulls.
ERR.015.012.0062 = Elements cannot appear more than once in a SET or USING clause.  The following elements are duplicated: {0}
ERR.015.012.0063 = Multiple failures occurred during validation:
ERR.015.012.0064 = Validation succeeded
TEIID30124=Loop cursor or exception group name {0} already exists.
ERR.015.012.0067 = No scalar subqueries are allowed in the SELECT with no FROM clause.
ERR.015.012.0069 = INTO clause can not be used in XML query.

# optimizer (004)
TEIID30250=Can''t convert plan node of type {0}
TEIID30251=Error finding connectorBindingID for command
ERR.015.004.0010= Unknown group specified in OPTION MAKEDEP/MAKENOTDEP: {0}
TEIID30278=Group has an access pattern which has not been met: group(s) {0}; access pattern(s) {1}
TEIID30267=Error getting model for {0}
TEIID30263=Error rewriting: {0}
TEIID30268=Unable to create a query plan that sends a criteria to \"{0}\".  This connection factory requires criteria set to true indicating that a query against this model requires criteria.
TEIID30283=Could not resolve group symbol {0}
TEIID30306=The criteria {0} has elements from the root staging table and the document nodes which is not allowed.
TEIID30309=No mapping node found named, ''{0}'', in use of ''context''
TEIID30287=The XML document element(s) {0} are not mapped to data and cannot be used in the criteria \"{1}\".
TEIID30281=Could not parse query transformation for {0}: {1}
TEIID30300=Context functions within the same conjunct refer to different contexts: {0}

# processor (006)
ERR.015.006.0001= XMLPlan toString couldn''t print entire Program.
ERR.015.006.0034= Unexpected symbol type while updating tuple: {0}
TEIID30166=Tuple source does not exist: {0}
TEIID30212=Instructed to abort processing when recursion limit reached.
ERR.015.006.0042= No xml schema to validate document against
ERR.015.006.0048= Fatal Error: {0}
ERR.015.006.0049= Error: {0}
ERR.015.006.0051= Invalid direction for MoveDocInstruction: {0}
ERR.015.006.0054= Instructed to abort processing as default of choice.

# rewriter (009)
TEIID30372=Error evaluating criteria: {0}
ERR.015.009.0002= Error translating criteria on the user''s command, the criteria translated to {0} is not valid
TEIID30373=Error simplifying mathematical expression: {0}

SQLParser.Aggregate_only_top_level=Aggregate functions are only allowed HAVING/SELECT/ORDER BY clauses.  Window functions are only allowed in the SELECT/ORDER BY clauses: {0}.  Both require a FROM clause to be present.
SQLParser.window_only_top_level=Window functions are not allowed in the HAVING clause: {0}
SQLParser.Unknown_agg_func=Unknown aggregate function: {0}
SQLParser.Invalid_func=Invalid function name: [{0}]
SQLParser.Integer_parse=Unable to parse integer literal: {0}
SQLParser.Float_parse=Unable to parse floating point literal: {0}
SQLParser.decimal_parse=Unable to parse decimal literal: {0}
SQLParser.Invalid_id=Invalid metadata ID format: [{0}]
SQLParser.Invalid_alias=Invalid alias format: [{0}]
SQLParser.Invalid_short_name=Invalid simple identifier format: [{0}]
SQLParser.invalid_window=Cannot window a non-aggregate expression {0}.
SQLParser.function_def=Foreign procedures and functions {0} cannot define a body.
SQLParser.view_def=Foreign or Global Temporary table {0} cannot be defined by a query expression.
SQLParser.pk_exists=Primary Key is already defined on {0}
SQLParser.no_column=Column name {0} not found on table {1}
SQLParser.function_return=Function {0} is not valid.  Functions can not support result set return parameters, and must have a scalar return parameter.
SQLParser.function_in=Functions {0} is not valid.  Functions can only support 'In/RESULT' parameters.
SQLParser.alter_table_doesnot_exist=The table {0} does not exist in the schema provided.
SQLParser.alter_procedure_doesnot_exist=The procedure {0} does not exist in the schema provided.
SQLParser.alter_procedure_param_doesnot_exist=The parameter {0} does not exist on procedure {1} in the schema provided.
SQLParser.alter_function_param_doesnot_exist=The parameter {0} does not exist on function {1} in the schema provided.
SQLParser.alter_table_param=Parameter {0} in not a valid alter target on table {1}.
SQLParser.non_position_constant=Order by expression constant {0} is not allowed.
SQLParser.view_doesnot_exist=No view exits with the name {0}. 
SystemSource.array_length_desc=Get the length of the given array value
SystemSource.array_param1=Array
SystemSource.array_length_result=The array length
SystemSource.array_get_desc=Get the object value at the given array index
SystemSource.array_get_param2=Array index
SystemSource.array_get_result=The object value
SystemSource.Add_desc=Converts escape sequences in the given string to their actual characters. 
SystemSource.unescape_param1=String to be unescaped
SystemSource.unescape_result=Unescaped string
SystemSource.Add_desc=Add two numbers
SystemSource.Add_result_desc=Left operand + right operand
SystemSource.Subtract_desc=Subtract two numbers
SystemSource.Subtract_result_desc=Left operand - right operand
SystemSource.Multiply_desc=Multiply two numbers
SystemSource.Multiply_result_desc=Left operand * right operand
SystemSource.Divide_desc=Divide two numbers
SystemSource.Divide_result_desc=Left operand / right operand
SystemSource.Ceiling_desc=Ceiling of number
SystemSource.Exp_desc=e^number
SystemSource.Floor_desc=Floor of number
SystemSource.Log_desc=Log (base e) of number
SystemSource.Log10_desc=Log (base 10) of number
SystemSource.Acos_desc=Arccosine of number
SystemSource.Asin_desc=Arcsine of number
SystemSource.Atan_desc=Arctan of number
SystemSource.Atan2_desc=Arctan of number1 / number2
SystemSource.Cos_desc=Cosine of number
SystemSource.Cot_desc=Cotangent of number
SystemSource.Degrees_desc=Convert from radians to degrees
SystemSource.Pi_desc=Constant value for pi
SystemSource.Radians_desc=Convert from degrees to radians
SystemSource.Sin_desc=Sine of number
SystemSource.Tan_desc=Tangent of number
SystemSource.Bitand_desc=Bitwise AND of two integers
SystemSource.Bitand_result_desc=integer1 AND integer2
SystemSource.Bitor_desc=Bitwise inclusive OR of two integers
SystemSource.Bitor_result_desc=integer1 OR integer2
SystemSource.Bitxor_desc=Bitwise exclusive OR (XOR) of two integers
SystemSource.Bitxor_result_desc=integer1 XOR integer2
SystemSource.Bitnot_desc=Bitwise inversion (NOT) of a 32-bit integer. Equivalent to XOR(integer, 0xFFFFFFFF)
SystemSource.Bitnot_result_desc=32-bit inverted integer
SystemSource.Curdate_desc=Current date
SystemSource.Curtime_desc=Current time
SystemSource.Now_desc=Current timestamp
SystemSource.Dayname_result_d_desc=Day name for date
SystemSource.Dayname_result_ts_desc=Day name for timestamp
SystemSource.Dayofmonth_result_d_desc=Day of month for date (1 = 1st)
SystemSource.Dayofmonth_result_ts_desc=Day of month for timestamp (1 = 1st)
SystemSource.Dayofweek_result_d_desc=Day of week for date (1 = Sunday)
SystemSource.Dayofweek_result_ts_desc=Day of week for timestamp (1 = Sunday)
SystemSource.Dayofyear_result_d_desc=Day of year for date (1 = Jan 1st)
SystemSource.Dayofyear_result_ts_desc=Day of year for timestamp (1 = Jan 1st)
SystemSource.Month_result_d_desc=Month for date (1 = January)
SystemSource.Month_result_ts_desc=Month for timestamp (1 = January)
SystemSource.Monthname_result_d_desc=Month name for date
SystemSource.Monthname_result_ts_desc=Month name for timestamp
SystemSource.Week_result_d_desc=Week of year for date
SystemSource.Week_result_ts_desc=Week of year for timestamp
SystemSource.Year_result_d_desc=Year for date
SystemSource.Year_result_ts_desc=Year for timestamp
SystemSource.Hour_result_t_desc=Hour for time
SystemSource.Hour_result_ts_desc=Hour for timestamp
SystemSource.Minute_result_t_desc=Minute for time
SystemSource.Minute_result_ts_desc=Minute for timestamp
SystemSource.Second_result_t_desc=Second for time
SystemSource.Second_result_ts_desc=Second for timestamp
SystemSource.Quarter_result_d_desc=Quarter for date (1=Jan/Feb/Mar)
SystemSource.Quarter_result_ts_desc=Quarter for timestamp (1=Jan/Feb/Mar)
SystemSource.Length_result=Length of string
SystemSource.Ucase_result=Upper case of string
SystemSource.Lcase_result=Lower case of string
SystemSource.Lower_result=Lower case of string
SystemSource.Upper_result=Upper case of string
SystemSource.UcaseClob_result=Upper case of clob
SystemSource.LcaseClob_result=Lower case of clob
SystemSource.LowerClob_result=Lower case of clob
SystemSource.UpperClob_result=Upper case of clob
SystemSource.Left_result=Left trimmed string
SystemSource.Right_result=Right trimmed string
SystemSource.Formattime_desc=Convert to string
SystemSource.Formattime_result_desc=Converted time
SystemSource.Formatdate_desc=Convert to string
SystemSource.Formatdate_result_desc=Converted date
SystemSource.Formattimestamp_desc=Convert to string
SystemSource.Formattimestamp_result_desc=Converted timestamp
SystemSource.Parsetime_desc=Convert string to time
SystemSource.Parsetime_result_desc=Time converted
SystemSource.Parsedate_desc=Convert string to date
SystemSource.Parsedate_result_desc=Date converted
SystemSource.Parsetimestamp_desc=Convert string to timestamp
SystemSource.Parsetimestamp_result_desc=Timestamp converted
SystemSource.Formatinteger_desc=Convert to Integer
SystemSource.Formatinteger_result_desc=Integer formatted
SystemSource.Formatlong_desc=Convert to Long
SystemSource.Formatlong_result_desc=Long formatted
SystemSource.Formatdouble_desc=Convert to Double
SystemSource.Formatdouble_result_desc=Double formatted
SystemSource.Formatfloat_desc=Convert to Float
SystemSource.Formatfloat_result_desc=Float formatted
SystemSource.Formatbiginteger_desc=Convert to Big integer
SystemSource.Formatbiginteger_result_desc=Big integer formatted
SystemSource.Formatbigdecimal_desc=Convert to Big decimal
SystemSource.Formatbigdecimal_result_desc=Big decimal formatted
SystemSource.Parseinteger_desc=Parse to Integer
SystemSource.Parseinteger_result_desc=Integer parsed
SystemSource.Parselong_desc=Parse to Long
SystemSource.Parselong_result_desc=Long parsed
SystemSource.Parsedouble_desc=Parse to Double
SystemSource.Parsedouble_result_desc=Double parsed
SystemSource.Parsefloat_desc=Parse to Float
SystemSource.Parsefloat_result_desc=Float parsed
SystemSource.Parsebiginteger_desc=Parse to Biginteger
SystemSource.Parsebiginteger_result_desc=Biginteger parsed
SystemSource.Parsebigdecimal_desc=parse to Bigdecimal
SystemSource.Parsebigdecimal_result_desc=Bigdecimal parsed
SystemSource.Arith_left_op=Left operand
SystemSource.Arith_right_op=Right operand
SystemSource.Abs_desc=Absolute value of number
SystemSource.Abs_arg=Number
SystemSource.Abs_result_desc=Absolute value of number
SystemSource.Rand_desc=Random Number
SystemSource.Rand_arg=Number
SystemSource.Rand_result_desc=Generated Random Number
SystemSource.uuid_desc=UUID
SystemSource.uuid_result_desc=type 4 UUID
SystemSource.trim_desc=Trim characters from the front and/or back of a string
SystemSource.trim_arg1=Trim specification, can be one of TRAILING, LEADING, or BOTH
SystemSource.trim_arg2=Trim character - must be a single character
SystemSource.trim_arg3=String to trim
SystemSource.trim_result=Trimmed string
SystemSource.Double_arg2=Number
SystemSource.Atan_arg1=Number parameter1 
SystemSource.Atan_arg2=Number parameter2 
SystemSource.Mod_desc=Modulus of two numbers
SystemSource.Mod_result_desc=Left operand mod right operand
SystemSource.Power_desc=Raise base to power
SystemSource.Power_arg1=Base
SystemSource.Power_arg2=Power
SystemSource.Power_result_desc=Base ^ Power
SystemSource.Round_desc=Round number to specified places
SystemSource.Round_arg1=Numbers
SystemSource.Round_arg2=Places
SystemSource.Round_result_desc=Number rounded to specified places
SystemSource.Sign_desc=Sign of number: 1 if number>0, 0 if number==0, -1 if number<0
SystemSource.Sign_arg1=Number
SystemSource.Sign_result_desc=Sign of number
SystemSource.Sqrt_desc=Square root of number
SystemSource.Sqrt_arg1=Number
SystemSource.Sqrt_result_desc=Square root of number
SystemSource.Timestampadd_d_desc=Add count number of interval type to date
SystemSource.Timestampadd_d_arg1=Interval type
SystemSource.Timestampadd_d_arg2=Count number
SystemSource.Timestampadd_d_arg3=Date type
SystemSource.Timestampadd_d_result_desc=Returned modified date
SystemSource.Timestampadd_t_desc=Add count number of interval type to time
SystemSource.Timestampadd_t_arg1=Interval type
SystemSource.Timestampadd_t_arg2=Count number
SystemSource.Timestampadd_t_arg3=Time type
SystemSource.Timestampadd_t_result_desc=Returned modified time
SystemSource.Timestampadd_ts_desc=Add count number of interval type to timestamp
SystemSource.Timestampadd_ts_arg1=Interval type
SystemSource.Timestampadd_ts_arg2=Count number
SystemSource.Timestampadd_ts_arg3=Timestamp type
SystemSource.Timestampadd_ts_result=Returned modified timestamp
SystemSource.Timestampdiff_ts_desc=Calculate estimated number of intervals between start and end timestamp
SystemSource.Timestampdiff_ts_arg1=Interval type
SystemSource.Timestampdiff_ts_arg2=Start timestamp
SystemSource.Timestampdiff_ts_arg3=End timestamp
SystemSource.Timestampdiff_ts_result_desc=Returns estimated number of intervals between start and end timestamp
SystemSource.TimestampCreate_desc=Create timestamp from a date and a time
SystemSource.TimestampCreate_arg1=Date
SystemSource.TimestampCreate_arg2=Time
SystemSource.TimestampCreate_result_desc=Timestamp built from date and time
SystemSource.Stringfunc_arg1=String
SystemSource.Clobfunc_arg1=Clob
SystemSource.Concat_desc=Concatenate left and right strings
SystemSource.Concat_arg1=Left string
SystemSource.Concat_arg2=Right string
SystemSource.Concat_result_desc=Concatenated strings
SystemSource.Concatop_desc=Concatenate left and right strings
SystemSource.Concatop_arg1=Left string
SystemSource.Concatop_arg2=Right string
SystemSource.Concatop_result_desc=Concatenated strings
SystemSource.Substring_desc=Substring of string, starting at index, of length
SystemSource.Substring_arg1=String
SystemSource.Substring_arg2=Starting index
SystemSource.Substring_arg3=Length of substring
SystemSource.Substring_result=Substring
SystemSource.Susbstring2_desc=Substring of string, starting at index, to end of string
SystemSource.Substring2_arg1=String
SystemSource.Substring2_arg2=Starting index
SystemSource.Substring2_result=Substring
SystemSource.Left_desc=First length characters of string
SystemSource.Left_arg1=String
SystemSource.Left_arg2=Length of substring
SystemSource.Left2_result=First length characters of string
SystemSource.Right_desc=Last length characters of string
SystemSource.Right_arg1=String
SystemSource.Right_arg2=Length of substring
SystemSource.Right2_result=Last length characters of string
SystemSource.Locate_desc=Find index of substring in string starting at index
SystemSource.Locate_arg1=Substring to find
SystemSource.Locate_arg2=String
SystemSource.Locate_arg3=Starting index
SystemSource.Locate_result=Index of substring or -1 if not found
SystemSource.Locate2_desc=Find index of substring in string
SystemSource.Locate2_arg1=Substring to find
SystemSource.Locate2_arg2=String
SystemSource.Locate2_result=Index of substring or -1 if not found
SystemSource.Replace_desc=Replace any substring in string with replacement
SystemSource.Replace_arg1=String
SystemSource.Replace_arg2=Substring to match
SystemSource.Replace_arg3=Replacement string
SystemSource.Replace_result=String with replacements
SystemSource.Repeat_desc=Repeat string with count times
SystemSource.Repeat_arg1=String
SystemSource.Repeat_arg2=Count times to repeat
SystemSource.Repeat_result=String repeated with count times
SystemSource.Space_desc=Repeat space count times
SystemSource.Space_arg1=Number of times to repeat
SystemSource.Space_result=Space repeated count times
SystemSource.Insert_desc=Insert string2 into string1 by deleting length characters at start and inserting string2
SystemSource.Insert_arg1=Initial string
SystemSource.Insert_arg2=Starting position
SystemSource.Insert_arg3=Number of characters to delete at start
SystemSource.Insert_arg4=String to insert
SystemSource.Insert_result=Inserted string
SystemSource.Ascii_desc=Takes a character and returns the ASCII or unicode integer representation
SystemSource.Ascii_arg1=String
SystemSource.Ascii_result=Character value
SystemSource.Ascii2_desc=Takes a character and returns the ASCII or unicode integer representation
SystemSource.Ascii2_arg1=Character
SystemSource.Ascii2_result=Character value
SystemSource.Chr_desc=Takes a unicode or ASCII value and returns the character representation
SystemSource.Chr_arg1=Code value
SystemSource.Chr_result=Character representation
SystemSource.Char_desc=Takes a unicode or ASCII value and returns the character representation
SystemSource.Char_arg1=Code value
SystemSource.Char_result=Character representation
SystemSource.Initcap_desc=Capitalizes each word (each letter after whitespace)
SystemSource.Initcap_arg1=Input string
SystemSource.Initcap_result=Result string
SystemSource.Lpad_desc=Pad the input string on the left to length
SystemSource.Lpad_arg1=String
SystemSource.Lpad_arg2=Padded length
SystemSource.Lpad_result=Padded string
SystemSource.Lpad3_desc=Pad the input string on the left to length with pad character
SystemSource.Lpad3_arg1=String
SystemSource.Lpad3_arg2=Padded length
SystemSource.Lpad3_arg3=Pad character
SystemSource.Lpad3_result=Padded string
SystemSource.Rpad1_desc=Pad the input string on the right to length
SystemSource.Rpad1_arg1=String
SystemSource.Rpad1_arg2=Padded length
SystemSource.Rpad1_result=Padded string
SystemSource.Rpad3_desc=Pad the input string on the right to length with pad character
SystemSource.Rpad3_arg1=String
SystemSource.Rpad3_arg2=Padded length
SystemSource.Rpad3_arg3=Pad character
SystemSource.Rpad3_result=Padded string
SystemSource.Translate_desc=Translate the input string by converting characters in the source string to characters in the destination string
SystemSource.Translate_arg1=String
SystemSource.Translate_arg2=Source string
SystemSource.Translate_arg3=Destination string
SystemSource.Translate_result=Translated string
SystemSource.Convert_arg1=Source value
SystemSource.Convert_arg2=Target type
SystemSource.Convert_result=Converted value
SystemSource.Context_desc=Evaluate XML expression in the context of a different mapping level
SystemSource.Context_arg1=XML context tag
SystemSource.Context_arg2=XML element
SystemSource.Context_result=Expression in higher context
SystemSource.Rowlimit_desc=Limit the number of rows from an XML mapping class
SystemSource.RowlimitException_desc=Limit the number of rows from an XML mapping class, throw Exception if passed
SystemSource.Rowlimit_arg1=XML tag in the scope of a mapping class
SystemSource.Rowlimit_result=Number of rows to be limited to
SystemSource.Decode1_desc=Map the input value to a comma-separated list of allowed output values
SystemSource.Decode1_arg1=Input column for decode
SystemSource.Decode1_arg2=The comma delimited String that represents the mapping between input column value and output values.
SystemSource.Decode1_result=The decoded value from the decode string.
SystemSource.Decode2_desc=Map the input value to a delimiter-separated list of allowed output values
SystemSource.Decode2_arg1=Input column for decode
SystemSource.Decode2_arg2=The comma delimited String that represents the mapping between input column value and output values.
SystemSource.Decode2_arg3=Decode String delimiter character(s)
SystemSource.Decode2_result=The decoded value from the decode string.
SystemSource.Lookup_desc=Look up a value in a cached code table
SystemSource.Lookup_arg1=Full group name of code table
SystemSource.Lookup_arg2=Short name of return element in code table
SystemSource.Lookup_arg3=Short name of key element in code table
SystemSource.Lookup_arg4=Key value to lookup
SystemSource.Lookup_result=Return value for key as specified in code table
SystemSource.User_desc=Get current user name 
SystemSource.User_result=Return user name
SystemSource.current_database_desc=Get current database name
current_database_result=Returns the catalog name
SystemSource.Env_desc=Get the value of an environment variable 
SystemSource.Env_varname=Name of the environment variable
SystemSource.Env_result=Return the string value of the environment variable
SystemSource.Nvl_desc=Specifies a value to use instead if the input value is null
SystemSource.Nvl_arg1=Value to check
SystemSource.Nvl_arg2=Returned if value is null
SystemSource.Nvl_result=Value or valueIfNull if value is null
SystemSource.Ifnull_desc=Specifies a value to use instead if the input value is null
SystemSource.Ifnull_arg1=Value to check
SystemSource.Ifnull_arg2=Returned if value is null
SystemSource.Ifnull_result=Value or valueIfNull if value is null
SystemSource.Formattime_arg1=Time input
SystemSource.Formattime_arg2=Time format
SystemSource.Formatdate_arg1=Date input
SystemSource.Formatdate_arg2=Date format
SystemSource.Formattimestamp_arg1=Timestamp input
SystemSource.Formattimestamp_arg2=Timestamp format
SystemSource.Parsetime_arg1=String input
SystemSource.Parsetime_arg2=Time format
SystemSource.Parsedate_arg1=String input
SystemSource.Parsedate_arg2=Date format
SystemSource.Parsetimestamp_arg1=String input
SystemSource.Parsetimestamp_arg2=Timestamp format
SystemSource.Formatnumber_arg1=String input
SystemSource.Formatnumber_arg2=Number format
SystemSource.Parsenumber_arg1=String input
SystemSource.Parsenumber_arg2=Parse format
SystemSource.Bitfunc_arg1=Integer parameter
SystemSource.Bitfunc2_arg1=First integer
SystemSource.Bitfunc2_arg2=Second integer
SystemSource.Convert_desc=Convert from {0} to target type
SystemSource.xpathvalue_description=Retrieve the first match content for an XPath statement
SystemSource.xpath_param1=Source document
SystemSource.xpath_param2=XPath expression
SystemSource.xpathvalue_result=Single result
SystemSource.xsltransform_description=Transform the document with the given stylesheet. 
SystemSource.xsltransform_param1=Source document
SystemSource.xsltransform_param2=XSL stylesheet
SystemSource.xsltransform_result=Clob result

SystemSource.xmlconcat_description=Concat XML types. 
SystemSource.xmlconcat_param1=First element
SystemSource.xmlconcat_param2=Other elements
SystemSource.xmlconcat_result=XML result

SystemSource.xmlcomment_description=Create an XML comment. 
SystemSource.xmlcomment_result=XML comment.
SystemSource.xmlcomment_param1=The comment text.

SystemSource.xmltext_description=Create an XML text. 
SystemSource.xmltext_result=XML text.
SystemSource.xmltext_param1=The text.

SystemSource.xmlpi_description=Create an XML processing instruction. 
SystemSource.xmlpi_param1=Target
SystemSource.xmlpi_param2=Content
SystemSource.xmlpi_result=XML result
SystemSource.jsonToXml_description=Create an XML document representing the given JSON. 
SystemSource.jsonToXml_param1=Root element name
SystemSource.jsonToXml_param2=JSON
SystemSource.jsonToXml_result=XML result
SystemSource.modifyTimeZone_description=Modify the time zone of this timestamp by adding or subtracting time
SystemSource.modifyTimeZone_param1=Timestamp
SystemSource.modifyTimeZone_param2=Starting time zone
SystemSource.modifyTimeZone_param3=Ending time zone
SystemSource.modifyTimeZone_result=Original timestamp with time added or subtracted to give the equivalent time in a different time zone
SystemSource.CommandPayload_desc0=Retrieve the command payload as a string
SystemSource.CommandPayload_desc1=Retrieve a property from the command payload, passed as a Properties object
SystemSource.CommandPayload_result=The property value from the command payload 
SystemSource.CommandPayload_property=The property name
SystemSource.hasRole_description=Determine if the caller has the given role
SystemSource.hasRole_param1=Role type
SystemSource.hasRole_param2=Role name
SystemSource.hasRole_result=whether the caller is in the given role
SystemSource.from_unixtime_description=Return the Unix timestamp (in seconds) as a Timestamp value 
SystemSource.from_unixtime_param1=Unix timestamp (in seconds)
SystemSource.from_unixtime_result=Timestamp value
SystemSource.nullif_description=Equivalent to case when (param1 = param2) then null else param1 
SystemSource.nullif_param1=First parameter
SystemSource.nullif_result=null if the parameters are equivalent else param1
SystemSource.coalesce_description=Returns the first non-null parameter
SystemSource.coalesce_param1=parameter
SystemSource.coalesce_result=The first non-null parameter
SystemSource.to_chars_description=Converts a Blob to the appropriate chars
SystemSource.to_chars_param1=Blob
SystemSource.to_chars_param2=The encoding
SystemSource.to_chars_param3=well-formed
SystemSource.to_chars_result=Clob char rep
SystemSource.to_bytes_description=Converts a Clob to the appropriate bytes
SystemSource.to_bytes_param1=Clob
SystemSource.to_bytes_param2=The encoding
SystemSource.to_bytes_param3=well-formed
SystemSource.to_bytes_result=byte representation Blob
SystemSource.session_id_desc=Returns the session id of the currently logged in user 
SystemSource.session_id_result=Returns the session id of the currently logged in user
SystemSource.node_id_desc=Returns the node id 
SystemSource.node_id_result=Returns the node id
SystemSource.endswith_desc=Find if string has ending character sequence as defined in substring
SystemSource.endswith_arg1=substring
SystemSource.endswith_arg2=string
SystemSource.endswith_result=true if string ends with character sequence of substring; false otherwise.

SystemSource.jsonparse_desc=Validates that the text is legal JSON
SystemSource.jsonparse_param1=a Clob or Blob that should contain JSON text
SystemSource.jsonparse_param2=indicates if the JSON is well-formed, such that validation is by-passed.
SystemSource.jsonparse_result=a Clob result known to be valid JSON

SystemSource.jsonarray_desc=Returns a JSON array of the values passed in.
SystemSource.jsonarray_param1=any number of JSON values or values convertable to JSON
SystemSource.jsonarray_result=a JSON array of values

SystemSource.teiid_session_get_desc=Return the current session variable value.
SystemSource.teiid_session_get_param1=the string key
SystemSource.teiid_session_get_result=the current value

SystemSource.teiid_session_set_desc=Set the session variable value.
SystemSource.teiid_session_set_param1=the string key
SystemSource.teiid_session_set_param2=the value
SystemSource.teiid_session_set_result=the previous value if one was set

SystemSource.mvstatus_param1=Schema Name
SystemSource.mvstatus_param2=View Name
SystemSource.mvstatus_param3=Current validity of matview table contents
SystemSource.mvstatus_param4=Current load status of matview table. 
SystemSource.mvstatus_param5=Action to be taken by the Teiid when status is not valid
SystemSource.mvstatus_result=true if the view is valid to use
SystemSource.mvstatus_description=(internal use only) Used for materialization status table status check.

SystemSource.tokenize_param1=String to Tokenize
SystemSource.tokenize_param2=Delimiter to tokenize the string by
SystemSource.tokenize_result=Return of the string array
SystemSource.tokenize_description=Tokenizes the given string

SystemSource.st_astext_description=Convert a Geometry to WTK
SystemSource.st_astext_param1=Geometry
SystemSource.st_astext_result=WKT Clob

SystemSource.st_asbinary_description=Convert a Geometry to WKB
SystemSource.st_asbinary_param1=Geometry
SystemSource.st_asbinary_result=WKB Blob

SystemSource.st_geomfrombinary_description=Create a Geometry from WKB
SystemSource.st_geomfrombinary_param1=WKB Blob
SystemSource.st_geomfrombinary_param2=SRID
SystemSource.st_geomfrombinary_result=Geometry

SystemSource.st_geomfromwkb_description=Create a Geometry from WKB
SystemSource.st_geomfromwkb_param1=WKB Blob
SystemSource.st_geomfromwkb_param2=SRID
SystemSource.st_geomfromwkb_result=Geometry

SystemSource.st_geomfromtext_description=Create a Geometry from WKT
SystemSource.st_geomfromtext_param1=WKT Clob
SystemSource.st_geomfromtext_param2=SRID
SystemSource.st_geomfromtext_result=Geometry

SystemSource.st_intersects_description=Test if the two Geometry values intersect
SystemSource.st_intersects_param1=Geometry1
SystemSource.st_intersects_param2=Geometry2
SystemSource.st_intersects_result=true if the values intersect

SystemSource.st_contains_description=Test if Geometry1 contains Geometry2
SystemSource.st_contains_param1=Geometry1
SystemSource.st_contains_param2=Geometry2
SystemSource.st_contains_result=true if Geometry1 contains Geometry2

SystemSource.st_crosses_description=Test if Geometry1 crosses Geometry2
SystemSource.st_crosses_param1=Geometry1
SystemSource.st_crosses_param2=Geometry2
SystemSource.st_crosses_result=true if Geometry1 crosses Geometry2

SystemSource.st_disjoint_description=Test if Geometry1 and Geometry2 are disjoint
SystemSource.st_disjoint_param1=Geometry1
SystemSource.st_disjoint_param2=Geometry2
SystemSource.st_disjoint_result=true if Geometry1 and Geometry2 are disjoint

SystemSource.st_distance_description=Return the distance between Geometry1 and Geometry2
SystemSource.st_distance_param1=Geometry1
SystemSource.st_distance_param2=Geometry2
SystemSource.st_distance_result=The distance between Geometry1 and Geometry2

SystemSource.st_overlaps_description=Test if Geometry1 and Geometry2 overlap
SystemSource.st_overlaps_param1=Geometry1
SystemSource.st_overlaps_param2=Geometry2
SystemSource.st_overlaps_result=true if Geometry1 and Geometry2 overlap

SystemSource.st_touches_description=Test if Geometry1 and Geometry2 touch
SystemSource.st_touches_param1=Geometry1
SystemSource.st_touches_param2=Geometry2
SystemSource.st_touches_result=true if Geometry1 and Geometry2 touch

SystemSource.st_asgeojson_description=Convert the Geometry to geojson 
SystemSource.st_asgeojson_param1=Geometry
SystemSource.st_asgeojson_result=geojson clob  

SystemSource.st_asgml_description=Convert the Geometry to GML 
SystemSource.st_asgml_param1=Geometry
SystemSource.st_asgml_result=gml clob  

SystemSource.st_asewkt_description=Convert the Geometry to EWKT 
SystemSource.st_asewkt_param1=Geometry
SystemSource.st_asewkt_result=ewkt clob

SystemSource.st_askml_description=Convert the Geometry to KML 
SystemSource.st_askml_param1=Geometry
SystemSource.st_askml_result=kml clob

SystemSource.st_asgeojson_description=Convert the Geometry to GeoJSON 
SystemSource.st_asgeojson_param1=Geometry
SystemSource.st_asgeojson_result=GeoJSON clob  

SystemSource.st_geomfromgeojson_description=Convert GeoJSON to Geometry 
SystemSource.st_geomfromgeojson_param1=JSON Clob
SystemSource.st_geomfromgeojson_param2=SRID
SystemSource.st_geomfromgeojson_result=Geometry  

SystemSource.st_geomfromgml_description=Convert GML to Geometry 
SystemSource.st_geomfromgml_param1=GML Clob
SystemSource.st_geomfromgml_param2=SRID
SystemSource.st_geomfromgml_result=Geometry

SystemSource.st_simplify_description=Simplify according to the Douglas Peucker algorithm 
SystemSource.st_simplify_param1=Geometry
SystemSource.st_simplify_param2=tolerance
SystemSource.st_simplify_result=Geometry value simplified according to the Douglas Peucker algorithm

SystemSource.st_force_2d_description=Force the geometry to a 2d representation only having X and Y corrodinates 
SystemSource.st_force_2d_param1=Geometry
SystemSource.st_force_2d_result=2d Geometry value

SystemSource.st_envelope_description=Return the 2d bounding box for the given value 
SystemSource.st_envelope_param1=Geometry
SystemSource.st_envelope_result=2d bounding box Geometry value

SystemSource.st_within_description=Return true if Geometry1 is completely inside Geometry2 
SystemSource.st_within_param1=Geometry1
SystemSource.st_within_param2=Geometry2
SystemSource.st_within_result=Boolean

SystemSource.st_dwithin_description=Return true if Geometry1 is within Distance of Geometry2 
SystemSource.st_dwithin_param1=Geometry1
SystemSource.st_dwithin_param2=Geometry2
SystemSource.st_dwithin_param3=Distance
SystemSource.st_dwithin_result=Boolean

SystemSource.st_extent_description=Return the 2d bounding box around all Geometry values
SystemSource.st_extent_param1=Geometry
SystemSource.st_extent_result=2d bounding box Geometry value

SystemSource.st_hasarc_description=Return true if the Geometry has a circular string
SystemSource.st_hasarc_param1=Geometry
SystemSource.st_hasarc_result=Boolean

SystemSource.&&_description=Return true if Geometry1's 2d bounding box intersects Geometry2's 2D bounding box.
SystemSource.&&_param1=Geometry1
SystemSource.&&_param2=Geometry2
SystemSource.&&_result=Boolean

SystemSource.st_geomfromewkb_description=Create a Geometry from EWKB
SystemSource.st_geomfromewkb_param1=EWKB Blob
SystemSource.st_geomfromewkb_result=Geometry

SystemSource.st_geomfromewkt_description=Create a Geometry from EWKT
SystemSource.st_geomfromewkt_param1=EWKT Clob
SystemSource.st_geomfromewkt_result=Geometry

SystemSource.st_asewkb_description=Convert a Geometry to EWKB
SystemSource.st_asewkb_param1=Geometry
SystemSource.st_asewkb_result=EWKB Blob

SystemSource.st_transform_description=Convert Geometry to another coordinate system
SystemSource.st_transform_param1=Geometry
SystemSource.st_transform_param2=SRID
SystemSource.st_transform_result=Geometry

SystemSource.st_equals_description=Test if two geometries are topologically equvialent.  
SystemSource.st_equals_param1=Geometry 1
SystemSource.st_equals_param2=Geometry 2
SystemSource.st_equals_result=True if the geometries are equal.

SystemSource.st_setsrid_description=Set the srid, but does not transform the geometry value in any way.  
SystemSource.st_setsrid_param1=Geometry
SystemSource.st_setsrid_param2=srid
SystemSource.st_setsrid_result=Geometry with the specified srid

SystemSource.st_srid_description=Get the srid.  
SystemSource.st_srid_param1=Geometry
SystemSource.st_srid_result=The srid for the geomety.
    
TEIID30350=Element ''{0}'' not found.
TEIID30351=Group ''{0}'' not found.
TEIID30341=Function {0} is marked in the function metadata as a function that must be evaluated at the source.
TEIID30328=Unable to evaluate {0}: {1}
XMLSerialize.resolvingError=XMLSerialize is valid only for XML expressions: {0}
TEIID30336=XMLSerialize: data exception - not an xml document
TEIID30333=Error evaluating XMLQuery: {0}
TEIID30145=Unable to convert procedural parameter {0} of type {1} to expected type {2}
TEIID30139=Procedure {0} does not have a return value.
TEIID30144=OUT/RETURN parameter {0} with type {1} cannot be converted to {2}
TEIID30100=Expected dynamic command sql to be of type STRING instead of type {0}.
UnionQueryResolver.type_conversion=The Expression {0} used in a nested UNION ORDER BY clause cannot be implicitly converted from type {1} to type {2}.
ValidationVisitor.select_into_no_implicit_conversion=There is no implicit conversion between the source element type ({0}) and the target element type ({1}) at position {2} of the query: {3}
ValidationVisitor.excpet_intersect_all=EXCEPT ALL and INTERSECT ALL are currently unsupported
ValidationVisitor.element_updates_not_allowed=Metadata does not allow updates on the element: {0}
ValidationVisitor.invalid_batch_command=Only INSERT, UPDATE, DELETE, and SELECT ... INTO statements are allowed within a batch.
ValidationVisitor.badlimit2=The row limit/offset in the LIMIT clause must be >= 0
ValidationVisitor.badlimit1=The row limit/offset in the LIMIT clause must a positive integer or an effectively constant integer expression.
ValidationVisitor.invalid_scalar_group_reference=Cannot reference a scalar group as a table: {0}
ValidationVisitor.select_into_wrong_elements=Wrong number of elements being SELECTed INTO the target table. Expected {0} elements, but was {1}.
ValidationVisitor.user_defined_aggregate_as_function=Cannot call user defined aggregate function {0} as a function.  To disambiguate, please include an ALL keyword - {1}(ALL ...)
ValidationVisitor.uda_not_allowed=User defined aggregate function does not allow {0}: {1}
ValidationVisitor.uda_analytic=User defined aggregate function is analytic and must be windowed: {0} 
SimpleQueryResolver.Query_was_redirected_to_Mat_table=The query against {0} was redirected to the materialization table {1}.
SimpleQueryResolver.ambiguous_all_in_group=The symbol {0} refers to more than one group defined in the FROM clause.
TEIID30114=Cannot access procedure {0} using table semantics since the parameter and result set column names are not all unique.
TEIID30101=Duplicate WITH clause item name {0}
TEIID30102=The number of WITH clause columns for item {0} do not match the query expression
QueryResolver.invalid_xpath=Invalid xpath value: {0}
TEIID30066=The definition for {0} does not have the correct number of projected symbols.  Expected {1}, but was {2}.
QueryResolver.wrong_view_symbol_type=The definition for {0} has the wrong type for column {1}.  Expected {2}, but was {3}.
TEIID30125=Cursor or exception group names cannot begin with "#" as that indicates the name of a temporary table: {0}.
SimpleQueryResolver.materialized_table_not_used=The query against {0} did not use materialization table {1} due to the use of OPTION NOCACHE.
SimpleQueryResolver.procedure_cache_used=Procedure caching will be used for {0}.
SimpleQueryResolver.procedure_cache_not_usable=Procedure caching will not be used for {0} since {1}.
SimpleQueryResolver.procedure_cache_not_used=Procedure caching will not be used for {0} due to the use of OPTION NOCACHE.
ValidationVisitor.groupby_subquery=Expressions used in a GROUP BY clause cannot be constant and must not contain subqueries: "{0}".
ValidationVisitor.filter_subquery=Expressions used in a FILTER clause or a window function must not contain subqueries nor outer references: "{0}".
ValidationVisitor.ranking_requires_order_by=The window ranking functions RANK, DENSE_RANK, and ROW_NUMBER require the use of an ORDER BY clause in the window specification: {0}.
ValidationVisitor.window_order_by=The window specification for an ordered aggregate cannot use an ORDER BY clause: {0}.
ValidationVisitor.Procedure_has_group_self_reference=Procedure cannot have a Group reference to itself.
ExpressionEvaluator.Expected_props_for_payload_function=Unable to evaluate {0}: expected Properties for command payload but got object of type {1}
ValidationVisitor.The_rowlimit_function_cannot_be_used_in_a_non-XML_command=The ''rowlimit'' and ''rowlimitexception'' functions cannot be used in a non-XML command
ValidationVisitor.The_context_function_cannot_be_used_in_a_non-XML_command=The ''context'' function cannot be used in a non-XML command
ValidationVisitor.0=The ''rowlimit'' and ''rowlimitexception'' functions cannot be nested within other functions.
ValidationVisitor.1=The ''rowlimit'' and ''rowlimitexception'' functions operand must be a constant nonnegative integer.
ValidationVisitor.2=The ''rowlimit'' and ''rowlimitexception'' functions arg must be an XML node symbol
ValidationVisitor.3=''Rowlimit'' and ''rowlimitexception'' functions can only be used within a compare criteria which is entirely a single conjunct.
ValidationVisitor.Context_function_nested=Context functions cannot be nested
ERR.015.004.0036= First argument in ''context'' must be the name of a node in the XML document model.  Found Object {0} of Class {1}
TEIID30141=Invalid param name(s): {0}.  Name(s) of params without explicit values: {1}
TEIID30138=Duplicate named param ''{0}''
TEIID30089=Required parameter ''{0}'' has no value was set or is an invalid parameter.
TEIID30091=Cannot create group ''{0}'' with multiple columns named ''{1}''
TEIID30090=Exception converting value {0} of type {1} to expected type {2}
TEIID30086=ORDER BY expression ''{0}'' cannot be used with a set query.
TEIID30088=Unrelated order by column {0} cannot be used in a SET query, with SELECT DISTINCT, or GROUP BY
TEIID30133=If any symbol in SELECT clause is ''xml'' or group.''xml'' , then no other element is allowed.
TEIID30123=The datatype for the expression was not resolvable.
TEIID30117=Cannot create temporary table "{0}". Local temporary tables must be created with unqualified names.
ValidationVisitor.drop_of_nontemptable=Cannot drop a non temporary table "{0}".
ValidationVisitor.drop_of_globaltemptable=Cannot drop a global temporary table "{0}".							
ValidationVisitor.orderby_expression_xml=XML queries cannot order by an expression.
ValidationVisitor.text_table_invalid_width=For a fixed width text table, all columns must have width set.
ValidationVisitor.text_table_width=Fixed width text tables should not have DELIMITER, QUOTE, ESCAPE, SELECTOR based columns, nor HEADER specified.
ValidationVisitor.text_table_selector_required=The use of a column SELECTOR requires the use of a TEXTTABLE SELECTOR of a different value.
ValidationVisitor.text_table_negative=Text table WIDTH, HEADER, SELECTOR position, or SKIP values must not be negative. 
ValidationVisitor.text_table_delimiter=Text DELIMITER cannot be the same as the QUOTE or ESCAPE characters.
ValidationVisitor.text_table_newline=Text DELIMITER, QUOTE, and ESCAPE characters cannot be the row delimiter character.
ValidationVisitor.xml_namespaces=At most only one NO DEFAULT or DEFAULT namespace may be specified.
ValidationVisitor.xml_namespaces_reserved=The namespaces xmlns and xml are reserved.
ValidationVisitor.xml_namespaces_null_uri=The null uri, or empty string, is not allowed as the uri value.
ValidationVisitor.xml_namespaces_invalid=The namespace prefix {0} is not a valid NCName
ValidationVisitor.xml_attributes_reserved=The namespace xmlns is reserved.
ValidationVisitor.xml_content_type=The expression "{0}" is an OBJECT or ARRAY type, which cannot be used as an XML content value.
ValidationVisitor.text_content_type=The expression "{0}" is an OBJECT, BINARY, or ARRAY type, which cannot be used as an TEXT content value.
ValidationVisitor.xml_invalid_qname=The qname "{0}" is invalid.
ValidationVisitor.context_item_type=XMLTABLE, XMLEXISTS, or XMLQUERY PASSING context item must be an XML value.
ValidationVisitor.passing_requires_name=XMLTABLE, XMLEXISTS, or XMLQUERY PASSING clause can only contain at most 1 unnamed item.
ValidationVisitor.duplicate_passing=XMLTABLE, XMLEXISTS, XMLQUERY, or OBJECTTABLE PASSING clause duplicate item name "{0}".
ValidationVisitor.ValidationVisitor.context_item_not_allowed=OBJECTTABLE does not support passing unnamed items.
ValidationVisitor.one_ordinal=Only one FOR ORDINALITY column is allowed for an XMLTABLE.
ValidationVisitor.invalid_default=XMLTABLE or OBJECTTABLE DEFAULT expression is invalid: "{0}"
ValidationVisitor.context_required=The XQuery requires a context item, but none exists in the PASSING clause.
ValidationVisitor.xmlparse_type=XMLPARSE expects a STRING, CLOB, VARBINARY, or BLOB value.
ValidationVisitor.invalid_encoding=Encoding {0} is not valid.
ValidationVisitor.subquery_insert=SELECT INTO should not be used in a subquery.
ValidationVisitor.xmlcast_types=XMLCAST can only be used to cast to and from XML types {0}
MappingLoader.unknown_node_type=Unknown Node Type "{0}" being loaded by the XML mapping document.
MappingLoader.invalid_criteria_node=Invalid criteria node found; A criteria node must have criteria specified or it must be a default node.
NoCriteria=Failed to add the node, because Criteria nodes must have "criteria" value set on them, or they need to be the default node.
TEIID30457=Found recursive node {0} without recursive root node.
TEIID30152=Failed to evaluate XQuery expression; Please check the query and correct errors in syntax or usage.
TEIID30154=Could not compile XQuery "{0}"; Please check the query for syntax or usage errors.
TEIID30155=Column "{0}" has an invalid path expression: {1}
TEIID30151=Error building Source for context item.
MappingLoader.invalidName=Null or blank name found in the Mapping Document, Must have valid name. Re-build the VDB
QueryUtil.wrong_number_of_values=The number of bound values ''{0}'' does not match the number of parameters ''{1}'' in the prepared statement.
QueryUtil.Error_executing_conversion_function_to_convert_value=Error converting parameter number {0} with value "{1}" of {2} to expected type {3}.
TEIID30128=Cannot convert insert query expression projected symbol ''{0}'' of type {1} to insert column ''{2}'' of type {3}
SetClause.resolvingError=Cannot set symbol ''{1}'' with expected type {2} to expression ''{0}''
TEIID30029=Unexpected format encountered for max or min value

TEIID30009=Reached maximum thread count "{0}" for worker pool "{1}" with a queue size high of "{2}". Queued work waited {3} ms prior to executing. To avoid queuing of work you may consider increasing "max-threads" or decreasing the "max-active-plans" in the "standalone-teiid.xml" file.   
TEIID30021=Uncaught exception processing work

TEIID30238=Duplicate key on {0}
TEIID30236=Null value is not allowed for column {0}
ValidationVisitor.group_in_both_dep=Table specified in both dependent and independent queries ''{0}''
XMLQuery.resolvingError=Failed to resolve the query ''{0}''
TEIID30085=Invalid order by at {0}

TEIID30244=The batch contained an unrecognized command: {0}
TEIID30272=Error getting modelID
TEIID30213=Cannot find namespace URI for namespace {0} of element {1}

TEIID30288=The XML document element {0} is not mapped to data and cannot be used in the ORDER BY clause: {1}
XMLPlanner.The_rowlimit_parameter_{0}_is_not_in_the_scope_of_any_mapping_class=The ''rowlimit'' or ''rowlimitexception'' function parameter ''{0}'' is not an XML node within the scope of any mapping class.
XMLPlanner.Criteria_{0}_contains_conflicting_row_limits=The criteria ''{0}'' contains conflicting row limits for an XML mapping class.
TEIID30174=Failed to rewrite the command: {0}
TEIID30192=Unexpectedly reached the end of the batched update counts at {0}, expected {1}.
TEIID30211=The row limit {0} has been exceeded for XML mapping class {1}.
AddNodeInstruction.element__1=element
AddNodeInstruction.Unable_to_add_xml_{0}_{1},_namespace_{2},_namespace_declarations_{3}_3=Unable to add xml {0} {1}, namespace {2}, namespace declarations {3}
TEIID30160=The request {0} has been cancelled.
VariableSubstitutionVisitor.Input_vars_should_have_same_changing_state=INPUT variables used in the expression should all have same CHANGING state: {0}

ExecDynamicSqlInstruction.0=Evaluated dynamic SQL expression value was null.
TEIID30347=There is a recursive invocation of group ''{0}''. Please correct the SQL.
ExecDynamicSqlInstruction.4=The dynamic sql string contains an incorrect number of elements.
ExecDynamicSqlInstruction.6=The datatype ''{0}'' for element ''{1}'' in the dynamic SQL cannot be implicitly converted to ''{2}''.
TEIID30168=Couldn''t execute the dynamic SQL command "{0}" with the SQL statement "{1}" due to: {2}

TEIID30229=Temporary table "{0}" already exists.
TEIID30226=Temporary table "{0}" does not exist.

TEIID30295=Cannot create a query for MappingClass with user criteria {0}
TEIID30296=Conjunct "{0}" has no relationship with target context {1}.
TEIID30297=Conjunct "{0}" has a non-simple relationship to its parent through context {1}.

TEIID30308=Staging table criteria cannot contian context functions
TEIID30307=Staging table criteria {0} was not specified against a single staging table
TEIID30302=Element {0} is not in the scope of the context {1}
TEIID30301=Element {0} is not a valid data node
TEIID30216=Results for the mapping class {0} are not found;
TEIID30270=No valid criteria specified for procedure parameter {0}
TEIID30164=The procedure parameter {0} is not nullable, but is set to null.

TEIID30042=Error creating {0}
TEIID30048=Error reading {0} {1}
TEIID30040=No directory specified for the file storage manager.
TEIID30041={0} is not a valid storage manager directory.
FileStoreageManager.space_exhausted=Max buffer space of {2} bytes has been exceed with an allocation of {0} bytes for a total of {1}.  The current operation will be aborted.

TEIID30175=No value found for column {0} in the row ending on text line {1} in {2}.
TEIID30176=Could not convert value for column {0} in the row ending on text line {1} in {2}.
TEIID30181=HEADER entry missing for column name {0} in {1}.
TEIID30182=Text parse error: Unclosed qualifier at end of text in {0}.
TEIID30184=Text parse error: Unknown escape sequence \\{0} in text line {1} in {2}.
TEIID30178=Text parse error: Delimited line is longer than the expected max of {2} on text line {0} in {1}.
TEIID30179=Text parse error: Could not read data in {0}
ValidationVisitor.fixed_option=NO ROW DELIMITER can only be used in fixed parsing mode.  

TEIID30170=Error evaluating XQuery row context for XMLTable: {0}
TEIID30172=Error evaluating XMLTable column path expression for column: {0}
TEIID30171=Unexpected multi-valued result was returned for XMLTable column "{0}".  Path expressions for non-XML type columns should return at most a single result.

TEIID30015=Failed to load materialized view table {0}.
TEIID30014=Loaded materialized view table {0} with row count {1}.
TEIID30013=Loading materialized view table {0}
TempTableDataManager.cache_load=Loaded materialized view table {0} from cached contents from another clustered node.
TEIID30233={0} does not target an internal materialized view.
TEIID30230=Materialized view {0} cannot have a row refreshed since there is no primary key.
TEIID30231=Materialized view {0} cannot have a row refreshed because the number of primary key elements {1} does not match the number of key arguments {2}.
TEIID30232=Materialized view {0} cannot have a row refreshed because it''s cache hint did not specify \"updatable\".
TEIID30012=Refreshing row {1} for materialized view {0}.
TEIID30303=No root node found.

BasicInterceptor.ProcessTree_for__4=ProcessTree for

TEIID30482=Connector is not in OPEN state
ConnectorManagerImpl.Initializing_connector=Initializing connector {0}
TEIID30024=AtomicRequest {0} failed to cancel.

ConnectorWorker.MaxResultRowsExceed=The number of result rows has exceeded the maximum result rows "{0}"
TEIID30004=Connector returned a 0 row non-last batch: {0}.
TEIID30005=rollback failed for requestID={0}
ConnectorWorker.process_failed=Connector worker process failed for atomic-request={0}
TEIID30479=Could not process stored procedure results for {0}.  Expected {1} result set columns, but was {2}.  Please update your models to allow for stored procedure results batching.
TEIID30554=A single source is not assigned to model {0} in VDB name {1}.{2}
TEIID30548=Property value length exceeds max of {0}.
TEIID30549=Could not find a metadata record with uuid {0}.
TEIID30489=Unable to load metadata for VDB {0} {1}.
DQPCore.Clearing_prepared_plan_cache=Clearing prepared plan cache
DQPCore.Clearing_prepared_plan_cache_for_vdb=Clearing prepared plan cache for vdb {0}.{1} 
DQPCore.clearing_resultset_cache=Clearing the resultset cache for vdb {0}.{1}
TEIID30495=The request {0} has been closed.
DQPCore.The_atomic_request_has_been_cancelled=The atomic request {0} has been canceled.
DQPCore.failed_to_cancel=Failed to Cancel request {0}
TEIID30006=The maxActivePlan {0} setting should never be greater than the max processing threads {1}.

TEIID30028=Failed to properly rollback autowrap transaction properly
TEIID30019=Unexpected exception for request {0}
TEIID30020=Processing exception for request {1} ''{0}''. Originally {2} {3}.
stack_info=\ Enable more detailed logging to see the entire stacktrace.

# #query (018.005)
ERR.018.005.0095 = User <{0}> is not entitled to action <{1}> for 1 or more of the groups/elements/procedures.

# services (003)
TEIID30032=No lob manager found.
TEIID30033=No existing lob reference found.
TEIID30034=Expected lob to have a reference value.
TEIID30035=Wrong type of data found or no data found; expecting streamable object from the buffer manager.
TEIID30491=Bind variables (represented as "?") were found but are allowed only in prepared or callable statements.
Request.no_result_set=The query does not return a result set, executeQuery should not be used.
Request.result_set=The query is not return an update count, executeUpdate should not be used.
TEIID30035=Wrong type of data found or no data found; expecting streamable object from the buffer manager.
TEIID30027=An error occurred during streaming of Lob Chunks to Client.

TransactionServer.no_transaction=No transaction found for client {0}.
TEIID30525=Concurrent enlistment in global transaction {0} is not supported.
TEIID30521=Expected an existing global transaction {0} but there was none for client {1}
TEIID30520=Unknown END flags
TEIID30521=No global transaction found for {0}.
TEIID30524=Client is not currently enlisted in transaction {0}.
TEIID30518=Cannot resume, transaction {0} was not suspended by client {1}.
TEIID30522=Global transaction {0} already exists.
TEIID30505=Suspended work still exists on transaction {0}.
TransformationMetadata.does_not_exist._1=does not exist.
TEIID30363=Error trying to read virtual document {0}, with body \n{1}
TransformationMetadata.Unknown_support_constant___12=Unknown support constant: 
TEIID30359={1} plan could not be found for physical group {0}
TEIID30364=Error trying to read schemas for the document/table : {0}
TransformationMetadata.Invalid_type=Invalid type: {0}.
TransformationMetadata.does_not_exist._1=does not exist.
TransformationMetadata.0={0} ambiguous, more than one entity matching the same name
TEIID30363=Error trying to read virtual document {0}, with body \n{1}
TransformationMetadata.Unknown_support_constant___12=Unknown support constant: 
TEIID30359=QueryPlan could not be found for physical group
TEIID30364=Error trying to read schemas for the document/table :
TransformationMetadata.Invalid_type=Invalid type: {0}.
TEIID30497=No connector with jndi-name {0} found for Model {1} with source name {2}
translator_not_found=Translator {0} not accessible.
datasource_not_found=Data Source {0} not accessible.

TEIID30008=Caching command "{0}" at a session level, but less deterministic functions were evaluated. 
not_found_cache=Failed to restore results, since batch entries were missing.  The entry will be re-populated. 
TEIID30025=Failed to restore results.  The entry will be re-populated.
failed_to_cache=Failed to store the result set contents to disk.
TEIID30481=Failed to find the Connection Factory with JNDI name {0}. Please check the name or deploy the Connection Factory with specified name.
TEIID31097=Metadata load requires a connection factory

TEIID30254=Source UPDATE or DELETE command "{0}" contains non-pushdown constructs that cannot be simplified into a compensating action.
TEIID31124=Recursive plan detected.  Command type {0} was already issued against {1}.  Planning cycle: {2}

Translate.error=Cannot translate criteria "{0}", it is not matched by selector "{1}"

TEIID30561=A multisource plan must execute a procedure returning parameter values exactly once: {0}

TEIID30546=Unknown log level: {0}, expected one of {1}
TEIID30190=Could not convert value for column: {0}

TEIID30116={0} is not a valid view.
ValidationVisitor.not_a_procedure={0} is not a valid virtual procedure.

TEIID30158={0} does not have an INSTEAD OF trigger defined for {1}.
TEIID30156={0} already has an INSTEAD OF trigger defined for {1}.
error_refresh=error occurred during refreshing the materialized view entries for view {0}

TEIID30003=Without required support property {0}, pushdown will not be enabled for {1} on translator {2}.
full_state_not_supported=Full state transfer is not supported in the resultset cache distribution
TEIID30258=Expression(s) {0} cannot be pushed to source.
TEIID30259=Cannot introduce new expressions {0} in duplicate removal.

TEIID30011=Not performing dependent join using source {0}, since the number of distinct rows for expression {1} exceeds {2}.  You should ensure that your source statistics, including column distinct value counts, accurately reflect the source or use a MAKE_DEP hint to force the join.
TEIID30001=Max block number exceeded by {0} {1}. Increase the maxStorageObjectSize to support larger storage objects.  Alternatively you could make the processor batch size smaller.
TEIID30002=Error persisting, attempts to read {0} {1} later will result in an exception. 
TEIID30016=Error transferring block {0} of cache group {1} to storage 
TEIID30017=Error persisting batch, attempts to read batch {0} later will result in an exception
TEIID30018=Error processing cancellation task.
TEIID30022=Error performing defrag
TEIID30023=Error performing defrag truncate
TEIID30026=Failed to cancel {0}
TEIID30030=Unhandled exception disposing reusable execution
TEIID30031=Unhandled exception calling CommandListener
TEIID30562=Cache system has been shutdown
TEIID30476=Request canceled
TEIID30555=No batch values sent for prepared batch update
TEIID30193=Failed to move UP in document
TEIID30059=Out of blocks of size {0}
TEIID30045=Max block number exceeded.  You could try making the processor batch size smaller.
TEIID30161=Query timed out
TEIID30269=Unexpected Exception
TEIID30153=Could not define global variable

TEIID30072= The expressions in this criteria are being compared but are of differing types ({0} and {1}) and no implicit conversion is available: {2}
TEIID30097= Unable to resolve LOOKUP function group: {0}
TEIID30098= Unable to resolve return element referred to by LOOKUP function: {0}
TEIID30118=Cannot create temporary table "{0}". An object with the same name already exists.
TEIID30121=Variable "{0}" is read only and cannot be assigned a value.
TEIID30140= Incorrect number of parameters specified on the stored procedure {2} - expected between {0} and {1} but got {2}
TEIID30146= No procedure plan exists for {0}.
TEIID30183=Text parse error: Non-whitespace character found between the qualifier and the delimiter in text line {0} in {1}.
TEIID30227=Table {0} is locked by pending transaction update.
TEIID30240=Conflicting INSERT target for a partitioned UNION view {0} with values {1}.
TEIID30253=Source UPDATE or DELETE command "{0}" contains non-pushdown constructs and no compensating action can be taken as the table lacks a unique key or the source does not support equality predicates. 
TEIID30275=Join region with unsatisfied access patterns cannot be satisfied by the join criteria, Access patterns: {0} 
TEIID30314=Unknown compare criteria operator: {0}
Evaluator.no_value=No value was available
TEIID30375=The specified insert variables {0} against an inherently updatable view does not map to a key preserving group.
TEIID30377=Parser cannot parse an empty sql statement.
TEIID30390=UDF "{0}" method "{1}" must not return void.
TEIID30391=UDF "{0}" method "{1}" must be public.
TEIID30392=UDF "{0}" method "{1}" must be static.
TEIID30396=Left/Right count {0} is invalid.  It must be >= 0.
TEIID30398={0} value must be a single character: [{1}].
TEIID30407=The rowlimit and rowlimitexception functions may only be used in XML queries.
TEIID30409=Illegal date format: {0}
TEIID30410=Could not parse date using format: {0} {1}
TEIID30413=Unable to evaluate {0}: expected Properties for command payload but got object of type {1}
TEIID30416=Expected a java.sql.Array, or java array type, but got: {0}
TEIID30431={0} has invalid character: {1}
TEIID30449=Invalid escape sequence "{0}" with escape character "{1}"
TEIID30452=Wrong type of child node is being added.
TEIID30477=Failed to unwrap the source connection for schema {0}.
TEIID30563=The request {0} has been cancelled.=======
TEIID30564=Invalid locale {0} for collation, using default collation
TEIID30565=Using collator for locale {0}
TEIID30499=No sources were given for the model {0} 
TEIID30519=Unknown START flags
TEIID30517=Client thread already involved in a transaction. Transaction nesting is not supported. The current transaction must be completed first.

TEIID30581=Invalid table {0}.  A table must have 1 or more columns. 

TEIID30590=Transaction Is null
TEIID30591=Metadata for model {0} can not be retrieved from source, as the translator is not available.

# metadata validation
TEIID31069=Duplicate model defined {0}
TEIID31070=Empty model;There are no tables, procedures or functions defined in this model {0}
TEIID31071=Invalid table; Table {0} has no columns defined
TEIID31072=Invalid Procedure {0}; No return has been defined.
TEIID31073=Invalid functions; {0}
TEIID31075=Foreign table {0} is only allowed to be defined on PHYSICAL model; {1} is defined as VIRTUAL model.
TEIID31077=Source Stored procedure {0} is only allowed to be defined on PHYSICAL model; {1} is defined as VIRTUAL model.
TEIID31078=Pushdown function {0} must be defined on PHYSICAL model; {1} is VIRTUAL model. 
TEIID31079=View {0} is not defined by a query expression.
TEIID31080={0} validation error: {1}
TEIID31081=Virtual Procedure {0} did not specify any statements as procedure block in model {0}
TEIID31082={0}.{1} is now "incomplete", because model "{2}" can not retrieve metadata. Please deploy the necessary DataSources.
TEIID31083={0}.{1} is now "incomplete", because model "{2}" can not retrieve metadata. Please fix any errors and re-deploy relevant DataSources and/or the VDB.
TEIID31084=Insert plan is enabled on table {0}, however the plan is not provided. Default insert plan is only used when the explicit "create trigger on insert" is not defined.
TEIID31085=Invalid procedure {0}, return resultset defined, however no columns defined in the resultset.
TEIID31086=Data type could not be determined on Column {0} on Table {1}
TEIID31087=Duplicate Column {0} detected on Table {0}
TEIID31088=The materialization table {0} defined on view {1}, must be defined with "schema" qualifier that represents PHYSICAL model. 
TEIID31089=Invalid Schema {0} is specified on materialization table {1} for view {2}
TEIID31090=Materialization table {0} not found in Schema {1} for view {2}
TEIID31091=Foreign Key definition on view {0} is incomplete. No reference key information not found.
TEIID31092=Foreign Key definition on view {0} points to non-existent table {1} on schema {2}. Fully qualify the Reference Table name including the schema name.
TEIID31093=Invalid Schema qualifier {0} is specified on Foreign Key definition for view {1}
TEIID31094=Foreign Key definition on view {0} points to reference table {1} on schema {2} that has no primary keys
TEIID31095=Foreign Key definition on view {0} points to reference table {1} on schema {2} that has no Primary Keys or Unique Keys that refer to column names {3}, create PK, or FK on the reference table first.


TEIID30600=User defined aggregate function "{0}" method "{1}" must not be static.
TEIID30601=User defined aggregate function "{0}" class "{1}" does not implement {2}
TEIID30602=User defined aggregate function "{0}" class "{1}" does not provide a public no-arg constructor.

TEIID31096=Canceling query {0} since it has exceeded the timeout of {1} milliseconds.

TEIID31099=VDB {0} is not active, but {1}.  If loading you can resubmit your query after loading has completed or after the errors have been corrected.

TEIID31101=Source names are not unique for model {0} in {1}.{2}
TEIID31102=Multiple sources on non multi-source model {0} in {1}.{2}
TEIID31103=There are different sources with the name {0} in {1}.{2}

TEIID31104=Recursion limit of {0} reached.
TEIID31105=Returing warning to client: {0}
TEIID31106=Duplicate parameter {1} defined on {0}
TEIID31107=Procedure {0} can only have 1 RESULT/return value
TEIID31109=Invalid language {0}.  Supported and allowed language names are {1}.
TEIID31110=Invalid script {0}.  Scrpting engine reported: {1}
TEIID31111=No such accessible property/method {0} on {1}.
TEIID31112=Only the last parameter non-optional parameter of {0} may be VARIADIC.
TEIID31113={0} extra positional parameter(s) passed to {2}.
TEIID31114=Function based index {1} expression {0} cannot contain subqueries.
TEIID31115=Function based index {1} expression {0} is not deterministic.
TEIID31116=Function based index {1} expression {0} could not be resolved: {2}
TEIID31120=An exception may only be chained to another exception. {0} is not valid.
TEIID31121=The expected result set of the procedure {0} does not match the result set from returnable statement {1} use WITHOUT RETURN to indicate the statement should not be returned - {2}
TEIID31122=Null exception reference.
TEIID31123=Could not load non-FOREIGN UDF "{0}", since both invocation class and invocation method are required.

SQLParser.proc_type_conflict=Result type {1} conflicts with return type {2} for procedure {0}
SQLParser.param_out=Procedure {0} RESULT param {1} must be of type OUT.
udt_format_wrong=UDT option mentioned on column "{0}" is wrong. It must be in the form UDT=name(length,precision,scale). Otherwise UDT data type specified is not a known data type to Teiid.
TEIID31125=Return statement with expression used, but no return value is expected: {0}
TEIID31126=The use of the KEEP ALIASES option has introduced a duplicate alias into the source query {0}.  A NO_UNNEST hint may be needed to preserve a view or the KEEP ALIASES option should not be used and the generated aliases should be optained from the query plan.
TEIID31127=The KEEP ALIASES option cannot be used since a user alias {0} may conflict with generated aliases.  Consider using the generated aliases found in the query plan instead.

TEIID31128=In multisource mode, a column/parameter matching the multisource name {0} on {1} must have type STRING.
TEIID31129=Invalid row based security permission filter on role {0} for resource {1}.
TEIID31130=INSERT/UPDATE violates row based security policy: {0}
TEIID31131=Could not validate INSERT/UPDATE against row based security policy : {0}

TEIID31132=Could not process MERGE against {0} since no primary or unique keys are defined.
TEIID31133=Could not process MERGE against {0} since the key is not fully specified by {1}.

TEIID31134=Could not create foreign temporary table, since schema {0} does not exist.
TEIID31135=Could not create foreign temporary table, since schema {0} is not physical.
ValidationVisitor.temp_fk=The foreign temporary table {0} cannot define foreign keys.

ValidationVisitor.invalid_json_value={0} is not a valid value for inclusion in JSON.  Please convert to a number, text, or boolean type first.
TEIID31144=Value is out of range for timestampdiff.
TEIID31136=Can not set session variable since the maximum of {0} values has been reached.
TEIID31137=No vdb resource exists with name "{0}"
TEIID31138=Cannot add batch to invalidated cache group "{0}".  Check prior logs to see if there was an error persisting a batch.
TEIID30498=Capabilities for {0} were not available.  The command could not be planned properly.

TEIID31139=Invalid column mask on role {0} for resource {1}.

TEIID31140=Invalid number of arguments for string_agg, expected only 2: {0}
TEIID31141=Could not determine the type for string_agg, expected either both arguments to be character or binary types: {0}

TEIID31142=Invalid row based security permission filter containing correlated subquries "{0}" for INSERT/UPDATE against resource {1}.

TEIID31143=Global table {1} load determinism {0} is less than vdb deterministic.
TEIID31145=Expected array or object type for array_get, but was {0}: {1}
TEIID31146=Translator {2} not found for vdb {0} {1} 
TEIID31154=One or more of required properties for materialization management is missing. Required properties are teiid_rel:MATVIEW_STATUS_TABLE, teiid_rel:MATERIALIZED_STAGE_TABLE if teiid_rel:MATVIEW_LOAD_SCRIPT is not provided.
TEIID31147=The materialized view {0}.{1} materialization table is currently not in valid state. 
TEIID31148=Invalid virtual model {0} specified in conformed sources for {1}. 
TEIID31149=No columns are specified on key {1} for table {0}.

TEIID31151=After removing unauthorized columns from asterisk in select, no valid columns remain selected.
multi_source_update_not_allowed=Update of the multi-source column {0} is not allowed.
TEIID31152=More the one constraint with the name {0}.
TEIID31153=Did not complete the load of {0} as the initiating query is already finished.
TEIID31155=Typically materialization properties teiid_rel:MATVIEW_BEFORE_LOAD_SCRIPT, teiid_rel:MATVIEW_AFTER_LOAD_SCRIPT are required to move data from MATVIEW_STATUS_TABLE to MATERIALIZED_TABLE
TEIID31156=Unrelated order by items containing correlated references are not supported: {0}
TEIID31157=Executed an update with dynamic sql, but expecting a result set.  Please ensure that the dynamic sql is correct and/or use WITHOUT RETURN and no AS columns to indicate no result set is expected.
TEIID31158=Exceeded max recursion limit of {0} when evaluating the recursive common table {1}.  You can increase the recursion limit by setting the session variable teiid.maxRecursion to a higher integer.
TEIID31159=Invalid comment.  A comment cannot contain -- or end with -.
TEIID31160={0} format is not allowed.
TEIID31161=Can only produce KML for geometries with SRID = 4326

TEIID31162=Missing proj4 text for SRID = {0}.
TEIID31163=Failed to lookup proj4 text.
TEIID31164=Unsupported geometry type {0}.

TEIID31165=The virtual function {0} cannot have a non-input parameter {1}.
TEIID31166=The virtual function {0} must have a return parameter.
TEIID31167=The virtual function {0} must have a definition.

TEIID31168=Unsupported regex flag {0}.

SystemSource.regexp_replace_description=Replace substrings in the given string based upon regular expression matching.
SystemSource.regexp_replace_param1=Original string
SystemSource.regexp_replace_param2=The regular expression
SystemSource.regexp_replace_param3=The replacement string
SystemSource.regexp_replace_param4=Flags, such as g, i, or m
SystemSource.regexp_replace_result=The string with replacements

TEIID31169={0} is out of bounds.
TEIID31170=Parsing error with default expression on {0}.

ERR.015.008.0032=More than one column projected from scalar subquery: {0}

TEIID31171={0} is not a row value.
TEIID31172=Could not resolve expressions being compared to a common type excluding character conversions: {0}

TEIID31173=Inherent {1} against {2} has the following issues: {0}

TEIID31174=Result set or count exceeds the maximum integer value.

TEIID31175=Array type expected for {0} but was {1}.

TEIID31176=Could not convert source column {0} to the expected runtime type {1}
TEIID31177=Could not find status table for {0} {1}

TEIID31178=Could not obtain connection for schema {0}, but one is required for metadata load. 
TEIID31179=Duplicate variable {1} specified for insert/merge against table {0}.