Front Page Applet ATSQL UC TUC SEQ NSEQ System Guidelines Requirements Doc Support Information Contribution Warranty Related Work Contact Future Work | Upward compatibility (UC) addresses nontemporal information in temporal database systems as illustrated in the following figure. It is fundamental that all code without modification will work unchanged with the new system. We define a data model to be syntactically upward compatible with another data model if all the data structures and legal query expressions of the old model are contained in the new model. Upward compatibility adds the requirement that all queries expressible in the old model must evaluate to the same results in the new model. To illustrate UC, consider the following statements.
      CREATE TABLE p (A INTEGER);
      INSERT INTO p VALUES (7);
      INSERT INTO p VALUES (8);
      COMMIT;
These statements are simple legacy SQL-92 statements that must be supported by any reasonable (temporal) extension of SQL-92. The semantics is the one dictated by SQL-92. By requiring that a temporal extension is a strict superset (i.e., adding non-mandatory constructs and semantics only), it is relatively easy to ensure that the temporal extension is upward compatible with SQL-92. Still, it should be noted that UC does place strict constraints on the temporal extension: It must be ``in the spirit'' of and must live with any peculiarities of the language it extends. As an example, when extending SQL-92 with a data type for intervals, the string ``interval'' cannot be used in the syntax because it is already used for the data type of durations. There is one unintended ramification of UC. Any temporal extension that includes new reserved keywords will violate UC. The reason is that legacy query language statements may have employed such keywords as identifiers. Under the semantics of the new model, such statements will be illegal. However, it is impractical to exclude new reserved keywords from a temporal as well as non-temporal extension. We follow current practice and consider UC to be satisfied even when new keywords are added in the new model.