Abstract
This paper advocates for a unification of modeling & programming from the perspective of normalized, implementation-neutral database schemas: representing programs and models in terms of irreducible and independent tables. This idea departs from the mainstream of modeling & programming, which typically revolves around Application Program Interface (API) ecosystems for operational needs and external serialization for interchange needs. Instead, this idea emphasizes an information-centric architecture to separate the structural aspects of language syntax via normalized schema tables from the operational aspects of language syntax and semantics via programs operating on normalized tables or derived table views. Such tables constitute the basis of a functional information architecture unifying modeling and programming as a radical departure from standardizing APIs in a programming fashion or standardizing serialization interchange in a modeling fashion. This paper focuses on the current API-less serialization-centric modeling paradigm because it is the farthest from a unified functional information architecture compared to functional programming languages where thinking about programs as pure functions and models as pure data is closest to this kind of unification. This paper first deconstructs the multi-level, reflective architecture for modeling languages defined at the Object Management Group (OMG) based on the Meta-Object Facility (MOF) and the Unified Modeling Language (UML) and subsequently reconstructs several normalized schema accounting for the information content and organization of different kinds of resources involved in modeling: libraries of datatypes, metamodels like UML, profiles like the Systems Modeling Language (SysML) that extend metamodels and models that conform to metamodels optionally extended with applied profiles.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Without roles, a conceptual relationship would degenerate to a conceptual group of undifferentiated conceptual elements.
- 2.
A GeneralOrdering represents a binary relation...; An ActivityEdge is an abstract class for directed connections...; A Transition represents and arc....; A Message defines a particular communication between...; A Dependency is a Relationship....; A Connector specifies links...; An Association classifies a set of links... A link is a tuple of values...
- 3.
- 4.
The default EMF code generator does not map association-owned end properties [4, See Sect. 6.4].
- 5.
(i.e., type, lowerValue, upperValue, isOrdered, isUnique, isDerived, isDerivedUnion, isReadOnly, aggregation, subsettedProperty, and redefinedProperty).
- 6.
See resolutions of issues 14993 and 14977 in UML 2.4.1 [8] for the last two.
- 7.
For UML 1.5’s IDL, see http://www.omg.org/spec/UML/1.5.
- 8.
- 9.
- 10.
- 11.
- 12.
References
Skiena, S.S.: The Algorithm Design Manual, 2nd edn. Springer, London (2008)
Pawlik, M., Augsten, N.: Efficient computation of the tree edit distance. ACM Trans. Datab. Syst. 40(1), 1–40 (2015). Article 3
Pierce, B.C.: Types and Programming Languages (2002)
Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF Eclipse Modeling Framework, 2nd edn. Addison-Wesley, Boston (2008)
Object Management Group: Semantics of a Foundational Subset for Executable UML Models (fUML), version 1.2.1, formal/2016-01-05 (2016)
Object Management Group: Meta-Object Facility Core Specification, version 2.5, formal/2015-06-05 (2015)
Object Management Group: MOF Support for Semantic Structures, version 1.0 FTF beta 2, ptc/2011-08-22 (2011)
Object Management Group: Report of the UML version 2.4.1 Revision Task Force, ptc/2011-01-19 (2010)
Object Management Group: Unified Modeling Language version 2.5, formal/2015-03-01 (2015)
Guarino, N., Welty, C.: An overview of OntoClean. In: Staab, S., Studer, R. (eds.) The Handbook on Ontologies. International Handbooks on Information Systems, pp. 151–172. Springer, Heidelberg (2004)
Procházka, J., Cyganiak, R., Inkster, T., Ferris, B.: The Property Reification Vocabulary 0.11. http://smiy.sourceforge.net/prv/spec/propertyreification.html
Biron, P.V., Malhotra, A.: XML Schema Part 2: Datatypes 2nd edn. W3C Recommendation, 28 October 2004. http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/
Kent, W.: A simple guide to five normal forms in relational database theory. Commun. ACM 26(2), 120–125 (1983)
Armbrust, M., et al.: Spark SQL: Relational data processing in spark. In: SIGMOD 2015 (2015)
Gonzalez, J.E., et al.: GraphX: graph processing in a distributed dataflow framework. In: OSDI 2014 (2014)
Acknowledgements
This research was carried out at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration.
Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise, does not constitute or imply its endorsement by the United States Government or the Jet Propulsion Laboratory, California Institute of Technology.
The author expresses gratitude to many colleagues at the Jet Propulsion Laboratory’s Integrated Model-Centric Engineering project and the Laboratory for Reliable Software, in particular, M. Elaasar, K. Havelund, S. Herzig, S. Jenkins and R. Kumar, and to many current and past task force colleagues at the Object Management Group (OMG), in particular, Y. Bernard, C. Bock, R. Burkhart, S. Cook, S. Friedenthal, M. Elaasar, M. Koethe, P. Rivett, E. Seidewitz and B. Selic.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing AG
About this paper
Cite this paper
Rouquette, N.F. (2016). Simplifying OMG MOF-Based Metamodeling. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation: Discussion, Dissemination, Applications. ISoLA 2016. Lecture Notes in Computer Science(), vol 9953. Springer, Cham. https://doi.org/10.1007/978-3-319-47169-3_8
Download citation
DOI: https://doi.org/10.1007/978-3-319-47169-3_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-47168-6
Online ISBN: 978-3-319-47169-3
eBook Packages: Computer ScienceComputer Science (R0)