Property :: hierarchyPath - Get Accesspath for property handle hierarchy
An access path may simply refer to an extent or property, but also to a calculated result. Thus, an access path may contain just a name, but also a sequence of path elements separated by '.' in order to refer to far properties or complex operations.
The access path may start with two dots (.), which indicates, that the path starts in an upper property handle. One dot indicates, that the path starts in the current property handle. This distinction becomes necessary, when a property has the same name as an extent. To access a property in this case, one dot must precede the property name. The first dot can be omitted, when the property name is not an extent name.
Forcing to a path to start in a parent property handle requires two dots (..), the parents parent three and so on.
In order to pass no access path, an empty string ( String() ) has to be passed.
address.street // property path
.address.street // property path
..address.street // address in parent property instance
children(0).Age() // operation path
Person().children() // path property
children('Anton') // path property
Implementation overview
- Get complete property path
Property :: hierarchyPath (  ) - Get hierarchy path to upper property
Property :: hierarchyPath ( cProperty )
Implementation details
-
Get complete property path
odaba::String Property  :: hierarchyPath (  )
The function returns the complete property path for the current property handle.
to list
-
Get hierarchy path to upper property
odaba::String Property  :: hierarchyPath ( odaba::Property &cProperty )
The function returns the path between the current property handle and the passed property handle. The current property handle must be a sub handle of the upper handle passed to the function. When an invalid property handle is passed as upper handle, the function throws a exception.
The path returned can be used to reopen the current
- cProperty
- Property reference
A property handle refers to a (usually) opened property. Invalid properties may cause an exception.
to list
- cProperty
- Property reference