Anyone know the technical reason why they are not allowed? (To me, it seems a pretty innocuous thing... similar in principle to inverse-functional object properties.)
Hm, my original guess has been that there must be some undecidability results (as often, when some obvious feature is not included in OWL DL). But today I checked through the different OWL 2 specification documents, and also through the old OWL 1 documents, and even skimmed through my copy of the Description Logics Handbook (published pre-OWL 1), and was unsuccessful to find any explicit rational given. :-(
Keys (aka, inverse functional datatype properties) are clearly of vital importance to many applications. Key reasoning in general in the context of OWL can be unfeasibly difficult (given what we currently know and anticpate). However, general inverse functional properties are almost always overkill. Instead of tackling the general problem, we propose a restricted version which meets important use cases. We aim for robust implementations quickly, so are willing to forgo feasible features that unduely complicate the implementation (as far as we can currently tell). As our implementation knowledge advances, we can update the spec to cover more features.
So, again no mentioning of hard theoretic facts, but only that inverse-functional data properties IFDPs are "unfeasibly difficult (given what we currently know and anticpate)". Maybe it is that the DL research community has not yet found a good method to implement complete and efficient decision procedures for expressive DLs with IFDPs, but I can't tell for sure.
I suggest you (Signified) to ask this question on the OWL-DEV mailing list, since chances are bigger there to find some experts giving you a satisfying answer.