Abstract
In this article, I argue for a typing scheme for modeling that unifies the hitherto separated approaches of nominal and structural typing. Both these approaches have their respective advantages and disadvantages, and I suggest a unifying approach that provides one with the best of both worlds on demand. The ultimate goal is to make a contribution toward removing the gulf currently running through the modeling community that is created by the differences between explanatory and constructive modeling with their dependence on structural and nominal typing, respectively. To this end, I first characterize the typing disciplines underlying these different schools of thought, then identify their respective trade-offs, subsequently observe what aspects of these rather different typing approaches are compatible with each other and which are inherently incompatible, and finally propose a scheme that supports fluid transitioning between the approaches.
Similar content being viewed by others
References
Aßmann, U., Bartho, A., Wende, C. (eds.): Reasoning Web. Semantic Technologies for Software Engineering, LNCS, vol. 6325. Springer (2010)
Aßmann, U., Zschaler, S., Wagner, G.: Ontologies, meta-models, and the model-driven paradigm, Chapter 9. In: Calero, C., Ruiz, F., Piattini, M. (eds.) Ontologies for Software Engineering and Software Technology, pp. 249–273. Springer, Berlin (2006). https://doi.org/10.1007/3-540-34518-3_9
Atkinson, C., Gerbig, R.: Melanie: Multi-level modeling and ontology engineering environment. In: Proceedings of Modeling Wizards’12. ACM (2012)
Atkinson, C., Kühne, T.: The essence of multilevel metamodeling. In: Gogolla, M., Kobryn, C. (eds.) Proceedings of the 4th International Conference on the UML 2000, Toronto, Canada, LNCS 2185, pp. 19–33. Springer (2001)
Atkinson, C., Kühne, T., de Lara, J.: Theme Issue on Multi-Level Modeling. SoSyM Theme Issue. Springer (2017)
Atkinson, C., Kennel, B., Goß, B.: Supporting constructive and exploratory modes of modeling in multi-level ontologies. In: Proceedings of 7th International Workshop on Semantic Web Enabled Software Engineering (2011)
Atkinson, C., Gutheil, M., Kiko, K.: On the relationship of ontologies and models. In: Proceedings WoMM’06, LNI, vol. 96 (2006)
Atkinson, C., Gerbig, R., Kühne, T.: A unifying approach to connections for multi-level modeling. In: Proceedings of MODELS’15, pp. 216–225. IEEE Computer Society (2015)
Baader, F., Calvanese, D., McGuinness, D., Nardi, D., Patel-Schneider, P. (eds.): The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press (2003)
Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F. (eds.): The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press, New York (2003)
Blumberg, R., Atre, S.: The problem with unstructured data. Dm Rev. 13(42–49), 62 (2003)
Brachman, R.: What is-a is and isn’t: an analysis of taxonomic links in semantic networks. Computer 16(10), 30–36 (1983). https://doi.org/10.1109/MC.1983.1654194
Brachman, R.J., Schmolze, J.G.: An overview of the KL-ONE knowledge representation system. Cogn. Sci. 9(2), 171–216 (1985)
Carnap, R.: Meaning and Necessity: A Study in Semantics and Modal Logic. University of Chicago Press, Chicago (1947)
Clark, K.L.: Logic and data bases, chapter. Negation as Failure, pp. 293–322. Springer (1978). https://doi.org/10.1007/978-1-4684-3384-5_11
Drake, F.L., et al.: Python 3.6 Documentation—Glossary. https://docs.python.org/3/glossary.html#term-duck-typing. Last Accessed 15 March 2017
Gruber, T.R.: Toward principles for the design of ontologies used for knowledge sharing. In: Guarino, N., Poli, R. (eds.) Formal Ontology in Conceptual Analysis and Knowledge Representation. Kluwer, Deventer (1993)
Guarino, N.: Concepts, attributes and arbitrary relations. Data Knowl. Eng. 8, 249–261 (1992)
Guizzardi, G.: Ontological Foundations for Structural Conceptual Models. Ph.D. thesis, University of Twente, Enschede (2005). ISBN 90-75176-81-3
Hesse, W.: More matters on (meta-) modelling—remarks on Thomas Kühne’s “matters”. J. Softw. Syst. Model. 5(4), 387–394 (2006)
Huersch, W.L.: Should superclasses be abstract? In: ECOOP ’94, LNCS, pp. 12–31. Springer (1994)
Jackson, E., Bjorner, N., Schulte, W.: Open-World Logic Programs: A New Foundation for Formal Specifications. Technical Report 2013-55 (2013)
Kappel, G., Kapsammer, E., Kargl, H., Kramler, G., Reiter, T., Retschitzegger, W., Schwinger, W., Wimmer, M.: Lifting metamodels to ontologies: a step to the semantic integration of modeling languages. In: Proceedings of MODELS’06, LNCS, vol. 4199, pp. 528–542. Springer (2006)
Kennel, B.: A Unified Framework for Multi-Level Modeling. Ph.D. thesis, University of Mannheim (2012)
Kühne, T.: Matters of (meta-) modeling. Soft. Syst. Model. 5(4), 369–385 (2006)
Kühne, T.: On model compatibility with referees and contexts. Softw. Syst. Model. 12(3), 475–488 (2013)
Kühne, T.: Unifying explanatory and constructive modeling: towards removing the gulf between ontologies and conceptual models. In: Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, MODELS ’16, pp. 95–102. ACM (2016). https://doi.org/10.1145/2976767.2976770
Liskov, B.H., Wing, J.M.: A behavioral notion of subtyping. ACM Trans. Program. Lang. Syst. 16(6), 1811–1841 (1994). https://doi.org/10.1145/197320.197383
Multi-level Modeling Wiki. http://homepages.ecs.vuw.ac.nz/Groups/MultiLevelModeling/ (2014)
Pierce, B.C.: Types and Programming Languages. MIT Press, Cambridge (2002). ISBN 0-262-16209-1
Prinz, A., Møller-Pedersen, B., Fischer, J.: Modelling and Testing of Real Systems, pp. 119–130. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47169-3_9
Sheldon, F.T., Jerath, K., Chung, H.: Metrics for maintainability of class inheritance hierarchies. J. Soft. Maint. 14(3), 147–160 (2002)
Siek, J., Taha, W.: Gradual typing for objects. In: Proceedings of the 21st European Conference on ECOOP 2007: Object-Oriented Programming, ECOOP ’07, pp. 2–27. Springer, Berlin (2007). https://doi.org/10.1007/978-3-540-73589-2_2
Simons, A.J.H.: The theory of classification, part 5: axioms, assertions and subtypes. J. Object Technol. 2(1), 13–21 (2003)
Simpson, G.G.: Principles of Animal Taxonomy. Columbia University Press, New York (1961)
Steimann, F., Kühne, T.: A radical reduction of UML’s core semantics. In: Proceedings of UML’02, LNCS, vol. 2460, pp. 34–48. Springer (2002)
Wang, X.H., Gu, T., Zhang, D.Q., Pung, H.K.: Ontology based context modeling and reasoning using owl. In: IEEE International Conference on Pervasive Computing and Communication (PerCom04), pp. 18–22 (2004). Explains Upper Ontology
Wüest, D., Seyff, N., Glinz, M.: Flexisketch team: Collaborative sketching and notation creation on the fly. In: Proceedings of the 37th International Conference on Software Engineering, vol. 2, ICSE ’15, pp. 685–688. IEEE Press, Piscataway (2015)
Acknowledgements
I would like to thank Colin Atkinson and the anonymous reviewers of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems for their highly valuable feedback on a previous version of this article. Debates with Colin Aktinson helped sharpen some of the ideas presented in this article and significantly informed their presentation. The anonymous reviewers provided very helpful pointers, including suggestions for application areas. Finally, I would like to thank SoSyM’s anonymous reviewers whose thoughtful questions and comments further improved the presentation of this article.
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Dr. Jörg Kienzle and Alexander Pretschner.
Rights and permissions
About this article
Cite this article
Kühne, T. Unifying nominal and structural typing. Softw Syst Model 18, 1683–1697 (2019). https://doi.org/10.1007/s10270-018-0660-y
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-018-0660-y