Abstract
Object-Role Modelling (ORM) is a framework for modelling a domain using a rich set of constraints with an intuitive diagrammatic representation, not dissimilar to UML class diagrams. ORM is backed by Microsoft with Visual Studio, and it is used to support the design of large database schemas and/or complex software, easing the workflow for all stakeholders and bridging the gap among them, since every constraint of the diagram is encoded in a language which is understandable even by non-IT users. Besides the standard constraints, ORM also supports Derivation Rules that, in a way similar to UML/OCL constraints and SQL triggers, are able to express knowledge which is beyond standard graphic-based ORM capabilities. Despite ORM has its own formalisation in literature, Derivation Rules in ORM lack of this feature. The purpose of this paper is to provide a formalisation for ORM Derivation Rules in order to extend the automated reasoning on diagrams equipped with Derivation Rules. Automated reasoning is useful to check the consistency of diagrams, new inferred knowledge to validate the diagram or to avoid mistakes which could degrade the quality of the system. We provide the formalisation of Derivation Rules with a precise syntax and a semantics grounded on a precise and non-ambiguous encoding in first-order logic. Finally, we also detect an expressive decidable fragment of Derivation Rules by means of an encoding in an expressive Description Logic. A reasoner for this fragment has been implemented in a plugin for Microsoft Visual Studio.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Artale, A., Franconi, E.: Extending DLR with labelled tuples, projections, functional dependencies and objectification. In: Proceedings of the 29th International Workshop on Description Logics (2016). http://ceur-ws.org/Vol-1577/paper_6.pdf
Berardi, D., Calvanese, D., De Giacomo, G.: Reasoning on UML class diagrams. Artif. Intell. 168(1–2), 70–118 (2005). https://doi.org/10.1016/j.artint.2005.05.003
Borgida, A., Lenzerini, M., Rosati, R.: Description logics for databases. In: Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F. (eds.) The Description Logic Handbook, pp. 462–484. Cambridge University Press, New York (2003). http://dl.acm.org/citation.cfm?id=885746.885763
Curland, M., Halpin, T.A.: The NORMA software tool for ORM 2. In: Information Systems Evolution - CAiSE Forum 2010, pp. 190–204 (2010). https://doi.org/10.1007/978-3-642-17722-4_14
Fillottrani, P.R., Franconi, E., Tessaris, S.: The ICOM 3.0 intelligent conceptual modelling tool and methodology. Semantic Web 3(3), 293–306 (2012). https://doi.org/10.3233/SW-2011-0038
Fillottrani, P.R., Keet, C.M., Toman, D.: Polynomial encoding of ORM conceptual models in CFDI. In: Proceedings of the 28th International Workshop on Description Logics (2015). http://ceur-ws.org/Vol-1350/paper-50.pdf
Franconi, E., Mosca, A., Solomakhin, D.: ORM2 encoding into description logics. In: 2012 International Description Logics Workshop (DL-2012) (2012)
Franconi, E., Mosca, A.: Towards a core ORM2 language (research note). In: Demey, Y.T., Panetto, H. (eds.) OTM 2013. LNCS, vol. 8186, pp. 448–456. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-41033-8_58
Franconi, E., Mosca, A., Oriol, X., Rull, G., Teniente, E.: OCL\(_{FO}\): first-order expressive OCL constraints for efficient integrity checking. Softw. Syst. Model. 18, 1–24 (2018). https://doi.org/10.1007/s10270-018-0688-z
Franconi, E., Mosca, A., Solomakhin, D.: The formalization of ORM2 and its encoding in OWL2. In: International Workshop on Fact-Oriented Modeling (ORM 2012) (2012)
Halpin, T.: A Logical analysis of information systems: static aspects of the data-oriented perspective. Ph.D. thesis, July 1989
Halpin, T.: Adding derivation rules and join paths in NORMA. Technical report, ORM Solutions, August 2013
Halpin, T.: Object-Role Modeling Fundamentals: A Practical Guide to Data Modeling with ORM, 1st edn. Technics Publications, Basking Ridge (2015)
Halpin, T., Wijbenga, J.P.: FORML 2. In: Bider, I., et al. (eds.) Enterprise, Business-Process and Information Systems Modeling, pp. 247–260. Springer, Berlin (2010)
Halpin, T.A.: Object-role modeling: principles and benefits. IJISMD 1(1), 33–57 (2010). http://dx.doi.org/10.4018/jismd.2010092302
Halpin, T.A., Morgan, T.: Information Modeling and Relational Databases, 2nd edn. Morgan Kaufmann, San Francisco (2008)
Jarrar, M.: Towards automated reasoning on ORM schemes. In: ER 2007, 26th International Conference on Conceptual Modeling, pp. 181–197 (2007). https://doi.org/10.1007/978-3-540-75563-0_14
Jarrar, M., Meersman, R.: Ontology engineering - the DOGMA approach. In: Dillon, T.S., Chang, E., Meersman, R., Sycara, K. (eds.) Advances in Web Semantics I. LNCS, vol. 4891, chap. 3, pp. 7–34. Springer, Heidelberg (2008). http://Portal.acm.org/Citation.cfm?Id=1505684
Sportelli, F., Franconi, E.: Formalisation of ORM derivation rules and their mapping into OWL. In: On the Move to Meaningful Internet Systems: OTM 2016 Conferences - Confederated International Conferences: CoopIS, C&TC, and ODBASE 2016, Proceedings, Rhodes, Greece, 24–28 October 2016, pp. 827–843 (2016). https://doi.org/10.1007/978-3-319-48472-3_52
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Sportelli, F., Franconi, E. (2019). A Formalisation and a Computational Characterisation of ORM Derivation Rules. In: Panetto, H., Debruyne, C., Hepp, M., Lewis, D., Ardagna, C., Meersman, R. (eds) On the Move to Meaningful Internet Systems: OTM 2019 Conferences. OTM 2019. Lecture Notes in Computer Science(), vol 11877. Springer, Cham. https://doi.org/10.1007/978-3-030-33246-4_42
Download citation
DOI: https://doi.org/10.1007/978-3-030-33246-4_42
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-33245-7
Online ISBN: 978-3-030-33246-4
eBook Packages: Computer ScienceComputer Science (R0)