RPL(ID:2948/rpl004)

The Relational Production Language  


The Relational Production Language

Delcambre and Etheredge 1988 rule production language for relational databases


Structures:
Related languages
OPS5 => RPL   Influence
SQL => RPL   Based on

References:
  • Delcambre L.M.L. and Etheredge J.N. (1988) The Relational Production Language: A Production Language for Relational Databases. In Kerschberg L. (ed.), Expert Database Systems. Proceeding from the Second International Workshop. Benjamin/Cummings. view details
  • Shiow-Yang Wu "Decomposition Abstraction In Parallel Rule Languages" Department of Computer Sciences The University of Texas at Austin view details Extract: RPL
    RPL
    RPL (Relational Production Language) is a proposed language for the integration of production system language and relational database. It  was motivated by the similarity of the LHS of production rules to relational  queries observed by Woods [163]. The goal is to enable a production system  to directly access any conventional database that support a relational query  language interface. The use of relational data model also provides a formal basis  which is not usually seen in other conventional production system languages.
    The syntax of RPL is based on SQL. OPS5 is used as a representative production system language for comparison. The data structures for an RPL  program are defined using a relational DDL as in most relational database  systems. What makes RPL different from other relational database systems is  its addition of production rules for the manipulation of tuples. The LHS of a  RPL rule is any valid SQL query which is relational complete. The RHS is then  a collection of insert, modify, and delete tuple commands which correspond  directly to the make, modify, and remove actions of OPS5. It is the power  of the relational complete LHS that makes RPL strictly more expressive than  OPS5. The relational basis also makes it quite suitable for integration with  relational databases.
    Even though, as far as we know, RPL has never been fully implemented, the language proposal is quite influential. It demonstrates the potential  benefits and feasibility of integrating database and expert system  technology. It is also a good example of showing the advantage of having a formal  model underlying a language design.