When decomposing database schemas, it is desirable that a decomposition is lossless and dependency preserving. A well-known and frequently used result for the relational model states that a functional dependency preserving decomposition is lossless if and only if it contains a key. We will show that this result does not always hold when domains are allowed to be finite, but provide conditions under which it can be preserved. We then extend our work to a complex-valued data model based on record, list, set and multiset constructor, where finite domains occur naturally for subattributes, even if the domains of flat attributes are infinite.