public function checkRole(DataObject $node, $role, $member = null)
    {
        $role = DataObject::get_one('AccessRole', '"Title" = \'' . Convert::raw2sql($role) . '\'');

        if ($role && $role->exists()) {
            $composedOf = $role->Composes->getValues();
            if ($composedOf && is_array($composedOf)) {
                foreach ($composedOf as $perm) {
                    if (!$this->checkPerm($node, $perm, $member)) {
                        return false;
                    }
                }
                return true;
            }
        }
        return false;
    }