The theoretical study of the relational model of data is ongoing and highly developed. Yet the vast majority of real databases include incomplete data, and the incomplete data is widely modelled using special flags called nulls. As noted many times by Date and others, the inclusion of nulls is not compatible with the relational model and invalidates many of the theoretical results as well as requiring a three-valued logic for query support. In category theoretic applications to computer science, partial functions are frequently modelled by using a special value approach (the partial map classifier), or by explicit reference to the domain of definition subobject. In a former edition of the CATS conference the first author and his colleague Rosebrugh proved a Morita equivalence theorem showing that for database modelling the two approaches are equivalent, provided the domain of definition subobject is complemented. In this paper we study the uncomplemented domain of definition approach (which is not equivalent to using special values). Our main results show that using uncomplemented domains of definition to model incomplete data is entirely compatible with the relational model and so leaves the well-developed theory applicable to real databases that use this approach. Furthermore, using uncomplemented domains of definition supports in-place updating, in stark contrast to special values, and, in a wide variety of circumstances, ensures the existence of cartesian and op-cartesian models which, as shown in a recent TCS article, are important for solving view update problems. |