Skip to main content
Log in

An approach to translating OCL invariants into OWL 2 DL axioms for checking inconsistency

  • Published:
Automated Software Engineering Aims and scope Submit manuscript

Abstract

Checking the design specification for contradictions at the early phase of the software development process is crucial to ensure that the design is implementable. However, the high expressivity of OCL makes manual inconsistency checking a difficult task. In addition, the developers cannot detect these problems by OCL itself due to its lack of automated reasoning support. We investigate an approach to translating OCL invariants into OWL 2 DL axioms. We do this where the OCL expression contained in an invariant is converted to the corresponding OWL 2 DL class expression in a compositional way. Our approach covers the OCL expressions including four: PrimaryExp, RelationalExp, LogicalExp and IfExp types. Considering the distinction between the CWA and OWA, we achieve correct translation from RelationalExp using closure axiom. Also, we employ an ontology design pattern to overcome the limitations of OWL 2 DL expressivity when translating IfExp. Then inconsistency checking is done through description logic reasoning by the OWL 2 DL high-performance reasoner. We construct an inductive proof to establish the correctness of our translation approach. Moreover, we evaluate our approach using the implemented TUCO tool prototype.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13

Similar content being viewed by others

References

  • Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F.: The Description Logic Handbook Theory, Implementation, and Applications, 2nd edn. Cambridge University Press, Cambridge (2007)

    Book  MATH  Google Scholar 

  • Beckert, B., Keller, U., Schmitt, P.H.: Translating the object constraint language into first-order predicate logic. In: Proceedings of Verify, Workshop at Federated Logic Conferences (FLoC’2002), pp. 113–123 (2002)

  • Beckert, B., Hähnle, R., Schmitt, P.H.: Verification of Object-Oriented Software: The KeY Approach. Springer, Berlin (2007)

    MATH  Google Scholar 

  • Berardi, D., Calvanese, D., De Giacomo, G.: Reasoning on UML class diagrams using description logic based systems. In: Proceedings of the KI-2001 Workshop on Applications of Description Logics (KI’2001) (2001). http://ceur-ws.org/Vol-44/

  • Berardi, D., Calvanese, D., De Giacomo, G.: Reasoning on UML class diagrams. Artif. Intell. 168(1), 70–118 (2005)

    Article  MathSciNet  MATH  Google Scholar 

  • Bottoni, P., Koch, M., Parisi-Presicce, F., Taentzer, G.: Consistency checking and visualization of OCL constraints. In: Proceedings of the 3rd International Conference on the Unified Modeling Language: Advancing the Standard (UML’00), pp. 294–308 (2000)

  • Brucker, A.D., Wolff, B.: The HOL-OCL Book. Technical report 525, Swiss Federal Institute of Technolgy, Zurich, August (2006)

  • Cabot, J., Teniente, E.: Transforming OCL constraints: a context change approach. In: Proceedings of the 2006 ACM Symposium on Applied Computing (SAC’06), pp. 1196–1201 (2006)

  • Cabot, J., Teniente, E.: Transformation techniques for OCL constraints. Sci. Comput. Progr. 68(3), 152–168 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  • Cabot, J., Paub, R., Raventósc, R.: From UML/OCL to SBVR specifications: a challenging transformation. Inf. Syst. 35(4), 417–440 (2010)

    Article  Google Scholar 

  • Cali, A., Calvanese, D., Lenzerini, M.: Reasoning on UML class diagrams in description logics. In: Proceedings of IJCAR Workshop on Precise Modeling and Deduction for Object-Oriented Software Development (PMD’01), pp. 15–28 (2001)

  • Cali, A., Calvanese, D., Giacomo, G.D., Lenzerini, M.: A formal framework for reasoning on UML class diagrams. In: Proceedings of the 13th International Symposium on Methodologies for Intelligent Systems (ISMIS’2002), pp. 503–513 (2002)

  • DIG 2.0: The DIG description logic interface document index. http://dig.cs.manchester.ac.uk/ (2006)

  • Egana-Aranguren, M.: Role and application of ontology design patterns in bioontologies. Ph.D. thesis, University of Manchester (2009)

  • Farré, C., Teniente, E., Urpí, T.: A new approach for checking schema validation properties. In: Proceedings of 15th International Conference on Database and Expert Systems Applications (DEXA’04), pp. 77–86 (2004)

  • Farré, C., Teniente, E., Urpí, T.: Checking query containment with the CQC method. Data Knowl. Eng. 53(2), 163–223 (2005)

    Article  Google Scholar 

  • Gogolla, M., Büttner, F., Richters, M.: USE: a UML-based specification environment for validating UML and OCL. Sci. Comput. Progr. 69, 27–34 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  • Haase, P., Qi, G.: An analysis of approaches to resolving inconsistencies in DL-based ontologies. In: Proceedings of the 2007 International Workshop on Ontology Dynamics (IWOD’07), pp. 97–109 (2007)

  • Li, M., Zang, F.: A dynamic description logic for UML. In: Proceedings of the 2009 International Joint Conference on Artificial Intelligence (JCAI’09), pp. 175–178 (2009)

  • Lukichev, S.: Defining a subset of OCL for expressing SWRL rules. In: Proceedings of 2nd East European Work-Shop on Rule-Based Applications (RuleApps’2008). http://ceur-ws.org/Vol-428/ (2008)

  • Mandel, L., Cengarle, M. V.: On the expressive power of OCL. In: Proceedings of the World Congress on Formal Methods in the Development of Computing Systems (FM’99), pp. 854–874 (1999)

  • Milanović, M., Gašević, D., Giurca, A., Wagner, G.: On interchanging between OWL/SWRL and UML/OCL. In: Proceedings of the 6th Workshop on OCL for (Meta-)Models in Multiple Application Domains (OCLApps’20-06), pp. 81–95 (2006)

  • OCL: Object constraint language 2.0. http://www.omg.org/spec/OCL/2.2/PDF/ (2006)

  • OCL2 Toolkit: Dresden OCL2 toolkit. http://www.dresden-ocl.org/index.php/DresdenOCL:DresdenOCL2Toolkit (2007)

  • OCL2 Parser: Dresden OCL2 parser. http://www.dresden-ocl.org/index.php/DresdenOCL:Documentation (2007)

  • OWL 2: OWL 2 Web Ontology Language Document Overview, 2nd edn. http://www.w3.org/TR/owl2-overview/ (2012)

  • OWL 2 Semantics: OWL 2 Web Ontology Language Direct Semantics, 2nd edn. http://www.w3.org/TR/owl2-direct-semantics/ (2012)

  • Pellet: OWL DL reasoner for Java—Clark & Parsia. http://weblog.clarkparsia.com/2010/07/06/pellet-22-release/ (2010)

  • Protégé-OWL API: Protégé-OWL API. http://protege.stanford.edu/plugins/owl/api/ (2006)

  • Queralt, A., Teniente, E.: Reasoning on UML class diagrams with OCL constraints. In: Proceedings of the 25th International Conference on Conceptual Modeling (ER’06), pp. 497–512 (2006)

  • Queralt, A., Teniente, E.: Decidable reasoning in UML schemas with constraints. In: Proceedings of the 20th International Conference on Advanced Information Systems Engineering (CAiSE’08), pp. 281–295 (2008)

  • Queralt, A., Rull, G., Teniente, E., Farré, C., Urpí, T.: AuRUS: automated reasoning on UML/OCL schemas. In: Proceedings of the 29th International Conference on Conceptual Modeling(ER’10), pp. 438–444 (2010)

  • Queralt, A., Artale, A., Calvanese, D., Teniente, E.: OCL-Lite: finite reasoning on UML/OCL conceptual schemas. Data Knowl. Eng. 73, 1–22 (2012)

    Article  Google Scholar 

  • Rector, A., Drummond, N., Horridge, M., Rogers, J., Knublauch, H., Stevens, R., Wang, H., Wroe, C.: OWL piz-zas: practical experience of teaching OWL-DL: common errors and common patterns. In: Proceedings of the European Conference on Knowledge Acquisition (EKAW’2004), pp. 63–81 (2004)

  • Richters, M., Gogolla, M.: On formalizing the UML object constraint language OCL. In: Proceedings of 17th International Conference Conceptual Modeling (ER’98), pp. 449–464 (1998)

  • Roe, D., Broda, K., Russo, A.: Mapping UML models incorporating OCL constraints into Object Z. Technical Report, Department of Computing, Imperial College London, London, September (2003)

  • Simmonds, J.: Consistency maintenance of UML models with description logics. Master thesis, Vrije Universiteit Brussel (2003)

  • Simmonds, J., Straeten, R. V., Jonkers, V., Mens, T.: Using description logic to maintain consistency between UML models. In: Proceedings of the 6th International Conference on “UML”—the Unified Modeling Language, pp. 326–340 (2003)

  • Simmonds, J., Bastarrica, M.: Description logics for consistency checking of architectural features in UML 2.0 models. Technical report DCC-2005-1, Department of Computer Science, University of Chile, Santiago (2005a)

  • Simmonds, J., Bastarrica, M.: A tool for automatic UML model consistency checking. In: Proceedings of the 20th IEEE/ACM International Conference on Automated Software Engineering (ASE’2005), pp. 431–432 (2005b)

  • Simmonds, J., Bastarrica, M., Hitschfeld-Kahler, N., Rivas, S.: A tool based on DL for UML model consistency checking. Int. J. Softw. Eng. Knowl. 18(6), 713–735 (2008)

    Article  Google Scholar 

  • Straeten, R. V.: Inconsistency management in modeldriven engineering—an approach using description logics. PhD thesis, Vrije Universiteit Brussel (2005)

  • Straeten, R. V., Simmonds, J., Mens, T.: Detecting inconsistencies between UML models using description logic. In: Proceedings of International Workshop on Description Logics (DL’2003) (2003). http://ceur-ws.org/Vol-81/

  • Straeten, R. V.: Inconsistency detection between UML models using Racer and nRQL. In: Proceedings of the KI-2004 Workshop on Applications of Description Logics (KI’2004) (2004). http://www.ceur-ws.org/Vol-115/

  • SWRL: A semantic web rule language combining OWL and RuleML. http://www.w3.org/Submission/SWRL/ (2004)

  • UML Superstructure: Unified modeling language 2.0 superstructure. http://www.omg.org/spec/UML/2.0/Superstructu-re/PDF/ (2005)

  • Weitl, F., Nakajima, S.: Integrated model checking of static structure and dynamic behavior using temporal description logics. In: Electronic Communications of the EASST 46. http://journal.ub.tu-berlin.de/eceasst/issue/view/58 (2011)

  • XMI: MOF 2 XMI mapping 2.1.1. http://www.omg.org/spec/XMI/2.1.1/PDF/index.htm (2007)

