
By Achim D. Brucker, Delphine Longuet, Frédéric Tuong, and Burkhart Wolff.
/is perceived as the de-facto standard for specifying object-oriented models in general and data models in particular. Since recently, all data types of / comprise two different exception elements: (``bottom” in semantics terminology) and (for ``non-existing element”). This has far-reaching consequences on both the logical and algebraic properties of expressions as well as the path expressions over object-oriented data structures, , class models.
In this paper, we present a formal semantics for object-oriented data models in which all data types and, thus, all class attributes and path expressions, support and . Based on this formal semantics, we present a set of test cases that can be used for evaluating the support of and in tools.
Keywords: Object-oriented Data Structures, Path Expressions, Featherweight OCL, Null, Invalid, Formal Semantics
Extended by: An extended version is available as: A. D. Brucker, D. Longuet, F. Tuong, and B. Wolff, “On the semantics of object-oriented data structures and path expressions (extended version),” Laboratoire en Recherche en Informatique (LRI), Université Paris-Sud 11, France, 1565, 2013. Author copy: https://logicalhacking.com/publications/brucker.ea-path-expressions-2013-b/
Please cite this work as follows: A. D. Brucker, D. Longuet, F. Tuong, and B. Wolff, “On the semantics of object-oriented data structures and path expressions,” in Proceedings of the MODELS 2013 OCL workshop (OCL 2013), 2013, vol. 1092, pp. 23–32. An extended version of this paper is available as LRI Technical Report 1565.. Author copy: https://logicalhacking.com/publications/brucker.ea-path-expressions-2013/
@InProceedings{ brucker.ea:path-expressions:2013,
author = {Achim D. Brucker and Delphine Longuet and Fr{\'e}d{\'e}ric
Tuong and Burkhart Wolff},title = {On the Semantics of Object-oriented Data Structures and Path
Expressions},year = {2013},
booktitle = {Proceedings of the MODELS 2013 OCL Workshop (OCL 2013)},
location = {Miami, USA},
editor = {Jordi Cabot and Martin Gogolla and Istv{\'a}n R{\'a}th and
Edward D. Willink},publisher = {CEUR-WS.org},
series = {CEUR Workshop Proceedings},
volume = {1092},
ee = {https://ceur-ws.org/Vol-1092},
pages = {23--32},
abstract = {\UML/\OCL is perceived as the de-facto standard for
specifying object-oriented models in general and data models\UML/\OCL
in particular. Since recently, all data types of \inlineocl{invalid}
comprise two different exception elements: \inlineocl{null}
(``bottom'' in semantics terminology) and
(for ``non-existing element''). This has far-reaching
consequences on both the logical and algebraic properties of\OCL expressions as well as the path expressions over
\ie, class models.
object-oriented data structures,
In this paper, we present a formal semantics for
object-oriented data models in which all data types and, thus,
all class attributes and path expressions, support\inlineocl{invalid} and \inlineocl{null}. Based on this formal
\OCL test cases that can be
semantics, we present a set of \inlineocl{null} and
used for evaluating the support of \inlineocl{invalid} in \OCL tools.},
areas = {formal methods, software},
keywords = {Object-oriented Data Structures, Path Expressions,
Featherweight OCL, Null, Invalid, Formal Semantics},note = {An extended version of this paper is available as LRI
Technical Report 1565.. \url{https://logicalhacking.com/publications/brucker.ea-path-expressions-2013/}},
Author copy: extendedby = {brucker.ea:path-expressions:2013-b},
pdf = {https://logicalhacking.com/publications/brucker.ea-path-expressions-2013/brucker.ea-path-expressions-2013.pdf},
}