1 / 5

Integrating CLIPS with External Systems: A Comprehensive Guide

This project overview details the integration of CLIPS (C Language Integrated Production System) with various external systems using VB and C++. It discusses two primary sources for integration: a free C++ source code from Source A and commercial options from Source B, which include ActiveX controls and DLLs. The guide covers how to utilize the CLIPS engine, execute commands, and define custom functions in C++. It emphasizes the ease of integrating CLIPS with ODBC for database interactions, and provides useful links for accessing these resources.

Télécharger la présentation

Integrating CLIPS with External Systems: A Comprehensive Guide

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CLIPS Integration with other Systems • My CSc 214 project (VB/CLIPS integration overview) • Two web sources • Available from source A (free): • C++ source code for CLIPS and MFC example • Available from source B: • ActiveX Control (not free) • OLE InProcess Server DLL (not free) • CLIPS DLL (free) • VB/High Level Lang. Interface DLL (free) • Works with ODBC Interface for CLIPS (free)

  2. Source A #include "ClipsEng.h" void main() { try { CLIPSEngine eng; eng.load("test.clp"); eng.reset(); eng.run(); } catch(CLIPSException *ex) { printf("CLIPS error: %s\n", ex->why()); delete ex; } } Also, can execute specific CLIPS commands: eng.execCommand(“(defrule rule1 (break-time 100) => (assert (breaker failure) ))”); Also, offers kind of custom callback mechanism (e.g., do something special when a particular rule fires): Define MyFunc1 in your C++ code eng.defineFunc("myfunc1",'i', MyFunc1, "MyFunc1");   (defrule r1 () … => (myfunc1) …)

  3. Source B • Prices range from free to $495 • ActiveX Control and OLE InProcess Server can be used through COM • CLIPS DLL provides methods that can be called • VB interface is file with declares (works with CLIPS DLL) • ODBC interface allows developer to issue SQL query against ODBC data source and have resulting rows asserted as facts into CLIPS program

  4. Conclusion • Easy to integrate CLIPS with other systems by taking advantage of CLIPS file I/O features • Viable products and source code that help you integrate CLIPS with other systems • Alternatives to JESS are available to offer non-Java OO development

  5. Resources • Source A: http://ee.tamu.edu/~xuxj/prog/download/dll/clipsdll.htm • Source B: http://ourworld.compuserve.com/homepages/marktoml/clipstuf.htm • ODBC Interface: http://www.monmouth.com/~km2580/CLIPODBC.htm

More Related