Logical reason codes (X00 - X48)
Reason codes that start with X indicate logical errors in an expression.
- X00: Internal error: found number children in a expression name.
- Explanation
- An internal error has occurred relating to the number of children in an expression.
- Action
- Contact IBM® Technical support and report a defect.
- X01: The if expression is not supported in this expression.
- Explanation
- Errors on the syntax of if expressions are reported as parsing errors. In this case, the if cannot be used in this expression.
- Action
- Correct the expression.
- X03: The if test does not evaluate to a valid boolean value.
- Explanation
- The result of an if test (the expression in parenthesis) must be boolean, decimal, integer, or string (an effective boolean value). For decimals and integers the value of 0 is false, and anything else is true. For strings the empty string "" is false, and anything else is true.
- Action
- Correct the expression so that the if test results in a boolean value.
- X04: The then and else return types do not match and cannot be made to match.
- Explanation
- The system has found a mismatch between the then and else in an if statement.
- Action
- Contact IBM Technical support and report a defect.
- X05: The type type does not evaluate to a valid boolean value.
- Explanation
- Both arguments to an and or or expression must be boolean, decimal, integer, or string (an effective boolean value). For decimals and integers the value of 0 is false, and anything else is true. For strings the empty string "" is false, and anything else is true.
- Action
- Correct the arguments in the expression and retry the action.
- X06: The expression name of XPath 2.0 is not supported.
- Explanation
- Not all of XPath 2.0 is supported. In particular, no sequence expressions are allowed, and only the parent, child, attribute, and self axes are supported.
- Action
- Check the Expression support page for the subset of XPath 2.0 that is supported, and correct the expression.
- X07: The operator operator is not supported in this expression.
- Explanation
- Not all of XPath 2.0 is supported. In particular, the following operators are not supported: is, <<, >>, union, |, intersect, except, to, and ',' .
- Action
- Check the Expression support page for the subset of XPath 2.0 that is supported, and correct the expression.
- X08: Unable to apply operator: left value or type operator right value or type.
- Explanation
- The operator does not support the types of its operands. The operands, left value or type and right value or type, are shown as values if those values are known (as in a constant expression) or as a type name if not.
- Action
- Correct the expression.
- X09: Must be numeric, instead found type.
- Explanation
- The unary operators + and - can only be applied to numeric types, such as decimal and integer.
- Action
- Apply unary operators only to numeric types.
- X10: Non-reference found before last step of path.
- Explanation
- An atomic type (a non-node type) was found in the middle of the
reference. The remaining segments of the reference cannot be evaluated
because there is no context in which to do so. For example, this error
would be caused by the following expression:
/monitorId/MDM/3 + 4/monitoringContextId/metricId - Action
- Remove the atomic type from the expression.
- X12: The prefix prefix of this function call is not mapped to a valid namespace.
- Explanation
- The expression is making a function call, such as math:sqrt(5), but the math prefix has not been defined in the model.
- Action
- Add the math prefix to the Namespace Prefix Mappings table at the root of the monitor model,
- X13: Expected function name.
- Explanation
- This error should never occur. Errors on malformed function expressions are reported as parsing problems.
- Action
- Contact IBM Technical support and report a defect.
- X14: The function function name is not supported in this expression.
- Explanation
- The function with the name function name is not supported (not all XPath 2.0 functions are supported) or it cannot be used in this particular expression.
- Action
- Check the Expression support page for the subset of XPath 2.0 that is supported, and correct the expression.
- X15: Function must have arguments.
- Explanation
- There is no function with the requested signature. This function invocation specified an empty parameter list but all functions of the same name require arguments.
- Action
- Correct the expression to call the function correctly.
- X16: Function function name does not support argument list (values and types).
- Explanation
- There is no function with the requested signature. The values and types are the values (if available) or types (if the values are not available) of the arguments to the function.
- Action
- Correct the expression to call the function correctly.
- X17: Internal error: Could not find implementation for function name.
- Explanation
- This error should never occur.
- Action
- Contact IBM Technical support and report a defect.
- X18: Internal error: Could not invoke function name.
- Explanation
- The system could not invoke the function specified in the message.
- Action
- Contact IBM Technical support and report a defect.
- X19: The predicate list must contain only one predicate.
- Explanation
- The predicate syntax is only used to index array types. Multiple predicates in a row are not allowed.
- Action
- Correct the predicate syntax.
- X20: Predicate must be of type integer, not type. (Only numeric predicates are supported.)
- Explanation
- The predicate syntax is only used to index array types. Therefore only numeric predicates are supported. Predicates that evaluate to an effective boolean value are not supported.
- Action
- Correct the predicate syntax.
- X21: Numeric predicate value of number is too large.
- Explanation
- The predicate syntax is only used to index array types. The value of the expression which specifies the numeric predicate was evaluated and found to be too large. Currently the numeric predicate is restricted to the range [1 - 231].
- Action
- Correct the predicate to be in the correct range.
- X22: Numeric predicate must be 1 or greater, not number.
- Explanation
- The predicate syntax is only used to index array types. The value of the expression which specifies the numeric predicate was evaluated and found to be too small. Currently the numeric predicate is restricted to the range [1 - 231].
- Action
- Correct the predicate to be in the correct range.
- X23: Internal error: unable to find implementation of operator.
- Explanation
- The system is unable to locate where the operator was implemented.
- Action
- Contact IBM Technical support and report a defect.
- X24: Internal error: unable to invoke implementation of operator.
- Explanation
- The system is unable to invoke the operator implementation.
- Action
- Contact IBM Technical support and report a defect.
- X25: The and subexpression always evaluates to false.
- Explanation
- All of the subexpressions of this and expression are constant expressions and at least one of them evaluates to false. This expression will therefore always evaluate to false.
- Action
- Complete the expression.
- X26: The and subexpression always evaluates to true.
- Explanation
- All of the subexpressions of this and expression are constant expressions and all of them evaluate to true. This expression will therefore always evaluate to true.
- Action
- Complete the expression.
- X27: The or subexpression always evaluates to false.
- Explanation
- All of the subexpressions of this or expression are constant expressions and all of them evaluate to false. This expression will therefore always evaluate to false.
- Action
- Complete the expression.
- X28: The or subexpression always evaluates to true.
- Explanation
- All of the subexpressions of this or expression are constant expressions and at least one of them evaluates to true. This expression will therefore always evaluate to true.
- Action
- Complete the expression.
- X29: The if expression always evaluates to false, so the then case is always ignored.
- Explanation
- The test condition of this if expression is a constant expression that always evaluates to false. The test condition appears to have no purpose.
- Action
- Complete the test condition for the if expression.
- X30: The if expression always evaluates to true, so the else case is always ignored.
- Explanation
- The test condition of this if expression is a constant expression that always evaluates to true. The test condition appears to have no purpose.
- Action
- Complete the test condition for the if expression.
- X31: The expression must not be null.
- Explanation
- This error means that the expression itself (not some logical part of it) is null. All required expressions must be specified. This error only occurs if you edit the XML MM file directly rather than using the form editor.
- Action
- Correct the expression.
- X32: XPath 1.0 expression types are limited to string, boolean, and number, not type.
- Explanation
- The expression uses XPath 1.0 syntax and does not support this expression type.
- Action
- Change the type to string, boolean, or number.
- X34: Unary expression contains invalid node node.
- Explanation
- This error should never occur. The nodes should be constructed correctly by the parser.
- Action
- Contact IBM Technical support and report a defect.
- X36: The axis name axis is not supported.
- Explanation
- Only the parent, child, attribute, and self axes are supported.
- Action
- Correct the expression.
- X37: Navigating the axis name axis by name is not supported.
- Explanation
- Only the parent, child, attribute, and self axes are supported.
- Action
- Correct the expression.
- X38: Navigation is disabled in this expression.
- Explanation
- This expression is being used as a calculator with no data behind it, and so there is no data to navigate.
- Action
- Do not try to navigate the expression.
- X39: Functions and operators are disabled in this expression.
- Explanation
- This error should never occur. Functions and operators should always be passed into the expression evaluator.
- Action
- Contact IBM Technical support and report a defect.
- X40: Prefixes are not defined for this expression.
- Explanation
- A QName such as bo:data was used in the expression, but no prefixes were defined for the expression. This error should not occur because fn and xs are always defined.
- Action
- Contact IBM Technical support and report a defect.
- X41: Ambiguous call tofunction, both {function1} and {function2} match.
- Explanation
- More than one available function matches the function call.
- Action
- Change one of the function names or put the functions into separate namespaces.
- X42: The prefix prefix of this QName is not mapped to a valid namespace.
- Explanation
- A QName such as bo:data was used in the expression, but the prefix bo has not been mapped to a namespace.
- Action
- Check that the prefix is spelled correctly and mapped to a valid namespace in the Namespace Prefix Mappings table at the root of the monitor model.
- X43: The function function name {arguments} is deprecated.
- Explanation
- The public static method that implements this function was compiled marked with the @Deprecated attribute.
- Action
- Do not use deprecated functions in new models because they might be removed in the future.
- X44: The if test is a constant.
- Explanation
- The test condition of this if expression evaluates to a constant expression at compile time. The test condition appears to have no purpose.
- Action
- Complete the test condition for the if expression.
- X45: Could not apply unary operator.
- Explanation
- A unary operator was applied to an expression that is not supported, for example, an attempt to increment a string by using +'hello'. The unary operators + and - can only be applied to numeric types, such as decimal and integer.
- Action
- Apply unary operators only to numeric types.
- X46: Could not apply function.
- Explanation
- An internal error has occurred and a function was not created correctly.
- Action
- Contact IBM Technical support and report a defect.
- X47: Marshalling problem on call to function name: internal error.
- Explanation
- An internal error has occurred.
- Action
- Contact IBM Technical support and report a defect.
- X48: The reference does not have a type.
- Explanation
- This error occurs in an expression with an incomplete reference, such as inboundEvent/extendedData. The extendedData does not really exist or have a type.
- Action
- Correct the expression.