﻿<?xml version="1.0" encoding="utf-8"?>
<?driver SimbaSpark version=2.6.28.1048 ?>

<!DOCTYPE Messages[
    <!ELEMENT Messages (Package*)>
    <!ELEMENT Package (Error*)>
    <!ATTLIST Package ID CDATA #REQUIRED>
    <!ATTLIST Package DefaultComponent CDATA #REQUIRED>
    <!ELEMENT Error (#PCDATA)>
    <!ATTLIST Error Key CDATA #REQUIRED>
    <!ATTLIST Error _locID CDATA "0">
    <!ATTLIST Error Component CDATA #IMPLIED>
    <!ATTLIST Error NativeErrorCode CDATA #REQUIRED>
    <!ATTLIST Error Params CDATA "0">
]>

<Messages>
    <!-- #################################################################################### -->
    <Package ID="1" DefaultComponent="ODBC">

      <!-- Errors and warnings in general operation. --> 
      <!-- Error thrown when an unexpected exception is caught. --> 
      <Error Key="GenErr" NativeErrorCode="10000" _locID="1.GenErr">General error: Unexpected exception caught.</Error>

      <!-- Same as GenErr, but allows for a custom message (say, from an std::exception) --> 
      <Error Key="GenErr1" Params="1" NativeErrorCode="10001" _locID="1.GenErr1">General error: %1%</Error>

      <!-- Error thrown when a std::bad_alloc exception is caught. --> 
      <Error Key="MemAllocErr" NativeErrorCode="10010" _locID="1.MemAllocErr">Memory allocation error: std::bad_alloc exception caught.</Error>

      <!-- Error thrown when ODBC functions are executed out of the allowed sequence as specified in the ODBC specification. --> 
      <Error Key="FuncSeqErr" NativeErrorCode="10020" _locID="1.FuncSeqErr">ODBC function executed out of allowable sequence.</Error>

      <!-- Error thrown when statement is invalid or not found. --> 
      <Error Key="InvalidStmt" NativeErrorCode="10040" _locID="1.InvalidStmt">Statement invalid or not found.</Error>

      <!-- Error thrown when connection is invalid or not found. --> 
      <Error Key="InvalidConn" NativeErrorCode="10050" _locID="1.InvalidConn">Connection invalid or not found.</Error>

      <!-- Error thrown when descriptor is invalid or not found. --> 
      <Error Key="InvalidAppDesc" NativeErrorCode="10060" _locID="1.InvalidAppDesc">Application descriptor invalid or not found.</Error>

      <!-- Error thrown when explicit application descriptor is invalid or not found. --> 
      <Error Key="InvalidExplAppDesc" NativeErrorCode="10070" _locID="1.InvalidExplAppDesc">Explicit application descriptor invalid or not found.</Error>

      <!-- Error thrown when query manager is invalid or not found. --> 
      <Error Key="InvalidQueryMgr" NativeErrorCode="10080" _locID="1.InvalidQueryMgr">Query manager invalid or not found.</Error>

      <!-- Error thrown when execution results are invalid or not found. --> 
      <Error Key="InvalidExecResults" NativeErrorCode="10090" _locID="1.InvalidExecResults">Execution results invalid or not found.</Error>

      <!-- Errors and warnings with diagnostics reporting. --> 
      <!-- Error thrown when an invalid diagnostic identifier is used. --> 
      <Error Key="InvalidDiagIdent" NativeErrorCode="10110" _locID="1.InvalidDiagIdent">Invalid diagnostic identifier used.</Error>

      <!-- Error thrown when requesting for a diagnostic field in binary format while no binary diagnostic fields exist. -->
      <Error Key="NoBinaryDiagFields" NativeErrorCode="10120" _locID="1.NoBinaryDiagFields">Unable to return diagnostic field in requested binary format: no binary diagnostic fields exist.</Error>


      <!-- Errors and warnings with the provided buffer and buffer length. --> 
      <!-- Error thrown when an invalid string or buffer length is provided by the application. --> 
      <Error Key="InvalidStrOrBuffLen" NativeErrorCode="10130" _locID="1.InvalidStrOrBuffLen">Invalid string or buffer length provided by the application.</Error>

      <!-- Warning posted when an output string is right truncated to fit into the output buffer. --> 
      <Error Key="StrRightTruncWarn" NativeErrorCode="10160" _locID="1.StrRightTruncWarn">Output string data right truncation: string data is too big for the output data buffer and has been truncated.</Error>

      <!-- Error thrown when string data is too big for the driver's data buffer. --> 
      <Error Key="StrRightTruncInsufBufferErr" NativeErrorCode="10170" _locID="1.StrRightTruncInsufBufferErr">String data right truncation on data from data source: string data is too big for the driver's data buffer.</Error>

      <!-- Error thrown when an invalid output buffer is provided. --> 
      <Error Key="InvalidOutputBuff" NativeErrorCode="10180" _locID="1.InvalidOutputBuff">Invalid output buffer provided.</Error>

      <!-- Error thrown when there is an invalid string truncation. --> 
      <Error Key="InvalidStrTrunc" NativeErrorCode="10190" _locID="1.InvalidStrTrunc">Invalid string truncation.</Error>


      <!-- Error and warnings with Attributes. --> 
      <!-- Error thrown when the attribute type specified is not supported for the current operation. --> 
      <Error Key="AttrTypeNotSupported" NativeErrorCode="10200" _locID="1.AttrTypeNotSupported">Attribute type not supported for current operation.</Error>

      <!-- Error thrown when the attribute identifier specified is invalid or not supported. --> 
      <Error Key="InvalidAttrIdent" Params="1" NativeErrorCode="10210" _locID="1.InvalidAttrIdent">Attribute identifier invalid or not supported: %1%</Error>

      <!-- Error thrown when setting the value of a read-only attribute. --> 
      <Error Key="CannotSetReadOnlyAttr" NativeErrorCode="10220" _locID="1.CannotSetReadOnlyAttr">Cannot set a read-only attribute.</Error>

      <!-- Error thrown when failed to retrieve an attribute value. --> 
      <Error Key="AttrValNotFound" NativeErrorCode="10230" _locID="1.AttrValNotFound">Cannot obtain attribute value.</Error>

      <!-- Error thrown when setting the implementation descriptor handle, a statement's implementation descriptor cannot be replaced. --> 
      <Error Key="CannotSetImpDescHandle" NativeErrorCode="10240" _locID="1.CannotSetImpDescHandle">Cannot change a statement's implementation descriptor handle.</Error>

      <!-- Error thrown when setting the value of SQL_ATTR_ASYNC_ENABLE statement attribute when driver does not support this operation. --> 
      <Error Key="SetAsyncEnabNotSupported" NativeErrorCode="10250" _locID="1.SetAsyncEnabNotSupported">Setting SQL_ATTR_ASYNC_ENABLE attribute not supported.</Error>

      <!-- Error thrown when failed to obtain a connection attribute that is required to check if the current operation is valid. --> 
      <Error Key="ObtainCheckingConnAttrFailed" NativeErrorCode="10260" _locID="1.ObtainCheckingConnAttrFailed">Could not obtain a required connection attribute to check if current operation is valid.</Error>

      <!-- Error thrown when changing the option to enable auto population of IPD while driver does not support IPD auto population. --> 
      <Error Key="AutoPopIpdNotSupported" NativeErrorCode="10270" _locID="1.AutoPopIpdNotSupported">Auto-population of IPD (Implementation Parameter Descriptor)is not supported.</Error>

      <!-- Error thrown when setting an attribute to a value that is invalid. --> 
      <Error Key="InvalidAttrVal" NativeErrorCode="10280" _locID="1.InvalidAttrVal">Invalid attribute value.</Error>

      <!-- Warning posted when setting an attribute value that is not supported or invalid, and the driver was able to substitute a similar value. --> 
      <Error Key="OptAttrValChangedWarn" NativeErrorCode="10290" _locID="1.OptAttrValChangedWarn">Attribute value not supported or invalid. A similar attribute value was substituted. To see the substituted value, check the current attribute value.</Error>

      <!-- Error thrown when failing to revert a temporarily substituted attribute value back to its original value. --> 
      <Error Key="RevertAttrValueToOrigFailed" NativeErrorCode="10300" _locID="1.RevertAttrValueToOrigFailed">Could not revert temporary attribute value back to original value.</Error>

      <!-- Error thrown when failing to obtain a default value for a statement attribute during statement creation. --> 
      <Error Key="ObtainDefaultStmtAttrValueFailed" NativeErrorCode="10310" _locID="1.ObtainDefaultStmtAttrValueFailed">Could not obtain default statement attribute value.</Error>

      <!-- Error thrown when setting an explicit application descriptor handle on a statement that is not from the statement's parent connection. --> 
      <Error Key="ExplAppDescHandleNotFromSameConn" NativeErrorCode="10320" _locID="1.ExplAppDescHandleNotFromSameConn">Explicit application descriptor handle not from the same connection as the target statement.</Error>

      <!-- Error thrown when setting an implicit application descriptor handle on a statement but the descriptor was not one of the target statement's original implicit application descriptors. --> 
      <Error Key="ImplicitAppDescHandleNotOrig" NativeErrorCode="10330" _locID="1.ImplicitAppDescHandleNotOrig">Implicit application descriptor handle is not an original implicit application descriptor of the target statement.</Error>

      <!-- Error and warnings with establishing connection to data source. -->
      <!-- Error thrown when the connection string is not of valid form. -->
      <Error Key="InvalidConnStr" NativeErrorCode="10360" _locID="1.InvalidConnStr">Invalid connection string.</Error>

      <!-- Error thrown when the connection string does not contain information requested by the driver. -->
      <Error Key="InvalidConnStrAttr" NativeErrorCode="10370" _locID="1.InvalidConnStrAttr">Invalid connection string attribute: does not match driver-requested information.</Error>

      <!-- Error thrown when unable to establish a connection with the data source. -->
      <Error Key="UnableToEstConn" Params="1" NativeErrorCode="10380" _locID="1.UnableToEstConn">Unable to establish connection with data source. Missing settings: %1%</Error>

      <!-- Error thrown when failed to obtain connection information through the driver provided dialog box. -->
      <Error Key="UpdateConnSettingsWithDiaglogFailed" NativeErrorCode="10390" _locID="1.UpdateConnSettingsWithDiaglogFailed">Update connection settings with dialog prompt failed.</Error>

      <!-- Error thrown when performing an operation that requires an established connection but no connection has been established yet. -->
      <Error Key="NoEstConn" NativeErrorCode="10400" _locID="1.NoEstConn">Current operation requires established connection but no connection has been established yet.</Error>

      <!-- Error thrown when trying to establish a connection but a connection already exist. -->
      <Error Key="ConnAlreadyEst" NativeErrorCode="10410" _locID="1.ConnAlreadyEst">Connection is already established.</Error>

      <!-- Error thrown when data source did not provide a valid response. -->
      <Error Key="DataSourceDidNotGiveProperResp" NativeErrorCode="10420" _locID="1.DataSourceDidNotGiveProperResp">Data source did not provide a proper response.</Error>

      <!-- Error thrown when application did not provide enough information to establish a connection to the data source but application specified that driver should not prompt application for more information. -->
      <Error Key="NotEnoughConnInfoButDriverNoPrompt" Params="1" NativeErrorCode="10430" _locID="1.NotEnoughConnInfoButDriverNoPrompt">Not enough information provided to establish a connection to the data source, and prompt for more information has been disabled. Missing required settings: %1%</Error>

      <!-- Error thrown when driver complete flag is invalid or not supported. -->
      <Error Key="InvalidDriverComplFlag" NativeErrorCode="10440" _locID="1.InvalidDriverComplFlag">Driver completion flag invalid or not supported.</Error>

      <!-- Error thrown when driver needs an indicator buffer to indicate NULL output data to the application but the application did not provide such buffer. -->
      <Error Key="NullIndPtrNotSupplied" NativeErrorCode="10450" _locID="1.NullIndPtrNotSupplied">Indicator pointer is required by the driver to indicate NULL output data, but is not provided.</Error>

      <!-- Error thrown when data conversion could not complete properly. -->
      <Error Key="DataConvError" NativeErrorCode="10460" _locID="1.DataConvError">Data conversion error.</Error>

      <!-- Error thrown when data conversion is not supported. -->
      <Error Key="DataConvNotSupported" NativeErrorCode="10470" _locID="1.DataConvNotSupported">Data conversion not supported.</Error>

      <!-- Error thrown when fetch orientation is not compatible with current settings. -->
      <Error Key="FetchTypeNotSupported" NativeErrorCode="10480" _locID="1.FetchTypeNotSupported">Fetch type not supported, as fetch orientation is not compatible with current settings.</Error>

      <!-- Error thrown when cursor is in an invalid position for fetching data. -->
      <Error Key="InvalidCursorPos" NativeErrorCode="10490" _locID="1.InvalidCursorPos">Cursor not positioned within result set.</Error>

      <!-- Error thrown when cursor is forward-only and SetPos is called while on a valid row. -->
      <Error Key="InvalidForwardSetPosOper" NativeErrorCode="10495" _locID="1.InvalidForwardSetPosOper">SQLSetPos is an invalid operation when the cursor is forward-only.</Error>

      <!-- Error thrown when cursor is not of a supported type. -->
      <Error Key="InvalidCursorType" NativeErrorCode="10500" _locID="1.InvalidCursorType">Cursor type invalid or not supported.</Error>

      <!-- Error thrown when cursor is in an invalid state. -->
      <Error Key="InvalidCursorState" NativeErrorCode="10510" _locID="1.InvalidCursorState">Invalid cursor state.</Error>

      <!-- Error thrown when there is no more data left to fetch. -->
      <Error Key="NoMoreDataToFetch" NativeErrorCode="10530" _locID="1.NoMoreDataToFetch">No more data left to fetch.</Error>

      <!-- Error thrown when getting data that has already been fetched, but current settings do not allow this behavior. -->
      <Error Key="NotAllowedToGetSpecifiedColumn" NativeErrorCode="10540" _locID="1.NotAllowedToGetSpecifiedColumn">Not allowed to get data that was already fetched for the specified column.</Error>

      <!-- Error thrown when requesting a column in the result set but no matching column is found. -->
      <Error Key="InvalidColNumInResultSet" NativeErrorCode="10550" _locID="1.InvalidColNumInResultSet">Invalid result set column number: no matching column found.</Error>

      <!-- Error thrown when checking the status of a fetched row but the status is invalid and not recognized. -->
      <Error Key="InvalidRowStatus" NativeErrorCode="10560" _locID="1.InvalidRowStatus">Invalid row status detected after fetching operation.</Error>

      <!-- Error thrown when changing types between multipart SQLGetData() calls. -->
      <Error Key="ChangeTypesInMultipartSQLGetDataNotSupported" NativeErrorCode="10570" _locID="1.ChangeTypesInMultipartSQLGetDataNotSupported">Changing types between multipart SQLGetData() calls is not supported.</Error>

      <!-- Error thrown when the source data is invalid (i.e. null when it shouldn't be. -->
      <Error Key="InvalidSrcData" NativeErrorCode="10580" _locID="1.InvalidSrcData">Source data is invalid.</Error>

      <!-- Error thrown when there is no more data to get. -->
      <Error Key="NoMoreDataToGet" NativeErrorCode="10590" _locID="1.NoMoreDataToGet">There is no more data to get.</Error>

      <!-- Error thrown when the conversion strategy is invalid (i.e. null when it shouldn't be). -->
      <Error Key="InvalidStrategy" NativeErrorCode="10600" _locID="1.InvalidStrategy">Conversion strategy is invalid.</Error>

      <!-- Error thrown when the conversion strategy is not supported. -->
      <Error Key="StrategyNotSupported" NativeErrorCode="10610" _locID="1.StrategyNotSupported">Conversion strategy is unsupported.</Error>

      <!-- Error thrown when a conversion is attempted when there is more data. -->
      <Error Key="CannotConvWhileHasMoreData" NativeErrorCode="10620" _locID="1.CannotConvWhileHasMoreData">Cannot convert when there is more data.</Error>

      <!-- Error thrown when the result of a conversion is invalid. -->
      <Error Key="InvalidConvResult" NativeErrorCode="10630" _locID="1.InvalidConvResult">Invalid conversion result.</Error>

      <!-- Error thrown when a flush fails to clear the data. -->
      <Error Key="FlushFailed" NativeErrorCode="10640" _locID="1.FlushFailed">Flush failed to clear data.</Error>

      <!-- Error thrown when execution expects a result set but no result set is available from the DSII. -->
      <Error Key="NoAvailableResultSet" NativeErrorCode="10651" _locID="1.NoAvailableResultSet">No result set is available after execute, but a result set was available after prepare.</Error>

      <!-- Error thrown when a Driver Manager calls SQLConnect without providing a valid DSN. -->
      <Error Key="InvalidDSN" NativeErrorCode="10652" _locID="1.InvalidDSN">DSN must not be an empty string as per ODBC specifications. The driver manager must provide a valid DSN value.</Error>
      
      <!-- Error and warnings with descriptors. -->
      <!-- Error thrown when requesting a bookmark column but bookmark columns are not supported. -->
      <Error Key="BookmarkColumnNotSupported" NativeErrorCode="10660" _locID="1.BookmarkColumnNotSupported">Bookmark column not supported.</Error>

      <!-- Error thrown when requesting a descriptor record or its information, but the descriptor record cannot be found -->
      <Error Key="InvalidDescIndex" NativeErrorCode="10670" _locID="1.InvalidDescIndex">Invalid descriptor index, descriptor record does not exist, or descriptor record was not properly initialized.</Error>

      <!-- Error thrown when requesting a descriptor field that is not supported or is invalid. -->
      <Error Key="InvalidDescFieldIdent" NativeErrorCode="10680" _locID="1.InvalidDescFieldIdent">Descriptor field identifier invalid or not supported.</Error>

      <!-- Error thrown when descriptor records are not sequential during query execution. -->
      <Error Key="DescRecNotSeq" NativeErrorCode="10690" _locID="1.DescRecNotSeq">Expected descriptor record does not exist during query execution.</Error>

      <!-- Error thrown when retrieving the SQL_DESC_COUNT field that is zero for a IRD. -->
      <Error Key="InvalidDescCount" NativeErrorCode="10700" _locID="1.InvalidDescCount">Invalid descriptor count field: no count to be returned.</Error>

      <!-- Error thrown when setting a read-only descriptor field. -->
      <Error Key="ReadOnlyDescField" NativeErrorCode="10710" _locID="1.ReadOnlyDescField">Read-only descriptor field.</Error>

      <!-- Error thrown when registering or unregistering a listener (statement) on a non-explicit descriptor. -->
      <Error Key="CannotAssocNonExpDescWithDeleteListener" NativeErrorCode="10720" _locID="1.CannotAssocNonExpDescWithDeleteListener">Cannot associate non-explicit descriptors with descriptor listeners used for deletion cleanup.</Error>

      <!-- Error thrown when getting the parent connection of a non-explicit descriptor. -->
      <Error Key="CannotGetParentConnOnNonExpDesc" NativeErrorCode="10730" _locID="1.CannotGetParentConnOnNonExpDesc">Cannot get parent connection on a non-explicit descriptor.</Error>

      <!-- Error thrown when dropping descriptor record of an implementation row descriptor. -->
      <Error Key="CannotDropRecOfImplRowDesc" NativeErrorCode="10740" _locID="1.CannotDropRecOfImplRowDesc">Cannot drop record of an implementation row descriptor.</Error>

      <!-- Error thrown when an invalid or not supported datetime subcode identifier is given. -->
      <Error Key="InvalidDatetimeSubcodeIdent" NativeErrorCode="10750" _locID="1.InvalidDatetimeSubcodeIdent">Datetime subcode identifier invalid or not supported.</Error>

      <!-- Error thrown when an invalid or not supported interval subcode identifier is given. -->
      <Error Key="InvalidIntevalSubcodeIdent" NativeErrorCode="10760" _locID="1.InvalidIntevalSubcodeIdent">Interval subcode identifier invalid or not supported.</Error>

      <!-- Error thrown when requesting a descriptor field that is not supported or invalid. -->
      <Error Key="DescFieldNotSupported" NativeErrorCode="10770" _locID="1.DescFieldNotSupported">Descriptor field invalid or not supported.</Error>

      <!-- Error thrown when using a non-string method to get a string descriptor field. -->
      <Error Key="CannotGetStrDescFieldInNonStrMethod" NativeErrorCode="10780" _locID="1.CannotGetStrDescFieldInNonStrMethod">Invalid use of non-string method to get string descriptor field.</Error>

      <!-- Error thrown when specifying a descriptor field type that is not valid or not supported -->
      <Error Key="InvalidDescFieldType" NativeErrorCode="10790" _locID="1.InvalidDescFieldType">Descriptor field type invalid or not supported.</Error>

      <!-- Error thrown when the specified descriptor record cannot be found. -->
      <Error Key="DescRecNotFound" NativeErrorCode="10800" _locID="1.DescRecNotFound">Descriptor record not found.</Error>

      <!-- Error thrown when setting SQL_DESC_UNNAMED to SQL_NAMED which is not allowed. -->
      <Error Key="DescUnnamedNotAllowed" NativeErrorCode="10810" _locID="1.DescUnnamedNotAllowed">Not allowed to set SQL_DESC_UNNAMED to SQL_NAMED.</Error>

      <!-- Error thrown when performing an operation which requires the statement to be prepared but is not. -->
      <Error Key="StmtNotPrep" NativeErrorCode="10820" _locID="1.StmtNotPrep">Statement not prepared.</Error>

      <!-- Error thrown when setting or getting a descriptor field value that is not supported. -->
      <Error Key="DescFieldValueNotSupported" Params="2" NativeErrorCode="10830" _locID="1.DescFieldValueNotSupported">Descriptor field %1% does not support the value %2%.</Error>

      <!-- Error thrown when application modifies an implementation row descriptor -->
      <Error Key="CannotModImpRowDesc" NativeErrorCode="10840" _locID="1.CannotModImpRowDesc">Cannot modify implementation row descriptors.</Error>

      <!-- Error thrown when setting the SQL_DESC_ALLOC_TYPE descriptor field. -->
      <Error Key="CannotSetDescAllocType" NativeErrorCode="10850" _locID="1.CannotSetDescAllocType">Cannot set descriptor SQL_DESC_ALLOC_TYPE.</Error>

      <!-- Error thrown when an illegal descriptor type is detected. -->
      <Error Key="IllegalDescType" NativeErrorCode="10860" _locID="1.IllegalDescType">Illegal descriptor type.</Error>

      <!-- Error thrown when an illegal descriptor concise type is detected -->
      <Error Key="IllegalDescConciseType" NativeErrorCode="10870" _locID="1.IllegalDescConciseType">Illegal descriptor concise type.</Error>

      <!-- Error thrown when an invalid or not supported datetime interval code is given. -->
      <Error Key="InvalidDatetimeCodeIdent" NativeErrorCode="10880" _locID="1.InvalidDatetimeCodeIdent">Datetime interval code invalid or not supported.</Error>

      <!-- Error thrown when an invalid or not supported interval code is given. -->
      <Error Key="InvalidIntervalCode" NativeErrorCode="10890" _locID="1.InvalidIntervalCode">Interval code invalid or not supported.</Error>


      <!-- Error and warnings with SQL statement execution. -->
      <!-- Error thrown when reading from an output parameter. -->
      <Error Key="CannotReadFromOutputParam" NativeErrorCode="10900" _locID="1.CannotReadFromOutputParam">Cannot read from output parameter.</Error>

      <!-- Error thrown when reading from a default input parameter. -->
      <Error Key="CannotReadFromDefaultParam" NativeErrorCode="10910" _locID="1.CannotReadFromDefaultParam">No data can be obtained from a default input parameter.</Error>

      <!-- Error thrown when reading from an input parameter which value has already been pushed down. -->
      <Error Key="CannotReadFromPushedParam" NativeErrorCode="10920" _locID="1.CannotReadFromPushedParam">No data can be obtained from an input parameter whose value has already been pushed down.</Error>

      <!-- Error thrown when writing to a default output parameter. -->
      <Error Key="WriteToDefaultParam" NativeErrorCode="10930" _locID="1.WriteToDefaultParam">Cannot write to a default parameter.</Error>

      <!-- Error thrown when writing to an input parameter -->
      <Error Key="WriteToInputParam" NativeErrorCode="10940" _locID="1.WriteToInputParam">Cannot write to an input parameter.</Error>

      <!-- Error thrown when received an execute result status code that is not recognizable. -->
      <Error Key="InvalidExecStatusCode" NativeErrorCode="10950" _locID="1.InvalidExecStatusCode">Execute result status code is invalid or not supported.</Error>

      <!-- Error thrown when sending concatenated data that is not binary nor character. -->
      <Error Key="SendNonCharBinaryConcatData" NativeErrorCode="10970" _locID="1.SendNonCharBinaryConcatData">Cannot concatenate and send data that is not character or binary.</Error>

      <!-- Error thrown when sending concatenated data that is a default or null parameter. -->
      <Error Key="SendConcatDataForDefaultOrNullParam" NativeErrorCode="10980" _locID="1.SendConcatDataForDefaultOrNullParam">Cannot concatenate data for a default or null parameter.</Error>

      <!-- Error thrown when getting SQLGetInfo field which is not supported. -->
      <Error Key="InvalidGetInfoField" NativeErrorCode="10990" _locID="1.InvalidGetInfoField">SQLGetInfo field is invalid or not supported.</Error>

      <!-- Error thrown when getting query executor from catalog query manager.  Catalog functions are already executed thus has not query executor. -->
      <Error Key="NoQueryExecutor" NativeErrorCode="11000" _locID="1.NoQueryExecutor">No query executor exists for catalog query manager.</Error>

      <!-- Error thrown when there is no data-at-execution parameter detected for query executor. -->
      <Error Key="NoDataAtExecParameter" NativeErrorCode="11010" _locID="1.NoDataAtExecParameter">No data-at-execution parameter.</Error>

      <!-- Error thrown when querying a parameter source during auto population. -->
      <Error Key="CannotQueryParmSrcDuringPopulate" NativeErrorCode="11020" _locID="1.CannotQueryParmSrcDuringPopulate">Cannot query information about parameter source during parameter auto-population.</Error>

      <!-- Error thrown when setting fields of a parameter source during parameter data pushing. -->
      <Error Key="CannotSetParmSrcAttrDuringPushData" NativeErrorCode="11030" _locID="1.CannotSetParmSrcAttrDuringPushData">Cannot set parameter source attributes during parameter data pushing.</Error>

      <!-- Error thrown when querying push value status while not performing execution.  -->
      <Error Key="PushValueStatusUnknown" NativeErrorCode="11040" _locID="1.PushValueStatusUnknown">Push value status can only be queried during execution.</Error>

      <!-- Error thrown when registering a parameter but not allowed in current state of execution. -->
      <Error Key="ParamRegistNotPermit" NativeErrorCode="11050" _locID="1.ParamRegistNotPermit">Parameter registration not permitted.</Error>

      <!-- Error thrown when invalid parameter index used for parameter registration. -->
      <Error Key="InvalidParamRegistIndex" NativeErrorCode="11060" _locID="1.InvalidParamRegistIndex">Invalid parameter index used for registration.</Error>

      <!-- Error thrown when descriptor field value is not recognizable. -->
      <Error Key="DescFieldNotRecg" NativeErrorCode="11070" _locID="1.DescFieldNotRecg">Descriptor field value not of recognized value.</Error>

      <!-- Error thrown when parameter type is invalid or not supported  -->
      <Error Key="InvalidParameterType" NativeErrorCode="11080" _locID="1.InvalidParameterType">Parameter type invalid or not supported.</Error>

      <!-- Error thrown when setting fields of a parameter source during parameter execution. -->
      <Error Key="CannotSetParmSrcAttrDuringExecution" NativeErrorCode="11090" _locID="1.CannotSetParmSrcAttrDuringExecution">Cannot set parameter source attributes during execution.</Error>


      <!-- Error and warnings with connection and statement. -->
      <!-- Error thrown when setting a cursor name that is longer than the maximum limit. -->
      <Error Key="CursorNameTooLong" NativeErrorCode="11100" _locID="1.CursorNameTooLong">Cursor name too long.</Error>

      <!-- Error thrown when setting a cursor name that is already in use. -->
      <Error Key="DuplicateCursorName" NativeErrorCode="11110" _locID="1.DuplicateCursorName">Duplicate cursor name.</Error>

      <!-- Error thrown when there are outstanding transactions when attempting to disconnect. -->
      <Error Key="OutstandingTransDuringDisconn" NativeErrorCode="11120" _locID="1.OutstandingTransDuringDisconn">Outstanding transactions during disconnect.</Error>

      <!-- Error thrown when using a connection to allocate a resource that is not statement nor descriptor. -->
      <Error Key="AllocNonStmtDescInConn" NativeErrorCode="11130" _locID="1.AllocNonStmtDescInConn">Cannot use a connection to allocate a non-statement and non-descriptor resource.</Error>

      <!-- Error thrown when using a connection to free a resource that is not statement nor descriptor. -->
      <Error Key="FreeNonStmtDescInConn" NativeErrorCode="11140" _locID="1.FreeNonStmtDescInConn">Cannot use a connection to free a non-statement and non-descriptor resource.</Error>

      <!-- Error thrown when freeing an implicit application descriptor. -->
      <Error Key="FreeImplicitAppDesc" NativeErrorCode="11150" _locID="1.FreeImplicitAppDesc">Cannot free an implicit application descriptor.</Error>

      <!-- Error thrown when dropping an implicit application descriptor from its parent statement. -->
      <Error Key="DropImplicitAppDesc" NativeErrorCode="11160" _locID="1.DropImplicitAppDesc">Cannot drop implicit application descriptor from its parent statement.</Error>

      <!-- MAINTENANCE NOTE: This error message needs to manually be duplicated in the other locales, since it has not be translated -->
      <!-- Error thrown when cannot retrieve the requested SQLGetInfo property.  -->
      <Error Key="GetInfoPropNotFound" NativeErrorCode="11180" Params="1" _locID="1.GetInfoPropNotFound">SQLGetInfo property not found: %1%</Error>

      <!-- Error thrown when freeing a statement when no statements have been allocated. -->
      <Error Key="FreeStmtWithoutAllocStmt" NativeErrorCode="11190" _locID="1.FreeStmtWithoutAllocStmt">Cannot free a statement without an allocated statement.</Error>

      <!-- Error thrown when setting an attribute that is not allowed to be set in the current state of execution. -->
      <Error Key="AttrCantBeSetNow" NativeErrorCode="11200" _locID="1.AttrCantBeSetNow">Attribute cannot be set now.</Error>

      <!-- Error thrown when performing an operation that is not allowed during a transaction state. -->
      <Error Key="InvalidTransState" NativeErrorCode="11210" _locID="1.InvalidTransState">Operation not allowed during the transaction state.</Error>

      <!-- Error thrown when the current operation requires a cursor spec but statement does not have one. -->
      <Error Key="PreparedStmtNotCursorSpec" NativeErrorCode="11220" _locID="1.PreparedStmtNotCursorSpec">Prepared statement is not a cursor specification.</Error>

      <!-- Warning posted when SQLCancel is treated as closing a cursor. -->
      <Error Key="CancelTreatedAsCloseWarn" NativeErrorCode="11230" _locID="1.CancelTreatedAsCloseWarn">Cancel treated as close cursor.</Error>

      <!-- Error thrown when free statement option identifier is invalid or not supported. -->
      <Error Key="InvalidFreeStmtOptionIdent" NativeErrorCode="11240" _locID="1.InvalidFreeStmtOptionIdent">Free statement option identifier invalid or not supported.</Error>

      <!-- Error thrown when column attribute field identifier is invalid or not supported. -->
      <Error Key="InvalidColAttrFieldIdent" NativeErrorCode="11250" _locID="1.InvalidColAttrFieldIdent">Column attribute field identifier invalid or not supported.</Error>

      <!-- Error thrown when the result type of a statement is invalid or not supported. -->
      <Error Key="InvalidStmtResultType" NativeErrorCode="11270" _locID="1.InvalidStmtResultType">Statement result type invalid or not supported.</Error>

      <!-- Error thrown when the setting the current catalog when a result set is pending. -->
      <Error Key="InvalidCursorStateSetCatalog" NativeErrorCode="11280" _locID="1.InvalidCursorStateSetCatalog">Invalid cursor state: cannot set current catalog when results are pending.</Error>
      
      <!-- Error thrown when SQLRowCount return value is truncated -->
      <Error Key="SQLRowcountTruncation" Params="1" NativeErrorCode="11281" _locID="1.SQLRowcountTruncation">Rowcount (%1%) is outside the range of SQLLEN.</Error>

      <!-- Error and warnings with environment. -->
      <!-- Error thrown when using an environment to allocate a resource that is not connection. -->
      <Error Key="AllocNonConnInEnv" NativeErrorCode="11290" _locID="1.AllocNonConnInEnv">Cannot use an environment to allocate a non-connection resource.</Error>

      <!-- Error thrown when using an environment to free a resource that is not connection. -->
      <Error Key="InvalidFreeHandleOperationInEnvAllocState" NativeErrorCode="11300" _locID="1.InvalidFreeHandleOperationInEnvAllocState">Invalid free handle operation in the allocated environment state.</Error>

      <!-- Error thrown when SQL C type is not supported. -->
      <Error Key="SqlCTypeNotSupported" NativeErrorCode="11310" _locID="1.SqlCTypeNotSupported">SQL C type not supported.</Error>

      <!-- Error thrown when SQL type is not supported. -->
      <Error Key="SqlTypeNotSupported" NativeErrorCode="11320" _locID="1.SqlTypeNotSupported">SQL type not supported.</Error>

      <!-- Error thrown when setting a cursor name that begins with the reserved prefix. -->
      <Error Key="CursorNameBeginWithReservedPrefix" NativeErrorCode="11330" _locID="1.CursorNameBeginWithReservedPrefix">Cursor name cannot begin with a reserved prefix.</Error>
      
      <!-- Error thrown when argument value is invalid-->
      <Error Key="InvalidArgumentValue" NativeErrorCode="11340" _locID="1.InvalidArgumentValue">Invalid argument value.</Error>

      <!-- Error and warnings with catalog functions. -->
      <!-- Error thrown when fail to map metadata table id to catalog function id. -->
      <Error Key="MetadataTableIDNotFoundForCatalogFunctionId" NativeErrorCode="11360" _locID="1.MetadataTableIDNotFoundForCatalogFunctionId">Cannot find metadata table ID corresponding to catalog function ID.</Error>

      <!-- Error thrown when catalog name is null but is required. -->
      <Error Key="InvalidNullCatalogName" NativeErrorCode="11370" _locID="1.InvalidNullCatalogName">Invalid use of NULL pointer for catalog name.</Error>

      <!-- Error thrown when schema name is null but is required. -->
      <Error Key="InvalidNullSchemaName" NativeErrorCode="11371" _locID="1.InvalidNullSchemaName">Invalid use of NULL pointer for schema name.</Error>

      <!-- Error thrown when table name is null but is required. -->
      <Error Key="InvalidNullTableName" NativeErrorCode="11375" _locID="1.InvalidNullTableName">Invalid use of NULL pointer for table name.</Error>

      <!-- Error thrown when column name is null but is required. -->
      <Error Key="InvalidNullColumnName" NativeErrorCode="11376" _locID="1.InvalidNullColumnName">Invalid use of NULL pointer for column name.</Error>

      <!-- Error thrown when procedure name is null but is required. -->
      <Error Key="InvalidNullProcName" NativeErrorCode="11377" _locID="1.InvalidNullProcName">Invalid use of NULL pointer for procedure name.</Error>

      <!-- Error thrown when catalog name longer than max. -->
      <Error Key="CatalogNameTooLong" NativeErrorCode="11380" _locID="1.CatalogNameTooLong">Catalog name too long.</Error>

      <!-- Error thrown when schema name longer than max. -->
      <Error Key="SchemaNameTooLong" NativeErrorCode="11390" _locID="1.SchemaNameTooLong">Schema name too long.</Error>

      <!-- Error thrown when table name longer than max. -->
      <Error Key="TableNameTooLong" NativeErrorCode="11400" _locID="1.TableNameTooLong">Table name too long.</Error>

      <!-- Error thrown when procedure name longer than max. -->
      <Error Key="ProcNameTooLong" NativeErrorCode="11410" _locID="1.ProcNameTooLong">Procedure name too long.</Error>

      <!-- Error thrown when column name longer than max. -->
      <Error Key="ColumnNameTooLong" NativeErrorCode="11420" _locID="1.ColumnNameTooLong">Column name too long.</Error>

      <!-- Error thrown when provided a catalog name but catalog names are not supported. -->
      <Error Key="CatalogNameNotSupported" NativeErrorCode="11430" _locID="1.CatalogNameNotSupported">Catalog name not supported.</Error>

      <!-- Error thrown when provided a schema name but schemas are not supported. -->
      <Error Key="SchemaNotSupported" NativeErrorCode="11440" _locID="1.SchemaNotSupported">Schema not supported.</Error>

      <!-- Error thrown when the current settings of bookmark and cursor type are not compatible. -->
      <Error Key="BookmarkNotSupportedForCursorType" NativeErrorCode="11450" _locID="1.BookmarkNotSupportedForCursorType">Bookmark not supported for cursor type.</Error>

      <!-- Error thrown when catalog function id is invalid or not supported. -->
      <Error Key="InvalidCatalogFuncID" NativeErrorCode="11460" _locID="1.InvalidCatalogFuncID">Catalog function ID invalid or not supported.</Error>

      <!-- Error thrown when attempting to use transactions when they aren't supported. -->
      <Error Key="TransNotSupported" NativeErrorCode="11470" _locID="1.TransNotSupported">Transactions are not supported.</Error>

      <!-- Error and warnings with driver functions. -->
      <!-- Error thrown when we have too many handles. -->
      <Error Key="TooManyHandles" NativeErrorCode="11480" _locID="1.TooManyHandles">Too many handles in use.</Error>

      <!-- Error thrown when an operation is canceled. -->
      <Error Key="OperationCanceled" NativeErrorCode="11490" _locID="1.OperationCanceled">Operation canceled.</Error>


      <!-- Error and warnings with driver functions. -->
      <!-- Error thrown when driver configuration is invalid for DriverManagerEncoding -->
      <Error Key="DriverConfigurationWarningEncoding" NativeErrorCode="11510" _locID="1.DriverConfigurationWarningEncoding">Invalid driver configuration for DriverManagerEncoding.</Error>

      <!-- Error thrown when unable to use SQLGetPrivateProfileString functions. -->
      <Error Key="NoSQLGetPrivateProfileString" NativeErrorCode="11560" Params="1" _locID="1.NoSQLGetPrivateProfileString">Unable to locate SQLGetPrivateProfileString function: %1%</Error>

      <!-- Error thown when attempting to connect with missing required credential settings. -->
      <Error Key="CredentialMissing" NativeErrorCode="11570" Params="1" _locID="1.CredentialMissing">Required credential settings missing: %1%.</Error>

      <!-- Error thrown when the settings requested by DSII contain empty keys. -->
      <Error Key="EmptyKeyNameInSettings" NativeErrorCode="11580" _locID="1.EmptyKeyNameInSettings">An empty key name is found in the settings.</Error>
      
      <!-- Error thrown when the connection settings from User Connection String are already present while SQLBrowseConnect -->
      <Error Key="ConnAttrAlreadyPresent" Params="1" NativeErrorCode="11590" _locID="1.ConnAttrAlreadyPresent">Connection Error: Connection Attribute %1% already found!</Error>
      
      <!-- Error thrown when a non requested connection setting is present as a part of User Connection String while SQLBrowseConnect -->
      <Error Key="NonRequestedConnAttr" Params="1" NativeErrorCode="11600" _locID="1.NonRequestedConnAttr">Connection Error: Non Requested connection attribute %1% in ConnectionString </Error>
      
      <!-- Error thrown when the application sets SQL_DESC_BIND_TYPE to a value which isn't a multiple of the alignment of SQLLEN, on platforms that require aligned accesses -->
      <Error Key="InvalidBindType" Params="2" NativeErrorCode="11700" _locID="1.InvalidBindType">Cannot set SQL_DESC_BIND_TYPE to %1%. The value must either be SQL_BIND_BY_COLUMN (= 0), or divisible by the alignment of SQLLEN (= %2%)</Error>
      
      <!-- Error message when a driver hasn't implemented a prompt dialog for SQL_DRIVER_COMPLETE mode -->
      <Error Key="UnableToOpenPromptDialog" Params="0" NativeErrorCode="50480" _locID="1.UnableToOpenPromptDialog">A prompt dialog was required to connect but the driver is unable to open one.</Error>
      
      <!-- Error message when an input parameter is bound with a NULL data ptr, but wasn't bound using SQL_NULL_DATA/SQL_DEFAULT_PARAM -->
      <Error Key="InvalidNullPointerInputParamConv" Params="0" NativeErrorCode="50500" _locID="1.InvalidNullPointerInputParamConv">Invalid input parameter data: NULL data buffer provided without using SQL_NULL_DATA or SQL_DEFAULT_PARAM</Error>
    </Package>
    
    <!-- #################################################################################### -->
    <Package ID="2" DefaultComponent="DSI">

      <!-- Error thrown when fail to get connection property from DSI  -->
      <Error Key="DSIConnPropNotFound" Params="1" NativeErrorCode="20000" _locID="2.DSIConnPropNotFound">Connection property not found in DSI: %1%</Error>

      <!-- Error thrown when fail to get driver property from DSI. -->
      <Error Key="DSIDriverPropNotFound" Params="1" NativeErrorCode="20001" _locID="2.DSIDriverPropNotFound">Driver property not found in DSI: %1%</Error>

      <!-- Error thrown when fail to get environment property from DSI. -->
      <Error Key="DSIEnvPropNotFound" Params="1" NativeErrorCode="20002" _locID="2.DSIEnvPropNotFound">Environment property not found in DSI: %1%</Error>

      <!-- Error thrown when fail to get statement property from DSI. -->
      <Error Key="DSIStmtPropNotFound" Params="1" NativeErrorCode="20003" _locID="2.DSIStmtPropNotFound">Statement property not found in DSI: %1%</Error>

      <!-- Error thrown when setting driver to not put null terminator while driver does not support this feature. -->
      <Error Key="EnvAttrOutputNtsNotSupported" NativeErrorCode="20004" _locID="2.EnvAttrOutputNtsNotSupported">Driver does not support returning non null-terminated strings.</Error>

      <!-- Error thrown when fail to get statement property limits. -->
      <Error Key="DSIStmtPropLimitNotFound" Params="1" NativeErrorCode="20005" _locID="2.DSIStmtPropLimitNotFound">Statement property limitation not found: %1%</Error>

      <!-- Error thrown when current result set traversal direction is not supported. -->
      <Error Key="ResultSetTraverseDirNotSupported" Params="1" NativeErrorCode="20006" _locID="2.ResultSetTraverseDirNotSupported">Result set traversal direction is not supported: %1%</Error>

      <!-- Error thrown when metadata table id is invalid or not supported. -->
      <Error Key="InvalidMetadataTableID" Params="1" NativeErrorCode="20007" _locID="2.InvalidMetadataTableID">Invalid metadata table ID: %1%</Error>

      <!-- Error thrown when invalid filter is passed into metadata restriction generator. -->
      <Error Key="InvalidFilterInMetadataRestrictionGenerator" NativeErrorCode="20008" _locID="2.InvalidFilterInMetadataRestrictionGenerator">Invalid filter used in metadata restriction generator.</Error>

      <!-- Error thrown when no columns are marked as needed during data retrieval. -->
      <Error Key="NoColumnsNeededDuringDataRetrieval" NativeErrorCode="20012" _locID="2.NoColumnsNeededDuringDataRetrieval">No column data requested but data retrieval performed.</Error>

      <!-- Error thrown when no column exists for column number for data retrieval. -->
      <Error Key="InvalidColumnNum" Params="1" NativeErrorCode="20013" _locID="2.InvalidColumnNum">Invalid column number: %1%</Error>

      <!-- Error thrown when metadata source invalid or not found. -->
      <Error Key="MetadataSourceNotFound" NativeErrorCode="20014" _locID="2.MetadataSourceNotFound">Metadata source invalid or not found.</Error>

      <!-- Error thrown when cursor type invalid or not supported. -->
      <Error Key="CursorTypeNotSupported" Params="1" NativeErrorCode="20016" _locID="2.CursorTypeNotSupported">Cursor type is not supported: %1%</Error>

      <!-- Error thrown when asking basic metadata result for derived data. -->
      <Error Key="CannotGetDerivedDataOnBasicResult" NativeErrorCode="20017" _locID="2.CannotGetDerivedDataOnBasicResult">Cannot retrieve derived data on basic filtered metadata result.</Error>

      <!-- Error thrown when derived column Id is invalid for current metadata root. -->
      <Error Key="InvalidDerivedColumnID" NativeErrorCode="20018" _locID="2.InvalidDerivedColumnID">Invalid derived metadata column ID.</Error>

      <!-- Error thrown when current parameter is default but data source does not allow it to be default value for current parameter. -->
      <Error Key="DefaultParamNotAllowed" NativeErrorCode="20020" _locID="2.DefaultParamNotAllowed">Current parameter is not allowed to be default.</Error>

      <!-- Error thrown when a specified column name is invalid or not found. -->
      <Error Key="InvalidColumnName" Params="1" NativeErrorCode="20021" _locID="2.InvalidColumnName">Invalid column name: %1%</Error>

      <!-- Error thrown when there is an invalid filter value (i.e. null). -->
      <Error Key="InvalidFilterVal" NativeErrorCode="20023" _locID="2.InvalidFilterVal">Invalid filter value. Do not use null strings in filter values. To avoid filtering, use an empty vector.</Error>
      
      <!-- Error thrown when performing cursor or data retrieval related operations on a row count result. -->
      <Error Key="CannotPerformCursorOrDataRetrievalOperationOnRowCountResult" NativeErrorCode="20027" _locID="2.CannotPerformCursorOrDataRetrievalOperationOnRowCountResult">Cannot perform cursor or data retrieval operations on row count result.</Error>
      
      <!-- Error thrown when a function is not supported. -->
      <Error Key="FuncNotSupported" NativeErrorCode="20029" _locID="2.FuncNotSupported">Function not supported.</Error>
      
      <!-- Error thrown when memory allocation failed. -->
      <Error Key="DSIMemAllocErr" NativeErrorCode="20030" _locID="2.DSIMemAllocErr">Memory management error.</Error>

      <!-- Error thrown when cannot find custom property. -->
      <Error Key="CustomPropNotFound" Params="1" NativeErrorCode="20031" _locID="2.CustomPropNotFound">Custom property not found: %1%</Error>

      <!-- Error thrown when a required setting is requested but not present. -->
      <Error Key="DSIReqSettingNotFound" Params="1" NativeErrorCode="20032" _locID="2.DSIReqSettingNotFound">Required setting '%1%' is not present in the connection settings.</Error>

      <!-- Error thrown when a parameter type is output for an input parameter, or input for an output parameter. -->
      <Error Key="IncompatibleParameterTypes" Params="1" NativeErrorCode="20033" _locID="2.IncompatibleParameterTypes">Incompatible parameter type specified for parameter: %1%.</Error>

      <!-- Error thrown when a parameter SQL type doesn't match the bound type. -->
      <Error Key="IncompatibleParameterSqlTypes" Params="3" NativeErrorCode="20034" _locID="2.IncompatibleParameterSqlTypes">Incompatible parameter SQL type specified for parameter: %1%. Bound type: %2%. Expected type: %3%</Error>

      <!-- Error thrown when a specifying an invalid catalog as the current catalog. -->
      <Error Key="InvalidCurrentCatalog" Params="1" NativeErrorCode="20035" _locID="2.InvalidCurrentCatalog">Invalid catalog specified: %1%</Error>

      <!-- Error thrown when a hex string with an odd length is given to DSITypeUtilities::HexStringToBinary() -->
      <Error Key="DSIHexToBinaryConversionOddLengthError" NativeErrorCode="20036" _locID="2.DSIHexToBinaryConversionOddLengthError">Error converting from hexadecimal string to binary: odd length for hexadecimal string.</Error>

      <!-- Error thrown when a hex string with an invalid character is given to DSITypeUtilities::HexStringToBinary() -->
      <Error Key="DSIHexToBinaryConversionInvalidCharacterError" Params="1" NativeErrorCode="20037" _locID="2.DSIHexToBinaryConversionInvalidCharacterError">Error converting from hexadecimal string to binary: hexadecimal string contains non-hex character '%1%'.</Error>

      <!-- Error thrown when an property type is incorrect. -->
      <Error Key="IncorrectPropertyAttributeType" Params="3" NativeErrorCode="20038" _locID="2.IncorrectPropertyAttributeType">Property AttributeData type is incorrect for property key %1%: expected %2%, actual %3%</Error>
      
      <!-- Error thrown when too much data is provided in a call to DSI::RowProperties::WriteData -->
      <Error Key="TempTableCellOverflow" NativeErrorCode="20039" Params="3" _locID="2.TempTableCellOverflow">Cannot store %1% value in temporary table without truncation. (Column metadata implied a maximum of %2% bytes, while provided value is %3% bytes)</Error>

      <!-- Error thrown when the total swap file disk space has reached the limit. -->
      <Error Key="SwapLimitErr" NativeErrorCode="20040" _locID="2.SwapLimitErr">Total swap file disk space limit reached.</Error>
    
      <!-- Error thrown when a shared library fails to load. -->
      <Error Key="LibLoadErr" NativeErrorCode="20041" Params="2" _locID="2.LibLoadErr">Error loading dynamic or shared library %1%: %2%.</Error>
    
      <!-- Error thrown when there's an error resolving a symbol from a shared library. -->
      <Error Key="LibFunctLoadErr" Params="3" NativeErrorCode="20042" _locID="2.LibFunctLoadErr">Error loading function '%2%' from dynamic or shared library '%1%': %3%</Error>
    
      <!-- Error thrown when OpenSSL fails to load. -->
      <Error Key="SwapFileEncryptErr" NativeErrorCode="20043" _locID="2.SwapFileEncryptErr">Internal error encrypting or decrypting swap file: call '%1%' - reason '%2%'.</Error>
    
      <!-- Error thrown when a NULL simba_wstring is passed to SharedLibrary as a library path on windows -->
      <Error Key="WindowsNullLibLoad" NativeErrorCode="20044" Params="0" _locID="2.WindowsNullLibLoad">Simba::Support::SharedLibrary doesn't support NULL as a library path on Windows.</Error>
      
      <!-- [HY000]: Invalid argument passed to a function. -->
      <Error Key="InvalidArgument" Params="2" NativeErrorCode="21000" _locID="2.InvalidArgument">Invalid argument(s) passed into a function [%1%: %2%].</Error>

      <!-- [HY000]: Invalid function/method has been invoked. -->
      <Error Key="InvalidOperation" Params="3" NativeErrorCode="21001" _locID="2.InvalidOperation">A logic error occurred while calling function %1% [%2%: %3%]. Ensure the operation is supported and the function is implemented.</Error>
    
      <!-- [22019]: Invalid LIKE escape character. -->
      <Error Key="InvalidEscapeChar" Params="1" NativeErrorCode="22019" _locID="2.InvalidEscapeChar">Invalid LIKE ESCAPE clause '%1%'. This clause must consist of exactly one character.</Error>

      <!-- [22025]: Invalid LIKE escape sequence. -->
      <Error Key="InvalidEscapeSequence" NativeErrorCode="22025" _locID="2.InvalidEscapeSequence">Invalid LIKE ESCAPE sequence. Escape character must be followed be a '%', '_', or another escape character.</Error>

      <!-- [HY000]: Statement execution failed during IDataEngine::ExecuteParameterLessQueryUnknownError(), but the reason is unknown -->
      <Error Key="ExecuteParameterLessQueryUnknownError" NativeErrorCode="22040" _locID="2.ExecuteParameterLessQueryUnknownError">Execution failed due to an unknown error.</Error>

      <!-- [HY000]: Statement execution produced no results a batch execution, but the reason is unknown -->
      <Error Key="ExecuteBatchNoResults" NativeErrorCode="22041" _locID="2.ExecuteBatchNoResults">Execution produced no results.</Error>

      <!-- [HY000]: Statement execution produced a resultset during batch execution, but only rowcounts are allowed. -->
      <Error Key="ExecuteBatchResultSet" NativeErrorCode="22042" _locID="2.ExecuteBatchResultSet">Execution produced a resultset. Only rowcount-producing statements are allowed during batch execution.</Error>

      <!-- [HY000]: Statement execution produced multiple results during batch execution, but only a single rowcount result is allowed. -->
      <Error Key="ExecuteBatchMultipleResults" NativeErrorCode="22043" _locID="2.ExecuteBatchMultipleResults">Execution produced multiple results. Only a single rowcount result is allowed during batch execution.</Error>

      <!-- [HY000]: Statement used for batch execution needs dynamic parameters, which is not allowed. -->
      <Error Key="ExecuteBatchParameters" NativeErrorCode="22045" _locID="2.ExecuteBatchParameters">Statements in a batch execution may not use dynamic parameters.</Error>

      <!-- Swap: Seek error. -->
      <Error Key="SwapSeekError" NativeErrorCode="22046" _locID="2.SwapSeekError">Internal error: failed to change position in swap file.</Error>
      
      <!-- [HY000]: COLUMNS Clause may not be empty in a NATIVE escape.  -->
      <Error Key="EmptyColumnsClauseError" NativeErrorCode="22047" _locID="2.EmptyColumnsClauseError">COLUMNS Clause may not be empty in a NATIVE escape.</Error>

      <!-- Error when registering duplicate components to the message source. -->
      <Error Key="DuplicateComponentErr" Params="3" NativeErrorCode="22048" _locID="2.DuplicateComponentErr">Component ID '%1%' to register in message file '%2%' has already been registered in message file '%3%'.</Error>

      <!-- Error when too many filter values were provided for a catalog function -->
      <Error Key="CatFnTooManyFilters" Params="0" NativeErrorCode="22049" _locID="2.CatFnTooManyFilters">Too many filters were provided for the catalog function which was executed.</Error>
    
      <!-- Error thrown when multiple possible paths for a shared library are provided, and none of them succeed in loading -->
      <Error Key="LibsLoadErr" NativeErrorCode="22050" Params="1" _locID="2.LibsLoadErr">Could not load shared library, all attempted paths (%1%) failed</Error>
    
      <!-- Error thrown when there's an error in using a swap file -->
      <Error Key="SwapFileErr" NativeErrorCode="20051" Params="3" _locID="2.SwapFileErr">Internal error using swap file "%1%" in "%2%": "%3%".</Error>
    
      <!-- Error thrown when there's an error in validating temporary table data -->
      <Error Key="InvalidTemporaryTableData" NativeErrorCode="20060" _locID="2.InvalidTemporaryTableData">Buffer for temporary table data contains invalid data.</Error>
    </Package>

    <!-- #################################################################################### -->
    <Package ID="3" DefaultComponent="Support">

      <!-- [HY000]: Invalid argument passed to a function. -->
      <Error Key="InvalidArgument" Params="2" NativeErrorCode="30020" _locID="3.InvalidArgument">Invalid argument passed into a function [%1%: %2%].</Error>

      <!-- [HY000]: Invalid argument passed to a function. -->
      <Error Key="InvalidArgumentParam" Params="3" NativeErrorCode="30021" _locID="3.InvalidArgumentParam">Invalid argument (%1%) passed into a function [%2%: %3%].</Error>

      <!-- [HY000]: Invalid function/method has been invoked. -->
      <Error Key="InvalidOperation" Params="3" NativeErrorCode="30030" _locID="3.InvalidOperation">Error while calling function %1% [%2%: %3%]. Check that the operation is supported and the function is implemented.</Error>

      <!-- Error thrown when attribute data type is invalid or not supported. -->
      <Error Key="AttrDataTypeNotRecog" NativeErrorCode="40020" _locID="3.AttrDataTypeNotRecog">Attribute data type not recognized.</Error>

      <!-- Error thrown when buffer is too small to hold binary attribute data. --> 
      <Error Key="BufLenTooSmallForBinaryAttrData" NativeErrorCode="40070" _locID="3.BufLenTooSmallForBinaryAttrData">Buffer length too small for returned binary attribute data.</Error>

      <!-- Error thrown when warning listener is not valid or not found. --> 
      <Error Key="WarningListenerNotValid" NativeErrorCode="40090" _locID="3.WarningListenerNotValid">Warning listener is not valid or not found.</Error>
      
      <!-- Error thrown when invalid string buffer length is given. --> 
      <Error Key="InvalidStrBufLen" NativeErrorCode="40100" _locID="3.InvalidStrBufLen">Invalid string buffer length.</Error>

      <!-- Error thrown when converting from SQL C type to SQL C type. --> 
      <Error Key="IllegalDataConvFromCToCType" NativeErrorCode="40110" _locID="3.IllegalDataConvFromCToCType">Illegal data conversion from SQL C type to SQL C type.</Error>

      <!-- Error thrown when converting from SQL type to SQL type. --> 
      <Error Key="IllegalDataConvFromSQLToSQLType" NativeErrorCode="40120" _locID="3.IllegalDataConvFromSQLToSQLType">Illegal data conversion from SQL type to SQL type.</Error>

      <!-- Error thrown when setting precision less than zero. --> 
      <Error Key="PrecLessThanZero" NativeErrorCode="40130" _locID="3.PrecLessThanZero">Precision cannot be less than zero.</Error>

      <!-- Error thrown when setting precision greater than supported. -->
      <Error Key="MaxPrecisionExceeded" Params="2" NativeErrorCode="40131" _locID="3.MaxPrecisionExceeded">The number '%1%' exceeds the maximum precision allowed (%2%).</Error>

      <!-- Error thrown when setting scale less than zero. --> 
      <Error Key="ScaleLessThanZero" NativeErrorCode="40140" _locID="3.ScaleLessThanZero">Scale can't be less than zero.</Error>

      <!-- Error thrown when SQL C type is not supported. --> 
      <Error Key="SQLCTypeNotSupported" Params="2" NativeErrorCode="40150" _locID="3.SQLCTypeNotSupported">SQL C type not supported: %1% (%2%)</Error>

      <!-- Error thrown when SQL type is not supported. --> 
      <Error Key="SQLTypeNotSupported" Params="2" NativeErrorCode="40160" _locID="3.SQLTypeNotSupported">SQL type not supported: %1% (%2%)</Error>

      <!-- Error thrown when SQL TDW type is not supported. --> 
      <Error Key="SQLTDWTypeNotSupported" Params="1" NativeErrorCode="40170" _locID="3.SQLTDWTypeNotSupported">SQL TDW type not supported (%1%).</Error>

      <!-- Error thrown when data conversion algorithm resulted in an error. -->
      <Error Key="DataConvAlgorithmError" NativeErrorCode="40180" _locID="3.DataConvAlgorithmError">Data conversion algorithm error.</Error>

      <!-- Error thrown when data conversion algorithm resulted in a memory allocation error. -->
      <Error Key="DataConvAlgorithmMemError" NativeErrorCode="40181" _locID="3.DataConvAlgorithmMemError">Data conversion algorithm memory allocation error.</Error>

      <!-- Error thrown when conversion between the 2 data types are not supported. --> 
      <Error Key="DataConvAlgorithmNotSupported" Params="2" NativeErrorCode="40190" _locID="3.DataConvAlgorithmNotSupported">Data conversion algorithm not supported for %1% to %2%.</Error>

      <!-- Error thrown when fail to map SQLC type to tDW type. -->
      <Error Key="TDWTypeNotFoundForCType" Params="2" NativeErrorCode="40450" _locID="3.TDWTypeNotFoundForCType">Cannot find corresponding TDW type for SQL C type %1% (%2%).</Error>

      <!-- Error thrown when fail to map SQL type to tDW type. -->
      <Error Key="TDWTypeNotFoundForSqlType" Params="2" NativeErrorCode="40460" _locID="3.TDWTypeNotFoundForSqlType">Cannot find corresponding TDW type for SQL type %1% (%2%).</Error>

      <!-- Error thrown when fail to find default SQL C type for the TDW type. --> 
      <Error Key="DefaultCForTDWTypeNotFound" Params="2" NativeErrorCode="40210" _locID="3.DefaultCForTDWTypeNotFound">Cannot find default SQL C type for TDW type %1% (%2%).</Error>

      <!-- Error thrown when TDW timestamp type is invalid. --> 
      <Error Key="InvalidTDWTimestampType" NativeErrorCode="40220" _locID="3.InvalidTDWTimestampType">Invalid TDW timestamp type.</Error>

      <!-- Error thrown when joining two buffer descriptors forms a loop. -->
      <Error Key="DetectedBufferDescriptorLoop" NativeErrorCode="40240" _locID="3.DetectedBufferDescriptorLoop">Detected a loop when joining two buffer descriptors.</Error>

      <!-- Error thrown when attempting to allocate memory for a string fails. -->
      <Error Key="CannotAllocateMemoryForString" NativeErrorCode="40250" _locID="3.CannotAllocateMemoryForString">Cannot allocate memory to read string into.</Error>

      <!-- Error thrown when attempting to generate a new handle when the maximum handle value has been hit. -->
      <Error Key="CannotGenerateHandle" NativeErrorCode="40260" _locID="3.CannotGenerateHandle">Too many handles in use.</Error>

      <!-- Error thrown when an argument is passed to an object that is invalid. -->
      <Error Key="IllegalArgument" NativeErrorCode="40280" _locID="3.IllegalArgument">Invalid argument passed to function.</Error>

      <!-- Error thrown when a new handle failed to be inserted in the manager. -->
      <Error Key="HandleInsertionFailed" NativeErrorCode="40290" _locID="3.HandleInsertionFailed">Handle was not successfully inserted into handle manager.</Error>

      <!-- Warning posted when trying to get attribute data as the wrong type. -->
      <Error Key="BadAttrType" NativeErrorCode="40300" _locID="3.BadAttrType">Cannot get attribute as requested type.</Error>

      <!-- Error thrown when SetLength or AttachBuffer are called on SQLData with the wrong ownership strategy. -->
      <Error Key="InvalidBufferStrategyOperation" NativeErrorCode="40310" _locID="3.InvalidBufferStrategyOperation">Invalid opperation for the selected buffer ownership strategy.</Error>

      <!-- Error posted when an arithmetic operation resulted in an invalid numeric. -->
      <Error Key="TDWNumericArithmeticError" Params="1" NativeErrorCode="40320" _locID="3.TDWNumericArithmeticError">Numeric operation '%1%' resulted in an invalid numeric.</Error>

      <!-- Error thrown when constructing a numeric from a string resulted in an invalid numeric. -->
      <Error Key="TDWNumericStringError" Params="1" NativeErrorCode="40321" _locID="3.TDWNumericStringError">String value '%1%' resulted in an invalid numeric.</Error>

      <!-- Error thrown when constructing a numeric from a number resulted in an invalid numeric. -->
      <Error Key="TDWNumericValueError" Params="1" NativeErrorCode="40322" _locID="3.TDWNumericValueError">Value '%1%' resulted in an invalid numeric.</Error>

      <!-- Error thrown when constructing a numeric from a number resulted in an invalid numeric. -->
      <Error Key="TDWNumericOperationOnInvalid" Params="1" NativeErrorCode="40323" _locID="3.TDWNumericOperationOnInvalid">Attempted operation '%1%' on an invalid numeric.</Error>

      <!-- Error thrown when fetching a numeric resulted in an out of range error. -->
      <Error Key="TDWNumericOutOfRangeError" Params="2" NativeErrorCode="40324" _locID="3.TDWNumericOutOfRangeError">Value '%1%' fetched as %2% was out of range.</Error>

      <!-- Swap: Invalid column number. -->
      <Error Key="SwapInvalidColumnNum" NativeErrorCode="40340" _locID="3.SwapInvalidColumnNum">Internal error: attempted to access a column that is not valid.</Error>

      <!-- Swap: Invalid offset. -->
      <Error Key="SwapInvalidOffset" NativeErrorCode="40350" _locID="3.SwapInvalidOffset">Internal error: invalid computed offset while reserving space for swap file.</Error>

      <!-- Swap: Invalid row number. -->
      <Error Key="SwapInvalidRowNum" NativeErrorCode="40360" _locID="3.SwapInvalidRowNum">Internal error: attempted to access a row that is not valid.</Error>

      <!-- Swap: Read error. -->
      <Error Key="SwapReadError" NativeErrorCode="40370" _locID="3.SwapReadError">Internal error: failed to read from swap file.</Error>

      <!-- Swap: Seek error. -->
      <Error Key="SwapSeekError" NativeErrorCode="40380" _locID="3.SwapSeekError">Internal error: failed to change position in swap file.</Error>

        <!-- Swap: Write error. -->
      <Error Key="SwapWriteError" Params="1" NativeErrorCode="40390" _locID="3.SwapWriteError">Error writing to temporary swap file %1%. Make sure that the swap file location is writeable and has sufficient space.</Error>
      
      <!-- Error thrown when the end of the message buffer is encountered while more data is expected. -->
      <Error Key="UnexpectedBufferEnd" NativeErrorCode="40400" _locID="3.UnexpectedBufferEnd">Unexpected end of content buffer.</Error>

      <!-- Error thrown if the serializer runs out of memory to serialize into. -->
      <Error Key="OutOfMemToSerialize" NativeErrorCode="40410" _locID="3.OutOfMemToSerialize">Out of memory to serialize content into.</Error>

      <!-- Error thrown when traversal direction is not supported for temporary table. -->
      <Error Key="TempTableTraverseDirNotSupported" NativeErrorCode="40430" _locID="3.TempTableTraverseDirNotSupported">Traversal direction not supported for temporary table.</Error>

      <!-- Error thrown when accesing a closed temporary table. -->
      <Error Key="CannotAccessDataWithCursor" NativeErrorCode="40440" _locID="3.CannotAccessDataWithCursor">Cannot access data in temporary table without open cursor.</Error>

      <!-- [01004]: String data, right-truncated. -->
      <Error Key="StrRightTrunc" NativeErrorCode="40450" _locID="3.StrRightTrunc">String data truncated while performing conversion.</Error>

      <!-- [01S07]: Fractional truncation. -->
      <Error Key="FractionalTrunc" NativeErrorCode="40460" _locID="3.FractionalTrunc">Fractional data truncated while performing conversion.</Error>

      <!-- [07006]: Restricted data type violation. -->
      <Error Key="RestrictedDataTypeAttrViolation" NativeErrorCode="40461" _locID="3.RestrictedDataTypeAttrViolation">Restricted data type attribute violation.</Error>

      <!-- [07006]: Invalid multi-field interval conversion. -->
      <Error Key="InvalidMultiFieldIntervalConversion" NativeErrorCode="40462" _locID="3.InvalidMultiFieldIntervalConversion">Invalid conversion. Multi-field intervals cannot be converted to a single number.</Error>

      <!-- [22001]: String data, right-truncated. -->
      <Error Key="StrRightTruncErr" NativeErrorCode="40465" _locID="3.StrRightTruncErr">String data truncated while performing conversion.</Error>

      <!-- [22003]: Numeric value out of range. -->
      <Error Key="NumericValOutOfRange" Params="2" NativeErrorCode="40470" _locID="3.NumericValOutOfRange">Conversion error at column %1% and row %2%: numeric value out of range.</Error>

      <!-- [22007]: Invalid date, time or datetime format. -->
      <Error Key="InvalidDatetimeFormat" NativeErrorCode="40480" _locID="3.InvalidDatetimeFormat">Invalid date, time or timestamp format.</Error>

      <!-- [22007]: Invalid date format. -->
      <Error Key="InvalidDateFormat" Params="1" NativeErrorCode="40481" _locID="3.InvalidDateFormat">Invalid date format for '%1%'. The format should be [-]YYYY-MM-DD.</Error>

      <!-- [22007]: Invalid time format. -->
      <Error Key="InvalidTimeFormat" Params="1" NativeErrorCode="40482" _locID="3.InvalidTimeFormat">Invalid time format for '%1%'. The format should be hh:mm:ss[.fffffffff].</Error>

      <!-- [22007]: Invalid timestamp format. -->
      <Error Key="InvalidTimestampFormat" Params="1" NativeErrorCode="40483" _locID="3.InvalidTimestampFormat">Invalid timestamp format for '%1%'. The format should be [-]YYYY-MM-DD hh:mm:ss[.fffffffff].</Error>

      <!-- [22007]: Invalid date, time or datetime value. -->
      <Error Key="InvalidDatetimeValue" NativeErrorCode="40490" _locID="3.InvalidDatetimeValue">Invalid date, time or timestamp value.</Error>

      <!-- [22007]: Invalid date value. -->
      <Error Key="InvalidDateValue" Params="1" NativeErrorCode="40500" _locID="3.InvalidDateValue">Invalid date value '%1%'. The year must be in the range [-9999, 9999], the month must be within the range [1, 12], and the day must be within the range [1, 31] while conforming to the range of days for the specified month and year.</Error>

      <!-- [22007]: Invalid time value. -->
      <Error Key="InvalidTimeValue" Params="1" NativeErrorCode="40501" _locID="3.InvalidTimeValue">Invalid time value '%1%'. The hour must be in the range [0, 23], the minute must be within the range [0, 59], and the second must be within the range [0, 61] with 60 and 61 reserved for leap seconds.</Error>

      <!-- [22007]: Invalid timestamp value. -->
      <Error Key="InvalidTimestampValue" Params="1" NativeErrorCode="40502" _locID="3.InvalidTimestampValue">Invalid timestamp value '%1%'. The year must be in the range [-9999, 9999] excluding 0, the month must be within the range [1, 12], the day must be within the range [1, 31] while conforming to the range of days for the specified month and year, the hour must be in the range [0, 23], the minute must be within the range [0, 59], and the second must be within the range [0, 61], with 60 and 61 reserved for leap seconds.</Error>

      <!-- [22007]: Invalid year to month interval value. -->
      <Error Key="InvalidYearMonthIntervalValue" Params="1" NativeErrorCode="40491" _locID="3.InvalidYearMonthIntervalValue">Invalid year to month interval value: %1%. The year must be within the range [0, 999999999], and the month must be within the range [0, 11].</Error>

      <!-- [22007]: Invalid day to hour interval value. -->
      <Error Key="InvalidDayHourIntervalValue" Params="1" NativeErrorCode="40492" _locID="3.InvalidDayHourIntervalValue">Invalid day to hour interval value: %1%. The day must be within the range [0, 999999999], and the hour must be within the range [0, 23].</Error>

      <!-- [22007]: Invalid day to minute interval value. -->
      <Error Key="InvalidDayMinuteIntervalValue" Params="1" NativeErrorCode="40493" _locID="3.InvalidDayMinuteIntervalValue">Invalid day to minute interval value: %1%. The day must be within the range [0, 999999999], the hour must be within the range [0, 23], and the minute must be within the range [0, 59].</Error>

      <!-- [22007]: Invalid day to second interval value. -->
      <Error Key="InvalidDaySecondIntervalValue" Params="1" NativeErrorCode="40494" _locID="3.InvalidDaySecondIntervalValue">Invalid day to second interval value: %1%. The day must be within the range [0, 999999999], and the hour must be within the range [0, 23], and the minute and second must be within the range [0, 59].</Error>

      <!-- [22007]: Invalid hour to minute interval value. -->
      <Error Key="InvalidHourMinuteIntervalValue" Params="1" NativeErrorCode="40495" _locID="3.InvalidHourMinuteIntervalValue">Invalid hour to minute interval value: %1%. The hour must be within the range [0, 999999999], and the minute must be within the range [0, 59].</Error>

      <!-- [22007]: Invalid hour to second interval value. -->
      <Error Key="InvalidHourSecondIntervalValue" Params="1" NativeErrorCode="40496" _locID="3.InvalidHourSecondIntervalValue">Invalid hour to second interval value: %1%. The hour must be within the range [0, 999999999] and the minute and second must be within the range [0, 59].</Error>

      <!-- [22007]: Invalid minute to second interval value. -->
      <Error Key="InvalidMinuteSecondIntervalValue" Params="1" NativeErrorCode="40497" _locID="3.InvalidMinuteSecondIntervalValue">Invalid minute to second interval value: %1%. The minute must be within the range [0, 999999999] and the second must be within the range [0, 59].</Error>

      <!-- [22007]: Invalid second interval value. -->
      <Error Key="InvalidSecondIntervalValue" Params="1" NativeErrorCode="40498" _locID="3.InvalidSecondIntervalValue">Invalid second interval value: %1%. The second must be within the range [0, 999999999].</Error>

      <!-- [22007]: Invalid single field interval value. -->
      <Error Key="InvalidSingleFieldIntervalValue" Params="1" NativeErrorCode="40499" _locID="3.InvalidSingleFieldIntervalValue">Invalid single field interval value: %1%. The value must be within the range [0, 999999999].</Error>

      <!-- [22008]: Invalid datetime value resulting in a field overflow. -->
      <Error Key="IntervalArithOverflow" Params="1" NativeErrorCode="40519" _locID="3.IntervalArithOverflow">Interval field overflow resulted from '%1%' operation.</Error>

      <!-- [22008]: Invalid datetime value resulting in a field overflow. -->
      <Error Key="DatetimeFieldOverflow" NativeErrorCode="40520" _locID="3.DatetimeFieldOverflow">Datetime field overflow resulting from invalid datetime.</Error>

      <!-- [22015]: Interval field overflow. -->
      <Error Key="IntervalFieldOverflow" NativeErrorCode="40530" _locID="3.IntervalFieldOverflow">Interval field overflow.</Error>

      <!-- [22015]: Leading precision is too small for the leading interval value. -->
      <Error Key="InvalidLeadingPrecision" NativeErrorCode="40540" _locID="3.InvalidLeadingPrecision">Leading precision is smaller than precision of leading interval value.</Error>

      <!-- [22015]: Leading interval precision exceeded. -->
      <Error Key="LeadingPrecisionExceeded" Params="1" NativeErrorCode="40541" _locID="3.LeadingPrecisionExceeded">Leading interval precision of %1% exceeded.</Error>

      <!-- [22015]: Fractional seconds precision exceeded. -->
      <Error Key="FractionalPrecisionExceeded" Params="1" NativeErrorCode="40542" _locID="3.FractionalPrecisionExceeded">Fractional seconds precision of %1% exceeded.</Error>

      <!-- [22015]: Fractional seconds precision is too small for the interval value. -->
      <Error Key="InvalidFractionalPrecision" NativeErrorCode="40543" _locID="3.InvalidFractionalPrecision">Fractional seconds precision is smaller than precision of the interval value.</Error>

      <!-- [22018]: Invalid character value for cast. -->
      <Error Key="InvalidCharValForCast" NativeErrorCode="40550" _locID="3.InvalidCharValForCast">Invalid character value for cast specification.</Error>

      <!-- [22018]: Invalid GUID data format. -->
      <Error Key="InvalidGuidValue" Params="1" NativeErrorCode="40560" _locID="3.InvalidGuidValue">Invalid GUID data value: %1%. GUID must be in the format of XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX with optional enclosing {} braces.</Error>

      <!-- [HY013]: Out of memory error. -->
      <Error Key="OutOfMemoryError" NativeErrorCode="40600" _locID="3.OutOfMemoryError">Out of memory error.</Error>
      
      <!-- [HY000]: Conversion invalid data. -->
      <Error Key="ConvInvalidData" NativeErrorCode="40610" _locID="3.ConvInvalidData">Invalid data for conversion.</Error>
      
      <!-- [HY000]: Conversion logic error. -->
      <Error Key="ConvLogicError" NativeErrorCode="40620" _locID="3.ConvLogicError">Logic error during conversion.</Error>

      <!-- [HY000]: Semaphore at maximum value. -->
      <Error Key="ErrSemaphoreMaxValue" NativeErrorCode="40621" _locID="3.ErrSemaphoreMaxValue">Cannot set semaphore to a value greater than SEMAPHORE_MAX_VALUE.</Error>

      <!-- [HY000]: Error initializing semaphore. -->
      <Error Key="ErrSemaphoreInit" Params="1" NativeErrorCode="40622" _locID="3.ErrSemaphoreInit">Error initializing semaphore: %1%</Error>

      <!-- Error thrown when there is an I/O error. -->
      <Error Key="IOError" NativeErrorCode="40630" _locID="3.IOError">I/O error.</Error>

      <!-- Error thrown when a BinaryFile method is called on a closed object. -->
      <Error Key="BinaryFileNotOpen" NativeErrorCode="40631" Params="4" _locID="3.BinaryFileNotOpen">%1%::%2%::%3% called on closed file "%4%"</Error>

      <!-- Error thrown when someone calls BinaryFile::ReOpen on a file which has been opened using OPENMODE_SWAP -->
      <Error Key="BinaryFileReOpenSwapFile" NativeErrorCode="40632" Params="1" _locID="3.BinaryFileReOpenSwapFile">Simba::Support::BinaryFile::ReOpen called on file "%1%" which was opened using OPENMODE_SWAP, cannot be reopened.</Error>

      <!-- Error thrown when someone calls BinaryFile::ReOpen and it fails. -->
      <Error Key="FreopenFailed" NativeErrorCode="40633" Params="3" _locID="3.FreopenFailed">Simba::Support::BinaryFile::ReOpen: freopen(\"%1%\", \"%2%\") failed: %3%</Error>

      <!-- Error thrown when someone calls BinaryFile::Read/Write/Extend with in_size < 0. -->
      <Error Key="BinaryFileNegSize" NativeErrorCode="40634" Params="5" _locID="3.BinaryFileNegSize">%1%::%2%::%3% called on file "%4%" with in_size = %5% &lt; 0</Error>

      <!-- Error thrown when someone calls BinaryFile::Read/Write with in_size > SIMBA_SIZE_MAX. -->
      <Error Key="BinaryFileRWSizeTooLarge" NativeErrorCode="40635" Params="6" _locID="3.BinaryFileRWSizeTooLarge">%1%::%2%::%3% called on file "%4%" with in_size = %5% &gt; SIMBA_SIZE_MAX = %6%</Error>

      <!-- Error thrown when someone calls BinaryFile::Read/Write with a null buffer. -->
      <Error Key="BinaryFileRWNullBuffer" NativeErrorCode="40636" Params="4" _locID="3.BinaryFileRWNullBuffer">%1%::%2%::%3% called on file "%4%" with io_buffer = NULL</Error>

      <!-- Error thrown when someone calls BinaryFile::Read/Write and there's an I/O error. -->
      <Error Key="BinaryFileRWError" NativeErrorCode="40635" Params="4" _locID="3.BinaryFileRWError">Simba::Support::BinaryFile: %1% of %2% bytes on file "%3%" failed: %4%</Error>

      <!-- Error thrown when BinaryFile calls fseeko and it fails. -->
      <Error Key="BinaryFileSeekError" NativeErrorCode="40636" Params="5" _locID="3.BinaryFileSeekError">Simba::Support::BinaryFile::%1%: fseeko("%2%", %3%, %4%) failed: %5%</Error>

      <!-- Error thrown when BinaryFile::Seek(SIMBA_INT64_MIN, DIRECTION_BACKWARD) is called. -->
      <Error Key="BinaryFileSeekCannotNegateINT64MIN" NativeErrorCode="40637" Params="2" _locID="3.BinaryFileSeekCannotNegateINT64MIN">%1%::Seek(%2%, DIRECTION_BACKWARD) is not supported, as the negation of %2% is not a valid simba_int64.</Error>

      <!-- Error thrown when BinaryFile calls ftello and it fails. -->
      <Error Key="BinaryFileGetPosError" NativeErrorCode="40638" Params="2" _locID="3.BinaryFileGetPosError">Simba::Support::BinaryFile::GetPosition: ftello on file "%1" failed: %2%</Error>

      <!-- Error thrown when BinaryFile::Extend is called with a size smaller than the current file size. -->
      <Error Key="BinaryFileExtendTooSmall" NativeErrorCode="40639" Params="4" _locID="3.BinaryFileExtendTooSmall">%1%::Extend: Passed-in size, %2%, is smaller than the current size of file "%3%", %4%</Error>

      <!-- Error thrown when BinaryFile::DoTruncate fails -->
      <Error Key="BinaryFileFTruncateError" NativeErrorCode="40640" Params="4" _locID="3.BinaryFileFTruncateError">Simba::Support::BinaryFile::%3%: ftruncate("%1%", %2%) failed: %4</Error>

      <!-- Error thrown when BinaryFile::DoTruncate calls SetFilePointerEx and it fails -->
      <Error Key="BinaryFileSetFilePointerExError" NativeErrorCode="40641" Params="4" _locID="3.BinaryFileSetFilePointerExError">Simba::Support::BinaryFile::%3%: SetFilePointerEx("%1%", %2%, &amp;outPos, FILE_BEGIN) failed: %4%</Error>

      <!-- Error thrown when BinaryFile::DoTruncate calls SetFilePointerEx and it fails -->
      <Error Key="BinaryFileSetEndOfFileError" NativeErrorCode="40642" Params="3" _locID="3.BinaryFileSetEndOfFileError">Simba::Support::BinaryFile::%2%: SetEndOfFile("%1%") failed: %3%</Error>

      <!-- Error thrown when BinaryFile::GetSize() fails -->
      <Error Key="BinaryFileGetSizeError" NativeErrorCode="40643" Params="2" _locID="3.BinaryFileGetSizeError">Simba::Support::BinaryFile::GetSize() on file "%1%" failed: %2%</Error>

      <!-- Error thrown when TextFile::WriteFormattedString() calls vfprintf and it fails. -->
      <Error Key="VFPrintFError" NativeErrorCode="40644" Params="2" _locID="3.VFPrintFError">vfprintf("%1", "%2%: %2%</Error>

      <!-- Error thrown when a TextFile write method writes less than was requested of it. -->
      <Error Key="TextFileShortWrite" NativeErrorCode="40645" Params="4" _locID="3.TextFileShortWrite">Simba::Support::TextFile::%1%: Short write to "%2%", attempted to write %3% bytes, but only wrote %4%</Error>

      <!-- Error thrown when a TextFile write method writes less than was requested of it. -->
      <Error Key="CannotReopenSwapFile" NativeErrorCode="40646" Params="1" _locID="3.CannotReopenSwapFile">Simba::Support::SwapFile::ReOpen() called on "%1%: Not supported.</Error>

      <!-- Error thrown when MemoryFile::Seek() fails due to overflow. -->
      <Error Key="MemFileSeekError" NativeErrorCode="40647" Params="3" _locID="3.MemFileSeekError">Simba::DSI::MemoryFile::Seek(): Invalid combination of position (%1%) and direction (%2%) for current position (%3%)</Error>

      <!-- Error thrown when IFile::ReadFully gets an EOF -->
      <Error Key="ReadFullyEOF" NativeErrorCode="40648" Params="4" _locID="3.ReadFullyEOF">Simba::Support::IFile::ReadFully: Attempted to read %1% bytes from "%2%" (With starting position %3%), EOF reached after %4% bytes.</Error>

      <!-- Error thrown when there is an I/O error, adds addtional context over IOError. -->
      <Error Key="IOErrorWContext" NativeErrorCode="40649" Params="3" _locID="3.IOErrorWContext">I/O error on "%1%": %2% failed: %3%</Error>

      <!-- Error thrown when registry key not found when trying to connect. --> 
      <Error Key="RegKeyNotFound" NativeErrorCode="50010" _locID="3.RegKeyNotFound">Registry key not found.</Error>

      <!-- Error thrown when cannot open registry when trying to connect.  --> 
      <Error Key="CannotOpenRegistry" NativeErrorCode="50020" _locID="3.CannotOpenRegistry">Cannot open registry.</Error>

      <!-- Error thrown when cannot open ini file when trying to connect. --> 
      <Error Key="CannotOpenIniFile" NativeErrorCode="50040" _locID="3.CannotOpenIniFile">Cannot open INI file.</Error>

      <!-- Error thrown when environment variable not found when trying to connect. --> 
      <Error Key="EnvVarNotFound" Params="1" NativeErrorCode="50050" _locID="3.EnvVarNotFound">Environment variable not found: '%1%'.</Error>

      <!-- Error thrown when a file cannot be opened. -->
      <Error Key="CannotOpenFile" Params="2" NativeErrorCode="50070" _locID="3.CannotOpenFile">Cannot open file '%1%' - Error: %2%</Error>

      <!-- Error thrown when a file cannot be opened, because it's actually a directory. -->
      <Error Key="CannotOpenFileIsDir" Params="1" NativeErrorCode="50071" _locID="3.CannotOpenFileIsDir">Cannot open file '%1%' as it's a directory.</Error>

      <!-- Error thrown when an encoding type is not recognized. --> 
      <Error Key="EncodingNotRecog" NativeErrorCode="50080" _locID="3.EncodingNotRecog">Encoding not recognized.</Error>

      <!-- Error thrown when conversion from string to numeric value fails. -->
      <Error Key="StrToNumConvFailed" Params="1" NativeErrorCode="50090" _locID="3.StrToNumConvFailed">Conversion from string to number failed with value '%1%'</Error>

      <!-- Error thrown when conversion from string to unsigned numeric value fails. -->
      <Error Key="StrToNumConvFailedUnsigned" Params="1" NativeErrorCode="50100" _locID="3.StrToNumConvFailedUnsigned">Conversion from string to unsigned number failed with value '%1%'</Error>

      <!-- Error thrown when conversion from string to numeric value due to overflow fails. -->
      <Error Key="StrToNumConvFailedOverflow" Params="1" NativeErrorCode="50110" _locID="3.StrToNumConvFailedOverflow">Conversion from string to number failed due to overflow with value '%1%'</Error>

      <!-- Error thrown when conversion from string to numeric value due to underflow fails. -->
      <Error Key="StrToNumConvFailedUnderflow" Params="1" NativeErrorCode="50120" _locID="3.StrToNumConvFailedUnderflow">Conversion from string to number failed due to underflow with value '%1%'</Error>

      <!-- Error thrown when conversion from integer to string value fails due to an undersized buffer. -->
      <Error Key="NumToStrConvFailed" NativeErrorCode="50130" _locID="3.NumToStrConvFailed">Conversion from number to string failed due to undersized character buffer.</Error>

      <!-- Error thrown when using a method that has not been implemented yet. --> 
      <Error Key="NotImplYet" NativeErrorCode="50140" _locID="3.NotImplYet">Method not implemented.</Error>

      <!-- Error thrown when an argument is passed to an object that is invalid. -->
      <Error Key="ThreadInvalidStateAction" NativeErrorCode="50160" _locID="3.ThreadInvalidStateAction">Invalid action for thread in current state.</Error>

      <!-- Error thrown when creation of a new thread failed. -->
      <Error Key="ThreadCreationFailed" NativeErrorCode="50170" _locID="3.ThreadCreationFailed">Creation of new thread failed.</Error>

      <!-- Error thrown when creation of new thread attributes failed. -->
      <Error Key="ThreadAttributeCreationFailed" NativeErrorCode="50175" _locID="3.ThreadAttributeCreationFailed">Creation of new thread attributes failed.</Error>

      <!-- Error thrown when a wait for a thread has failed. -->
      <Error Key="ThreadWaitFailed" NativeErrorCode="50180" _locID="3.ThreadWaitFailed">Wait for thread failed.</Error>

      <!-- Error thrown when a thread is started multiple times. -->
      <Error Key="ThreadAlreadyStarted" NativeErrorCode="50185" _locID="3.ThreadAlreadyStarted">Attempted to start thread that has already been started.</Error>

      <!-- Error thrown when a temporary file cannot be generated for swapping. -->
      <Error Key="CannotGenerateTempFileName" Params="2" NativeErrorCode="50190" _locID="3.CannotGenerateTempFileName">Error creating temporary swap file in directory '%1%' due to error %2%.</Error>

      <!-- Error thrown when a temporary file cannot be generated for swapping. -->
      <Error Key="CannotGenerateTempFileNoError" Params="1" NativeErrorCode="50191" _locID="3.CannotGenerateTempFileNoError">Error creating temporary swap file in directory '%1%'.</Error>

      <!-- Error thrown when name for file is invalid.  -->
      <Error Key="InvalidFileName" NativeErrorCode="50200" _locID="3.InvalidFileName">File name is invalid.</Error>

      <!-- Error thrown when text file position cannot be set.  -->
      <Error Key="CannotSetFilePosition" NativeErrorCode="50210" _locID="3.CannotSetFilePosition">Cannot set file position.</Error>

      <!-- Error thrown when the maximum size for code point is invalid (i.e too large). --> 
      <Error Key="InvalidCodePtMaxSize" NativeErrorCode="50220" _locID="3.InvalidCodePtMaxSize">Invalid maximum size for code point.</Error>

      <!-- Error thrown when there is an invalid number of code points in a buffer (i.e too many). --> 
      <Error Key="InvalidNumCodePtInBuffer" NativeErrorCode="50230" _locID="3.InvalidNumCodePtInBuffer">Invalid number of code points in a buffer.</Error>

      <!-- Error thrown when the position in a buffer is invalid (i.e buffer overrun). --> 
      <Error Key="InvalidBuffPos" NativeErrorCode="50240" _locID="3.InvalidBuffPos">Invalid buffer position.</Error>

      <!-- Error thrown when output string will not align properly with the output byte buffer. --> 
      <Error Key="StrByteAlignErr" NativeErrorCode="50250" _locID="3.StrByteAlignErr">Output string does not align properly with output byte buffer.</Error>

      <!-- Error thrown when the endianness of the encoding is invalid for the platform (i.e. big endian for Windows, or for Unix on a little endian machine). --> 
      <Error Key="InvalidEncodingEndianForPlatform" NativeErrorCode="50260" _locID="3.InvalidEncodingEndianForPlatform">Invalid encoding endianness for the platform.</Error>

      <!-- Error thrown when trying to set a buffer that hasn't been fully used yet, or when setting it with an invalid buffer. --> 
      <Error Key="SetBuffErr" NativeErrorCode="50270" _locID="3.SetBuffErr">Setting a buffer that has not been fully used, or setting it with an invalid buffer.</Error>

      <!-- Error thrown when given NULL for a parameter that should not be NULL. --> 
      <Error Key="InvalidNullParam" NativeErrorCode="50280" _locID="3.InvalidNullParam">Parameter cannot be null.</Error>

      <!-- Error thrown when ICU gives an error when creating a Unicode converter object. --> 
      <Error Key="ICUCreateUConverterErr" Params="1" NativeErrorCode="50290" _locID="3.ICUCreateUConverterErr">Error creating an ICU Unicode converter object for encoding '%1%'.</Error>

      <!-- Error thrown when Siconv gives a bad input error. --> 
      <Error Key="ICUBadInputErr" Params="2" NativeErrorCode="50311" _locID="3.ICUBadInputErr">Error converting invalid input with source encoding %1%. Rejected bytes began with: %2%.</Error>

      <!--Error thrown when string converters are given bad input length.-->
      <Error Key="ICUBadInputLength" Params="1" NativeErrorCode="50312" _locID="3.ICUBadInputLength">Invalid ICU string length: %1%</Error>
      
      <!--Error thrown when there is an ICU error.-->
      <Error Key="ICUConvError" Params="2" NativeErrorCode="50313" _locID="3.ICUConvError">ICU conversion error (%1%): %2%</Error>
      
      <!--Error thrown when there is an ICU error.-->
      <Error Key="ICUEncodingError" Params="5" NativeErrorCode="50314" _locID="3.ICUEncodingError">ICU conversion error (%1%): %2%. The source encoding: %3%. The target encoding: %4% Rejected input bytes begin with: %5%</Error>
      
      <!-- Error thrown when ICU gives an error using a regex. --> 
      <Error Key="ICURegexError" Params="1" NativeErrorCode="50315" _locID="3.ICURegexError">Error using regular expression: %1%.</Error>

      <!-- Error thrown when an unsupported code unit size is specified when retrieving data. --> 
      <Error Key="UnsupportedCodeUnitSize" Params="1" NativeErrorCode="50320" _locID="3.UnsupportedCodeUnitSize">Unsupported code unit size (%1%) for data retrieval.</Error>

      <!-- Product License Errors and Warnings -->

      <!-- Error thrown when license file is not found. -->
      <Error Key="LicFileNotFound" Params="1" NativeErrorCode="50325" _locID="3.LicFileNotFound">The license file '%1%' could not be found or opened. Please contact your administrator.</Error>
      
      <!-- Error thrown when license file is not found. -->
      <Error Key="CannotReadLicFile" Params="2" NativeErrorCode="50325" _locID="3.CannotReadLicFile">The license file '%1%' could not be read. Please contact your administrator: %2%</Error>

      <!-- Error thrown when license file is corrupt. -->
      <Error Key="LicFileCorrupt" Params="1" NativeErrorCode="50330" _locID="3.LicFileCorrupt">The license file '%1%' is corrupt. Please contact your administrator.</Error>

      <!-- Error thrown when evaluation is expired. -->
      <Error Key="TrialPeriodExp" Params="1" NativeErrorCode="50340" _locID="3.TrialPeriodExp">Your license expired on %1%. Please contact your administrator.</Error>
      
      <!-- Error thrown when evaluation has not yet begun. -->
      <Error Key="TrialPeriodNotBegun" Params="1" NativeErrorCode="50341" _locID="3.TrialPeriodNotBegun">Your evaluation period has not yet started, it will start on %1%. Please contact your administrator.</Error>

      <!-- Warning posted when evaluation will expire soon. -->
      <Error Key="TrialPeriodExpSoon" Params="1" NativeErrorCode="50342" _locID="3.TrialPeriodExpSoon">Your evaluation period will expire on %1%. Please contact your administrator.</Error>

      <!-- Error thrown when an INI file contains a line that cannot be parsed. -->
      <Error Key="IniParseError" Params="2" NativeErrorCode="50350" _locID="3.IniParseError">INI Parse error on line %1% of %2%.</Error>

      <!-- Error thrown when the license check fails. -->
      <Error Key="LicenseValidationFailure" Params="1" NativeErrorCode="50351" _locID="3.LicenseValidationFailure">License validation error: %1%. Please contact your administrator.</Error>
      
      <!-- Authentication failed for integrated security. -->
      <Error Key="IntegratedSecurityAuthFailed" NativeErrorCode="50360" Params="1" _locID="3.IntegratedSecurityAuthFailed">Integrated security authentication failed: %1%</Error>

      <!-- Integrated security failed to acquire local credentials. -->
      <Error Key="FailedToAcquireCredentials" NativeErrorCode="50361" Params="1" _locID="3.FailedToAcquireCredentials">Integrated security failed to acquire local credentials: %1%</Error>

      <!-- Error thrown on failure to get username for integrated security. -->
      <Error Key="FailedToGetUsername" NativeErrorCode="50363" Params="1" _locID="3.FailedToGetUsername">Failed to get username: %1%</Error>

      <!-- Error thrown if attempting to change properties of a security context already in progress. -->
      <Error Key="SecurityContextInProgress" NativeErrorCode="50364" _locID="3.SecurityContextInProgress">Cannot change properties of the security context because it is already in progress.</Error>

      <!-- Error thrown if there is a failure establishing thread impersonation -->
      <Error Key="ThreadImpersonationFailed" NativeErrorCode="50365" Params="1" _locID="3.ThreadImpersonationFailed">Error enabling thread impersonation: %1%</Error>

      <!-- Error thown when gssapi lib delay load fails. -->
      <Error Key="GSSAPILoadFailed" NativeErrorCode="50366" Params="1" _locID="3.GSSAPILoadFailed">Failed to load the security library: %1%</Error>
      
      <!-- Error thown when attempting to use the security API on an unsupported platform. -->
      <Error Key="NoSecurityAPI" NativeErrorCode="50367" Params="0" _locID="3.NoSecurityAPI">No supported security API on this platform. </Error>
      
      <!-- Error thown when an invalid TDWExactNumericType is detected. -->
      <Error Key="InvalidNumeric" NativeErrorCode="50368" Params="0" _locID="3.InvalidNumeric">Validation of TDWExactNumericType object failed.</Error>

      <!-- Error thrown when OpenSSL fails to load. -->
      <Error Key="LibLoadErr" Params="2" NativeErrorCode="50400" _locID="3.LibLoadErr">Failed to load dynamic or shared library '%1%': '%2%'.</Error>
      
      <!-- Error thrown when OpenSSL fails to load. -->
      <Error Key="LibFunctLoadErr" Params="2" NativeErrorCode="50401" _locID="3.LibFunctLoadErr">Failed to load function '%2%' from dynamic or shared library '%1%'.</Error>
      
      <!-- Error thrown when OpenSSL fails to load. -->
      <Error Key="SwapFileEncryptErr" Params="2" NativeErrorCode="50402" _locID="3.SwapFileEncryptErr">Internal error while encrypting or decrypting swap file: Call '%1%' - reason '%2%'.</Error>
      
      <!-- Error thrown when the total swap file disk space has reached the limit. -->
      <Error Key="SwapLimitErr" NativeErrorCode="50403" _locID="3.SwapLimitErr">Total swap file disk space limit reached.</Error>

      <!-- Error and warnings with establishing connection to data source. -->
      <!-- Error thrown when the connection string is not of valid form. -->
      <Error Key="InvalidConnStr" NativeErrorCode="50404" _locID="3.InvalidConnStr">Invalid connection string.</Error>
      
      <!-- Error generated when an instance of Simba::Support::Promise is destroyed before it it used to set it's corresponding Future's value/exception. -->
      <Error Key="FutureNotSetAtPromiseDestruction" NativeErrorCode="50410" _locID="3.FutureNotSetAtPromiseDestruction">Future value/error not set before parent Promise object was destroyed.</Error>
      
      <!-- Error thrown when it's attempted to set a Future multiple times. -->
      <Error Key="FutureAlreadySet" NativeErrorCode="50411" _locID="3.FutureAlreadySet">Attempted to set Future value/error after it had already been set.</Error>
      
      <!-- Error thrown when Future::Get is called on an un-set future. -->
      <Error Key="FutureNotSet" NativeErrorCode="50412" _locID="3.FutureNotSet">Attempted to set Future value/error after it had already been set.</Error>
      
      <!-- Error generated when a BlockingQueueSource object is destroyed before it explicitly finishes the queue associated with it. -->
      <Error Key="BlockingQueueNotFinished" NativeErrorCode="50420" _locID="3.BlockingQueueNotFinished">BlockingQueueSource object was destroyed before it explicitly finished its queue.</Error>
      
      <!-- Error thrown when trying to push to/finish a BlockingQueue that was already finished. -->
      <Error Key="BlockingQueueAlreadyFinished" NativeErrorCode="50421" _locID="3.BlockingQueueAlreadyFinished">Attempted to Push()/Finish() a BlockingQueue which was already finished.</Error>
      
      <!-- Error thrown when there's an error in FileSystemUtils::GetSubdirectories() -->
      <Error Key="GetSubdirectoriesErr" Params="2" NativeErrorCode="50430" _locID="3.GetSubdirectoriesErr">Error while trying to get subdirectories from "%1%": %2%</Error>
      
      <!-- Error thrown when there's a error in SqlTypeMetadata::CheckValidity() -->
      <Error Key="CheckValidityFailed" Params="1" NativeErrorCode="50440" _locID="3.CheckValidityFailed">Error while checking type consistency: %1%</Error>
    
      <!-- Error thrown when an ICU function fails -->
      <Error Key="ICUError" Params="2" NativeErrorCode="50450" _locID="3.ICUError">ICU function %1% failed with error %2%</Error>

      <!-- Error thrown when casting fails -->
      <Error Key="NumberCastError" Params="7" NativeErrorCode="50460" _locID="3.NumberCastError">The cast failed: source value: (%1%), source type: (%2%), destination type: (%3%). Failed Check: (%4%). Function: (%5%), Line: (%6%), File: (%7%).</Error>
      
      <!-- Error thrown when there's an error in FileHandler::FindOldestExistingFile()-->
      <Error Key="GetFileErr" Params="2" NativeErrorCode="50470" _locID="3.GetFileErr">Error while trying to get file from "%1%": %2% </Error>
      
      <!-- Error thrown a LocalizableMessage is assigned to an LocalizableDiagnostic -->
      <Error Key="CannotAssignLocalizableStringToLocalizableDiagnostic" Params="2" NativeErrorCode="50470" _locID="3.CannotAssignLocalizableStringToLocalizableDiagnostic">Cannot assign an instance of Simba::Support::LocalizableString to an instance of Simba::Support::LocalizableDiagnostic</Error>
      
      <!-- Used when we need to store a LocalizableString in a LocalizableDiagnostic -->
      <Error Key="WrapperMessage" Params="1" NativeErrorCode="50471" _locID="3.WrapperMessage">Wrapped Simba::Support::LocalizableString: %1%</Error>
      
      <!-- Error thrown when trying to call ThreadPool::Post() when it's not started or stopping. -->
      <Error Key="CannotPostTaskToInactiveThreadPool" NativeErrorCode="50480" _locID="3.CannotPostTaskToInactiveThreadPool">Cannot post a task to thread pool as it's either not started, or stopping.</Error>
      
       <!-- Error thrown when there's a problem retrieving the main process handle via dlopen.. -->
      <Error Key="ProcessHandleError" Params="2" NativeErrorCode="50481" _locID="3.ProcessHandleError">Failed to get process handle via %1%: %2%.</Error>
      
      <!-- Error thrown when there's a problem getting a symbol from the main process. -->
      <Error Key="MainProcFunctLoadErr" Params="2" NativeErrorCode="50482" _locID="3.MainProcFunctLoadErr">Failed to load function '%1%' from main processs: %2%.</Error>
    </Package>
</Messages>
