- Documentation >
- Mapping >
- Type coercion
Type coercion
This document describes how Ibexa Connect behaves in situations when it receives values in expected and unexpected data formats.
When array is expected:
Received |
Description |
array |
The value is handed over unchanged. |
other |
If the received value is not of the array type, Ibexa Connect will create an array and the first (and the only) element will be the received value. |
When Boolean is expected:
Received |
Description |
boolean |
The value is handed over unchanged. |
number |
The value is converted to logical Yes , even if the value is 0 |
text |
If the value is equal to false or the value is empty, it is converted to logical No . If not, it is converted to logical Yes |
other |
The value is converted to logical Yes whenever the received value exists (is not null ). |
When Buffer is expected:
Received |
Description |
buffer |
The value is handed over unchanged only if the codepage is as expected. If the codepage differs, Ibexa Connect will try to convert the received value to the requested codepage . If this conversion is not supported, Ibexa Connect will return a validation error. |
boolean |
The value is converted to text (true /false ) and then to binary data following the steps mentioned above for converting to text. |
date |
The value is converted to ISO 8601 text and then to binary data following the steps mentioned for converting to text. |
number |
The value is converted to text and then to binary data following the steps mentioned above for converting to text. |
text |
The value is converted to binary data and encoded as expected. If the expected encoding is not specified, utf8 encoding will be used. |
other |
Ibexa Connect returns a validation error. |
When Collection is expected:
Received |
Description |
collection |
The value is handed over unchanged. |
other |
Ibexa Connect returns a validation error. |
When Date is expected:
Received |
Description |
date |
The value is handed over unchanged. |
text |
Ibexa Connect will try to convert the text to a date. If the conversion fails, it will return a validation error. Date must contain day, month and year. Date may contain time and time zone. Default time zone is based on your settings. See these examples. |
number |
Ibexa Connect will treat the number as milliseconds since Jan 01 1970 (UTC) and convert it to a corresponding date. |
other |
Ibexa Connect returns a validation error. |
When Number is expected:
Received |
Description |
number |
The value is handed over unchanged. |
text |
Ibexa Connect will try to convert the text to a number. If the conversion fails, it will return a validation error. |
other |
Ibexa Connect returns a validation error. |
When Text is expected:
Received |
Description |
text |
The value is handed over unchanged. |
array |
If the given array supports conversion to text, the value will be converted. If not, Ibexa Connect will return a validation error. |
boolean |
The value is converted to text (true /false ). |
buffer |
If text encoding is specified for binary data, the value will be converted to text. If not, Ibexa Connect will return a validation error |
date |
The value is converted to ISO 8601 text. |
number |
The value is converted to text. |
other |
Ibexa Connect returns a validation error. |
When Time is expected:
Received |
Description |
time |
The value is handed over unchanged. |
text |
Ibexa Connect will try to convert time to the hours:minutes:seconds format. If the conversion fails, it will return a validation error. |
other |
Ibexa Connect returns a validation error. |