RPL(ID:2948/rpl004)The Relational Production LanguageThe Relational Production Language Delcambre and Etheredge 1988 rule production language for relational databases Structures: Related languages
References: 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. |