protected function scopedInfo(/*# string */ $id)/*# : array */
    {
        // split into raw id and scope (if any)
        list($rawId, $scope) = $this->splitId($id);

        // use the default scope if no scope given
        if (empty($scope)) {
            // use the default
            $scope = $this->default_scope;

            // honor predefined scope over the default
            $def = $this->getResolver()->getService($rawId);
            if (is_array($def) && isset($def['scope'])) {
                $scope = $def['scope'];
            }
        }

        return [$rawId, $scope];
    }