
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
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 (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/
@TechReport{ brucker.ea:path-expressions:2013-b,
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 (Extended Version)},booktitle = {Workshop on OCL and Textual Modelling (OCL 2013)},
year = {2013},
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.},
number = {1565},
institution = {Laboratoire en Recherche en Informatique (LRI), Universit\'e
Paris-Sud 11, France},areas = {formal methods, software},
keywords = {Object-oriented Data Structures, Path Expressions,
Featherweight OCL, Null, Invalid, Formal Semantics},note = {Author copy: \url{https://logicalhacking.com/publications/brucker.ea-path-expressions-2013-b/}},
pdf = {https://logicalhacking.com/publications/brucker.ea-path-expressions-2013-b/brucker.ea-path-expressions-2013-b.pdf},
}