company logo

DataSource :: openAccessPath - Open property handle for access path

The property handle for the access path can be opened only when the object space or database handle is opened for the data source.

Return value:  Property reference ( odaba::Property & )

A property handle refers to a (usually) opened property. Invalid properties may cause an exception.

Implementation details

odaba::Property & DataSource  :: openAccessPath ( odaba::String &vAccessPath )

The function opens the property handle for the access path passed in vAccessPath. When the value passed in vAccessPath is empty, the function uses the access path currently set in the accessPath property.

When the property handle is already opened, it will be closed (closeAccessPath()) before being opened again.

  • vAccessPath - Access path

    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