Support crate `array` and `object` data types

`UnexpectedValueException` maybe?