class PathMapper implements Mapper {

    @Override
    public Object keyForTarget(DataObject target) {

        // cases:
        // 1. "obj:" expressions are object properties
        // 2. "db:" expressions mapping to ID columns
        // 3. "db:" expressions mapping to object properties

        // Cayenne exp can handle 1 & 2; we'll need to manually handle case 3

        return getOrCreatePathExpression().evaluate(target);
    }

    public  PathMapper(String dbPath);

}