Henrich, AndreasAndreasHenrich0000-0002-5074-3254Jamin, StefanStefanJamin2025-06-032025-06-032025https://fis.uni-bamberg.de/handle/uniba/106991One of the main characteristics of object-oriented database management systems is the explicit representation of relationships between objects. A simple example for a query addressing these relationships arises, if we assume the object types Company, and Division with the relationship has_division from Company to Division. In this case a query might ask for the companies which have a division called "strategy". The query might start with the companies and navigate to the divisions which can be reached via the has_division relationship. Finally the query has to check if the name attribute of the Division object is "strategy". Since there is no direct condition for the companies in the query, this query execution will be costly. If we assume that there is a reverse relationship division_of from Division to Company, an alternative execution plan might start with the "strategy" divisions and follow this reverse relationship. In this case an index structure for the name attribute of the Division objects can be exploited to speed up query processing. In the present paper we describe a query optimizer which exploits this potential invertibility of navigational operations in queries. Our approach is based on, but not limited to the context of the ISO and ECMA standard PCTE and P-OQL.engregular path expressions004On the optimization of queries containing regular path expressionsconferenceobjecturn:nbn:de:bvb:473-irb-1069914