<https://docs.linkeddatahub.com/reference/administration/acl/>
        a       <https://www.w3.org/ns/ldt/document-hierarchy#Item>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#_1>
                <https://docs.linkeddatahub.com/reference/administration/acl/#content>;
        <http://purl.org/dc/terms/created>
                "2026-06-16T20:34:02.611Z"^^<http://www.w3.org/2001/XMLSchema#dateTime>;
        <http://purl.org/dc/terms/creator>
                <https://admin.linkeddatahub.com/acl/agents/0ab4a0f7-1ab0-4d0c-8efc-63a79a2e9a10/#this>;
        <http://purl.org/dc/terms/description>
                "Agents, groups, and authorizations";
        <http://purl.org/dc/terms/title>
                "Access control";
        <http://rdfs.org/sioc/ns#has_container>
                <https://docs.linkeddatahub.com/reference/administration/>;
        <http://www.w3.org/ns/auth/acl#owner>
                <https://admin.linkeddatahub.com/acl/agents/0ab4a0f7-1ab0-4d0c-8efc-63a79a2e9a10/#this> .

<https://docs.linkeddatahub.com/reference/administration/acl/#content>
        a       <https://w3id.org/atomgraph/linkeddatahub#XHTML>;
        <http://www.w3.org/1999/02/22-rdf-syntax-ns#value>
                "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n    <p class=\"lead\">LinkedDataHub access control is based on the W3C <a href=\"https://www.w3.org/wiki/WebAccessControl\" target=\"_blank\">ACL ontology</a>.</p>\n    <div>\n        <h2 id=\"access-modes\">Access modes</h2>\n        <p>There are 4 access modes (classes of operation) that map to <a href=\"../../http-api/\">HTTP methods</a>:</p>\n        <table class=\"table table-striped\">\n            <thead>\n                <tr>\n                    <th>Mode</th>\n                    <th>Those allowed may</th>\n                    <th>HTTP method</th>\n                </tr>\n            </thead>\n            <tbody>\n                <tr>\n                    <th>Read</th>\n                    <td>read the contents (including querying it, etc)</td>\n                    <td><code>GET</code></td>\n                </tr>\n                <tr>\n                    <th>Write</th>\n                    <td>overwrite the contents (including deleting it, or modifying part of it)</td>\n                    <td><code>PUT</code>, <code>DELETE</code></td>\n                </tr>\n                <tr>\n                    <th>Append</th>\n                    <td>add information to [the end of] it but not remove information</td>\n                    <td><code>POST</code></td>\n                </tr>\n                <tr>\n                    <th>Control</th>\n                    <td>set the Access Control List for this themselves</td>\n                    <td></td>\n                </tr>\n            </tbody>\n        </table>\n    </div>\n    <div>\n        <h2 id=\"agents\">Agents</h2>\n        <p>An agent is a person or a software agent that can be authorized to have certain <a href=\"#access-modes\">modes\n            of access</a> to certain applications.</p>\n        <!--\n        <p>Each agent is associated with a <a href=\"#user-accounts\">user account</a>. The exception is the class\n            <code>foaf:Agent</code> as the class of all agents. This indicates that the given access is public. In this\n            case authentication is skipped.</p>\n        -->\n    </div>\n    <!--\n    <div>\n        <h2 id=\"user-accounts\">User accounts</h2>\n        <p>User account is a subclass of the <a href=\"http://rdfs.org/sioc/spec/#term_UserAccount\"><code>sioc:UserAccount</code></a>\n            class. An account is the actual instance that performs actions on the application\n            (<a href=\"../../data-model/documents/#manage\">manages documents</a>, <a href=\"../../../user-guide/import-data/import-csv-data/\">imports data</a> etc.). An\n            account always belongs to an <a href=\"#agents\">agent</a>.</p>\n    </div>\n    -->\n    <div>\n        <h2 id=\"groups\">Groups</h2>\n        <p>A group is a named group of <a href=\"#agents\">agents</a> to which an <a href=\"#authorizations\">authorization</a> can\n            be given. It is a subclass of the <a href=\"http://xmlns.com/foaf/spec/#term_Group\" target=\"_blank\"><code>foaf:Group</code></a>\n            class.</p>\n        <p>There are several default groups:</p>\n        <ul>\n            <li>owners</li>\n            <li>readers</li>\n            <li>writers</li>\n        </ul>\n        <div class=\"alert alert-info\">\n            <p>Only agents that belong to the owners group will have access to the administration application.<br></br>\n            Note that an agent being a member of one of the above groups does not automatically provide it with an\n                authorization. A valid authorization for the whole group has to be present.</p>\n        </div>\n    </div>\n    <div>\n        <h2 id=\"authorizations\">Authorizations</h2>\n        <p>An authorization explicitly grants access for an <a href=\"#agents\">agent</a> or a <a href=\"#groups\">group</a>\n            of agents to access a specific end-user application document or a <a href=\"../ontologies/#classes\">class</a>\n            of its documents.</p>\n        <p>An <a href=\"#agents\">agent</a> has to be authorized using the <a href=\"#access-modes\">Control</a> mode to be\n            able to login to the <a href=\"../../dataspace/#admin-apps\">administration application</a>.</p>\n        <p>Here are the default authorizations for groups and their respective access modes:</p>\n        <table class=\"table\">\n            <thead>\n                <tr>\n                    <th>Group</th>\n                    <th>Read access</th>\n                    <th>Write/append access</th>\n                    <th>Full control</th>\n                </tr>\n            </thead>\n            <tbody>\n                <tr>\n                    <th rowspan=\"2\">Owners</th>\n                    <td rowspan=\"2\"><a href=\"#access-modes\">Read</a></td>\n                    <td><a href=\"#access-modes\">Write</a></td>\n                    <td rowspan=\"2\"><a href=\"#access-modes\">Control</a></td>\n                </tr>\n                <tr>\n                    <td><a href=\"#access-modes\">Append</a></td>\n                </tr>\n                <tr>\n                    <th rowspan=\"2\">Writers</th>\n                    <td rowspan=\"2\"><a href=\"#access-modes\">Read</a></td>\n                    <td><a href=\"#access-modes\">Write</a></td>\n                    <td rowspan=\"2\"></td>\n                </tr>\n                <tr>\n                    <td><a href=\"#access-modes\">Append</a></td>\n                </tr>\n                <tr>\n                    <th>Readers</th>\n                    <td><a href=\"#access-modes\">Read</a></td>\n                    <td></td>\n                    <td></td>\n                </tr>\n            </tbody>\n        </table>\n        <p>Public access authorization allows access for non-authenticated agents.</p>\n        <div>\n            <h3 id=\"auth-requests\">Requests</h3>\n            <p>If access is denied due to missing authorization, the agent can ask for it by issuing a request to the application's\n            <a href=\"../../dataspace/#admin-apps\">owners</a>. It indicates the request URI and access mode in question.\n            The owners can then accept the request by creating an <a href=\"#authorizations\">authorization</a> with the provided information\n            (possibly extending the requested access to a <a href=\"#groups\">group</a> of agents or a <a href=\"../ontologies/#classes\">class of resources</a>),\n            or simply ignore it.</p>\n\n        </div>\n    </div>\n</div>"^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral> .
