public function configureGoogleKey(Key $obj_key, Entity $obj_gds_entity)
    {
        // Add any ancestors FIRST
        $mix_ancestry = $obj_gds_entity->getAncestry();
        if(is_array($mix_ancestry)) {
            // @todo Get direction right!
            foreach ($mix_ancestry as $arr_ancestor_element) {
                $this->configureGoogleKeyPathElement($obj_key->addPathElement(), $arr_ancestor_element);
            }
        } elseif ($mix_ancestry instanceof Entity) {
            // Recursive
            $this->configureGoogleKey($obj_key, $mix_ancestry);
        }

        // Root Key (must be the last in the chain)
        $this->configureGoogleKeyPathElement($obj_key->addPathElement(), [
            'kind' => $obj_gds_entity->getKind(),
            'id' => $obj_gds_entity->getKeyId(),
            'name' => $obj_gds_entity->getKeyName()
        ]);

        return $obj_key;
    }