Download references

Acknowledgements

The authors sincerely thank the anonymous reviewers for their valuable comments that have led to the present improved version of the original manuscript. The work described in this paper was partially supported by the National Natural Science Key Foundation (Grant No. 91118005), the National Natural Science Foundation of China (Grant No. 61173131), and the Fundamental Research Funds for the Central Universities of China (Grant No. 106112014CDJZR098801).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Chunlei Fu.

Appendices

Appendix 1: Description Logic syntax and interpretation for OWL 2 DL class expression

See Table 3.

Table 3 Description logic syntax and interpretation for OWL 2 DL class expression

Appendix 2: Description logic syntax and interpretation for OWL 2 DL data range

See Tables 4 and 5.

Table 4 Description logic syntax and interpretation for OWL 2 DL data range
Table 5 Description logic syntax and interpretation for OWL 2 DL datatype restriction

Appendix 3: Description logic syntax and satisfaction for OWL 2 DL axiom

See Table 6.

Table 6 Description logic syntax and satisfaction for OWL 2 DL axiom

Appendix 4: Equivalences between OCL expressions

See Figs. 14 and 15.

Fig. 14
figure 14

The equivalences between OCL expressions

Fig. 15
figure 15

Translating more kinds of PrimaryExp and LogicalExp applying the equivalences between OCL expressions

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fu, C., Yang, D., Zhang, X. et al. An approach to translating OCL invariants into OWL 2 DL axioms for checking inconsistency. Autom Softw Eng 24, 295–339 (2017). https://doi.org/10.1007/s10515-017-0210-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10515-017-0210-9

Keywords

Navigation