This Article 
 Bibliographic References 
 Add to: 
The Knowledge Acquisition and Representation Language, KARL
July/August 1998 (vol. 10 no. 4)
pp. 527-550

Abstract—The Knowledge Acquisition and Representation Language (KARL) combines a description of a knowledge-based system at the conceptual level (a so-called model of expertise) with a description at a formal and executable level. Thus, KARL allows the precise and unique specification of the functionality of a knowledge-based system independent of any implementation details. A KARL model of expertise contains the description of domain knowledge, inference knowledge, and procedural control knowledge. For capturing these different types of knowledge, KARL provides corresponding modeling primitives based on Frame-Logic and Dynamic Logic. A declarative semantics for a complete KARL model of expertise is given by a combination of these two types of logic. In addition, an operational definition of this semantics, which relies on a fixpoint approach, is given. This operational semantics defines the basis for the implementation of the KARL interpreter, which includes appropriate algorithms for efficiently executing KARL specifications. This enables the evaluation of KARL specifications by means of testing.

[1] J. Angele, S. Decker, R. Perkuhn, and R. Studer, "Modeling Problem-Solving Methods in New KARL," Proc. KAW 10, 10th Knowledge Acquisition for Knowledge-Based Systems Workshop,Banff, Canada, Nov. 1996.
[2] M. Andersen, R. Elmstrøm, P.B. Lassen, and P.G. Larsen, "Making Specifications Executable—Using IPTES Meta-IV," Microprocessing and Microprogramming, vol. 35, Sept. 1992.
[3] J. Angele, D. Fensel, D. Landes, and R. Studer, "An Assignment Problem in Sisyphus—No Problem with KARL," M. Linster, ed., Proc. Sisyphus: Models of Problem Solving, Arbeitspapiere der GMD, no. 630, Mar. 1992.
[4] J. Angele, D. Fensel, and D. Landes, "Two Languages to Do the Same?" Proc. Second Workshop Informationssysteme und Künstliche Intelligenz, R. Studer, ed., Informatik-Fachberichte, no. 303, Ulm, Germany, Springer-Verlag, 1992.
[5] J. Angele, D. Fensel, and D. Landes, "An Executable Model at the Knowledge Level for the Office-Assignment Task," Proc. Sisyphus: Models of Problem Solving, M. Linster, ed., Arbeitspapiere der GMD, no. 663, July 1992.
[6] J. Angele, D. Fensel, and R. Studer, "Domain and Task Modelling in MIKE," A. Sutcliffe et al., eds., Domain Knowledge for Interactive System Design, Chapman and Hall, 1996.
[7] J. Angele, "Cover and Differentiate Remodeled in KARL," C. Bauer et al., eds., Proc. KUM 2, Interpretation Models for KADS User Meeting, no. 212, Munich, Germany, 1992.
[8] J. Angele, "Operationalization of a Model of Expertise with KARL," PhD thesis (in German), Infix-Verlag, St. Augustin, 1993.
[9] J. Angele and R. Studer, "G-KARL, A Graphical, Formal, and Executable Specification Language," P. Mertens et al., eds., Expertensysteme, Infix-Verlag, St. Augustin, 1997.
[10] S. Aitken, H. Reichgelt, and N. Shadbolt, "Representing KADS Models in QIL, AI Group, Univ. of Nottingham, Working Paper WP-006, 1992.
[11] M. Barbuceanu, "Models: Toward Integrated Knowledge Modeling Environments," Knowledge Acquisition, vol. 5, 1993.
[12] F. Bancilhorn and R. Ramakrishnan, "Performance Evaluation of Data Intensive Logic Programs," J. Minker, ed., Foundations of Deductive Databases and Logic Programming. Morgan Kaufmann, Los Altos, Calif., pp. 439-511, 1988.
[13] J. Bachant and F. Soloway, "The Engineering of XCON," Comm. ACM, vol. 32, no. 3, Mar. 1989.
[14] C. Beeri, "A Formal Approach to Object-Oriented Databases," Data and Knowledge Eng., vol. 5, no. 4, pp. 353-382, 1990.
[15] R. Benjamins, "Problem Solving Methods for Diagnosis and Their Role in Knowledge Acquisition, Int'l J. Expert Systems: Research and Application, vol. 8, no. 2, pp. 93-120, 1995.
[16] J.C. Bicarregui, J.S. Fitzgerald, P.A. Lindsay, R. Moore, and B. Ritchie, Proof in VDM: A Practitioner's Guide, Springer-Verlag, Berlin, 1994.
[17] R.J. Brachman, "On the Epistemological Status of Semantic Networks," N.V. Findler, ed., Associative Networks: Representation and Use of Knowledge by Computers, Academic Press, New York, 1979.
[18] The CommonKADS Library for Expertise Modelling, J. Breuker and W. Van de Velde, eds., IOS Press, Amsterdam, Netherlands, 1994.
[19] P. Coad and E. Yourdon, Object-Oriented Analysis, second ed., Yourdon Press, Englewood Cliffs, N.J., 1991.
[20] R. Elmasri and S.B. Navathe, Fundamentals of Database Systems, Benjamin/Cummings, Houston, 1989.
[21] R. Elmstrøm, P.B. Lassen, and P.G. Larsen, "The IFAD VDM-SL Toolbox, A Practical Approach to Formal Specifications, ACM SIGPLAN Notices, Summer 1994.
[22] R. Elmstrøm, R. Lintulampi, and M. Pezze, "Giving Semantics to SA/RT by Means of High Level Timed Petri Nets," Real-Time Systems, vol. 5, nos. 2-3, May 1993.
[23] H. Eriksson et al., "Task Modeling with Reusable Problem-Solving Methods," Artificial Intelligence, vol. 79, no. 2, Dec. 1995, pp. 293-326.
[24] D. Fensel, J. Angele, D. Landes, and R. Studer, "Giving Structured Analysis Techniques a Formal and Operational Semantics with KARL," H. Züllighoven et al., eds., Requirements Eng. Prototyping, Teubner Verlag, 1993.
[25] D. Fensel and F. van Harmelen, "A Comparison of Languages which Operationalize and Formalize KADS Models of Expertise," Knowledge Eng. Rev., vol. 9, no. 2, June 1994.
[26] D. Fensel, H. Eriksson, M.A. Musen, and R. Studer, "Conceptual and Formal Specifications of Problem-Solving Methods," Int'l J. Expert Systems: Research and Applications, vol. 9, no. 4, 1996.
[27] D. Fensel, "Assumptions and Limitations of a Problem-Solving Method: A Case Study," Proc. KAW 9: Ninth Banff Knowledge Acquisition for Knowledge-Based System Workshop,Banff, Canada, Feb. 1995.
[28] D. Fensel, The Knowledge Acquisition and Representation Language KARL, Kluwer Academic, Boston, 1995.
[29] D. Fensel, "Formal Specification Languages in Knowledge and Software Engineering," Knowledge Eng. Rev., vol. 10, no. 4, 1995.
[30] D. Fensel and S. Neubert, "Integration of Semiformal and Formal Methods for Specification of Knowledge-Based Systems," D. Wolfinger, ed., Innovation bei Rechen- und Kommunikationssystemen, Informatik Aktuell, Springer-Verlag, Berlin, 1994.
[31] C. Floyd, "A Systematic Look at Prototyping," R. Budde et al., eds., Approaches to Prototyping, Springer-Verlag, Berlin, pp. 1-18, 1984.
[32] R.B. France and T.W.G. Docker, "Formal Specifications Using Structured System Analysis," Proc. ESEC 2: European Software Eng. Conf., Warwick, Lecture Notes in Computer Science, no. 387, Springer-Verlag, Berlin, Sept. 1989.
[33] N.E. Fuchs, "Specifications Are (Preferably) Executable," Software Eng. J., vol. 7, Sept. 1992.
[34] S. Greenspan, J. Mylopoulus, and A. Borgida, "On Formal Requirements Modeling Languages: RML Revisited," Proc. ICSE 16: Int'l Conf. Software Eng.,Sorrento, Italy, May 1994.
[35] F. van Harmelen and J. Balder, "ML2: A Formal Language for KADS Conceptual Models," Knowledge Acquisition, vol. 4, no. 1, 1992.
[36] D. Harel, "Dynamic Logic," D. Gabby et al., eds., Handbook of Philosophical Logic, vol. 2, Extensions of Classical Logic, Publishing Co., Dordrecht (NL), pp. 497-604, 1984.
[37] I.J. Hayes and C.B. Jones, "Specifications are Not (Necessarily) Executable, Software Eng. J., vol. 4, no. 6, Nov. 1989.
[38] C. B. Jones,Systematic Software Development Using VDM. Englewood Cliffs, NJ: Prentice-Hall, 1990, 2nd ed.
[39] W. Jonker and J.W. Spee, "Yet Another Formalisation of KADS Conceptual Models," Proc. EKAW 6, European Knowledge Acquisition Knowledge-Based Systems Workshop, Heidelberg/Kaiserslautern, T. Wetter et al., eds., Current Developments in Knowledge Acquisition, Lecture Notes in Artificial Intelligence, no. 599, Springer-Verlag, Berlin, May 1992.
[40] R. Jungclaus, Modeling of Dynamic Object Systems—A Logic Based Approach, Vieweg, Verlag, Braunschweig, 1993.
[41] W. Karbach and A. Voß, "MODEL-K for Prototyping and Strategic Reasoning at the Knowledge Level," J.-M. David, J.-P. Krivine, and R. Simmons, eds., Second Generation Expert Systems, Springer-Verlag, Berlin, 1993.
[42] R. Küppen, D. Fensel, and J. Geidel, "Modelling the Selection of Scheduling Algorithms with KARL," C. Bauer et al., eds., Proc. KUM 2: Interpretation Models for KADS User Meeting,Munich, Germany, Report No. 212, 1992.
[43] M. Kifer and E. Lozinskii, "A Framework for an Efficient Implementation of Deductive Databases," Proc. Sixth Advanced Database Symp.,Tokyo, pp. 109-116, 1986.
[44] W. Kim, Introduction to Object-Oriented Databases, MIT Press, Cambridge, Mass., 1990.
[45] M. Kifer and J. Wu, "A Logic for Object-Oriented Logic Programming (Maier's O-Logic Revisited)," ACM Symp. Principles of Database Systems,Philadelphia, pp. 379-393, Mar. 1989.
[46] M. Kifer, G. Lausen, and J. Wu, "Logical Foundations of Object-Oriented and Frame-Based Languages," J. ACM, vol. 42, pp. 741-843, 1995.
[47] D. Kozen, "Logics of Programs," J. van Leeuwen, ed., Handbook of Theoretical Computer Science, Elsevier Science, B.V., Amsterdam, 1990.
[48] P.B. Lassen and P.G. Larsen, "An Executable Subset of Meta-IV with Loose Specification," Proc. VDM: Formal Software Development Methods, Noordwijkerhout,Netherlands, Springer-Verlag, Berlin, Oct. 1991.
[49] D. Landes, "DesignKARL—A Language for the Design of Knowledge-Based Systems," Proc. SEKE 6, Int'l Conf. Software Eng. and Knowledge Eng.,Jurmala, Latvia, 1994.
[50] D. Landes and R. Studer, "The Treatment of Non-Functional Requirements in MIKE," Proc. ESEC 5: European Software Eng. Conf., Sitges, Springer-Verlag, Lecture Notes in Computer Science, vol. 989, 1995.
[51] D. Landes, D. Fensel, and J. Angele, "Formalizing and Operationalizing a Design Task with KARL," J. Treur and T. Wetter, eds., Formal Specification of Complex Reasoning Systems, Ellis Horwood, New York, 1993.
[52] Sisyphus '92: Models of Problem Solving, M. Linster, ed., Arbeitspapiere der GMD, no. 663, July 1992.
[53] M. Linster, "Using OMOS to Represent KADS Conceptual Models," Knowledge-Based Systems, G. Schreiber, B. Wielinga, and J. Breuker, eds., vol. 11, Academic Press, London, 1993.
[54] J.W. Lloyd and R.W. Topor, "Making Prolog More Expressive, J. Logic Programming, vol. 1, no. 3, 1984.
[55] J.W. Lloyd, Foundations of Logic Programming, Springer Series in Symbolic Computation, second ed. New York: Springer-Verlag, 1987.
[56] J. Loecks and K. Sieber, Foundations of Program Verification, Wiley, Teubner, 1984.
[57] I. van Langevelde, A. Philipsen, and J. Treur, "A Compositional Architecture for Simple Design Formally Specified in DESIRE," Formal Specification of Complex Reasoning Systems, J. Treur and T. Wetter, eds., Ellis Horwood, New York, 1993.
[58] P.G. Larsen, N. Plat, and H. Toetenel, "A Formal Semantics of Data Flow Diagrams," Formal Aspects of Computing, vol. 3, 1993.
[59] Automating Knowledge Acquisition for Expert Systems, S. Marcus, ed., Kluwer Academic, Boston, 1988.
[60] J. McDermott reply (replies (critique (pure reason)))," Computer Intelligence, vol. 3, no. 3, pp. 223-227, Aug. 1987.
[61] J. Mylopoulos, A. Borgida, M. Jarke, and M. Koubarakis, "Representing Knowledge About Information Systems in Telos," M. Jarke, ed., Database Application Eng. with DAIDA, research reports, ESPRIT, Project 892, DAIDA, vol. 1, Springer-Verlag, 1993.
[62] S. Neubert and F. Maurer, "A Tool for Model Based Knowledge Engineering," Proc. Avignon 13: Int'l Conf. AI, Expert Systems, Natural Language, Avig non, 1993.
[63] S. Neubert, "Model Construction in MIKE (Model-Based and Incremental Knowledge Engineering)," N. Aussenac et al., eds., Proc. EKAW 7: European Workshop Knowledge Acquisition for Knowledge-Based Systems,Toulouse, France, LNAI 723, Springer-Verlag, 1993.
[64] A. Newell, "The Knowledge Level," Artificial Intelligence, vol. 18, 1982.
[65] K. Poeck, D. Fensel, D. Landes, and J. Angele, "Combining KARL and Configurable Role Limiting Methods for Configuring Elevator Systems, Int'l J. Human-Computer Studies, vol. 44, nos. 3-4, 1996.
[66] K. Poeck and F. Puppe, "COKE: Efficient Solving of Complex Assignment Problems with the Propose-And-Exchange Method," Proc. Fifth Int'l Conf. Tools with Artificial Intelligence,Arlington, Va., 1992.
[67] T.C. Przymusinski, "On the Declarative Semantics of Deductive Databases and Logic Programs," J. Minker, ed., Foundations of Deductive Databases and Logic Programming, pp. 193-216. Morgan Kaufmann, 1988.
[68] F. Puppe, "Systematic Introduction to Expert Systems," Knowledge Representation and Problem-Solving Methods, Springer-Verlag, Berlin, 1993.
[69] G.P. Randell, "Translating Data Flow Diagrams into Z (and Vice Versa)," Technical Report 90019, Procurement Executive, Ministry of Defence, RSRE, Malvern, Worcestershire, U.K., Oct. 1990.
[70] Object Orientation in Z, S. Stepney, R. Barden, and D. Cooper, eds., Springer-Verlag, Berlin, 1992.
[71] E. Soloway, J. Bachant, and K. Jensen, "Assessing the Maintainability of XCON-in-RIME: Coping with the Problems of a VERY Large Rule-Base," Proc. AAAI 6, Nat'l Conf. AI,Seattle, Wash., pp. 824-829, 1987.
[72] V. Sperschneider and G. Antoniou, Logic: A Foundation for Computer Science, Int'l Computer Science Series, 1992.
[73] J.M. Spivey, Understanding Z: A Specification Language and Its Formal Semantics, Cambridge Univ. Press, Cambridge, 1988.
[74] J.M. Spivey, The Z Notation: A Reference Manual, Prentice-Hall, Englewood Cliffs, N.J., 1992.
[75] A. Sernadas, C. Sernadas, and J.F. Costa, "Object Specification Logic," J. Logic and Computation, vol. 5, no. 5, 1995.
[76] "KADS: A Principled Approach to Knowledge-Based System Development," Knowledge-Based Systems, G. Schreiber, B. Wielinga, and J. Breuker, eds., vol. 11, Academic Press, London, 1993.
[77] Formal Specification of Complex Reasoning Systems, J. Treur and T. Wetter, eds., Ellis Horwood, New York, 1993.
[78] J. Ullman, Principles of Database and Knowledge-Base Systems, vol. 1. Computer Science Press, 1988.
[79] J. Ullman, "Bottom-Up Beats Top-Down for Datalog," Proc. PODS 8: ACM Symp. Principles of Database Systems,Philadelphia, 1989.
[80] H. Voss and A. Voss, "Reuse-Oriented Knowledge Engineering with MoMo," Proc. SEKE 5: Int'l Conf. Software Eng. and Knowledge Eng.,San Fransisco, 1993.
[81] T. Wetter, "First Order Logic Foundation of the KADS Conceptual Model," B. Wielinga et al., eds., Current Trends in Knowledge Acquisition, IOS Press, Amsterdam, 1990.
[82] G.R. Yost, "Configuring Elevator Systems," technical report, Digital Equipment Corp., Marlboro, Mass., 1992.
[83] E. Yourdon, Modern Structured Analysis, Prentice Hall, Englewood Cliffs, N.J., 1989.

Index Terms:
Knowledge-based systems, knowledge engineering, knowledge acquisition, knowledge representation, specification languages, dynamic logic, logic programming, deductive databases, software engineering, prototyping.
Dieter Fensel, Jürgen Angele, Rudi Studer, "The Knowledge Acquisition and Representation Language, KARL," IEEE Transactions on Knowledge and Data Engineering, vol. 10, no. 4, pp. 527-550, July-Aug. 1998, doi:10.1109/69.706055
Usage of this product signifies your acceptance of the Terms of Use.