What is the MLSLABEL Oracle datatype?

oracle, types

Solution

`MLSLABEL` is (was?) a datatype used by Trusted Oracle, the foreunner of Oracle's Advanced Security Option. The Admin docs say it was included in regular Oracle for compatibility. Find out more.

Trusted Oracle as a brand was replaced by ASO with Oracle 9i (I think). I don't think `MLSLABEL` is used in ASO (I can't find anything in the relevant docs). It is still supported in modern versions of the database. probably for backwards compatibility:

SQL> select * from v$version;

BANNER
-----------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
PL/SQL Release 11.1.0.6.0 - Production
CORE    11.1.0.6.0      Production
TNS for 32-bit Windows: Version 11.1.0.6.0 - Production
NLSRTL Version 11.1.0.6.0 - Production

SQL> create table mls (id number, lbl mlslabel);

Table created.

SQL> 

Problem

I've come across a strange datatype in oracle called `MLSLABEL`. It's not listed on datatype docs, and is only valid for 'trusted oracle' (whatever that is). The documentation I could find on it is this. What is `MLSLABEL`, and what does it do?

Original source