We describe a functional database language OR-SML for handling disjunctive information in database queries, and its implementation on top of Standard ML 12]. The core language has the power of the nested relational algebra, augmented by or-sets which are used to deal with disjunctive information. Sets, or-sets and tuples can be freely combined to create objects, which gives the language a greater exibility. It is con gurable by user-de ned base types, and can be used independently or interfaced to other systems built in ML. We give examples of queries which require disjunctive information (such as querying incomplete or independent databases) and show how to use the language to answer these queries.
Elsa L. Gunter, Leonid Libkin