Skip to content

Commit 233787b

Browse files
committed
rename TypeIndexService to TypeCatalogService
1 parent b862890 commit 233787b

1 file changed

Lines changed: 14 additions & 14 deletions

File tree

lws10-core/Discovery.html

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -142,10 +142,10 @@ <h4>Storage Description Representation</h4>
142142

143143
</section>
144144

145-
<section id="type-index-service">
146-
  <h3>Type Index and Type Search Services</h3>
145+
<section id="type-catalog-service">
146+
  <h3>Type Catalog and Type Search Services</h3>
147147
  <p>
148-
    The <code>TypeIndexService</code> provides a server-managed discovery mechanism to query the distinct resource types available within a storage, while the <code>TypeSearchService</code> allows clients to retrieve the specific resource or container URIs matching those types.
148+
    The <code>TypeCatalogService</code> provides a server-managed discovery mechanism to query the distinct resource types available within a storage, while the <code>TypeSearchService</code> allows clients to retrieve the specific resource or container URIs matching those types.
149149
  </p>
150150
<p>
151151
    To prevent inadvertent or malicious corruption by clients, these services are strictly populated and managed by the server. To mitigate security and performance risks associated with deep-parsing arbitrary resource bodies, servers MUST NOT be required to parse resource content to discover types. Instead, servers SHOULD derive resource types from HTTP <code>Link</code> headers provided by the client during resource creation or modification, combined with the server's intrinsic knowledge of the resource's state (such as native LWS classes like <code>https://www.w3.org/ns/lws#Container</code>).
@@ -154,25 +154,25 @@ <h4>Storage Description Representation</h4>
154154
    Because servers are not required to parse the resource body, the Type Search Service relies heavily on the types explicitly declared via HTTP headers or managed by the server. If a client includes a type exclusively within a resource's internal graph but fails to provide the corresponding <code>Link</code> header, that type may not be discoverable via these services.
155155
  </p>
156156
  <p>
157-
    A server that implements these services MUST advertise the endpoints in the storage description resource using the <code>typeIndexService</code> and <code>typeSearchService</code> properties.
157+
    A server that implements these services MUST advertise the endpoints in the storage description resource using the <code>typeCatalogService</code> and <code>typeSearchService</code> properties.
158158
  </p>
159159
  <pre class="example" title="Services advertised in storage description">
160160
{
161161
  "@context": "https://www.w3.org/ns/lws/v1",
162162
  "id": "https://example.org/storage/alice/",
163163
  "type": "StorageDescription",
164-
  "typeIndexService": "https://example.org/types/index",
164+
  "typeCatalogService": "https://example.org/types/catalog",
165165
  "typeSearchService": "https://example.org/types/search"
166166
}
167167
  </pre>
168168

169169
  <section>
170-
    <h4>GET [typeIndexService]</h4>
170+
    <h4>GET [typeCatalogService]</h4>
171171
    <p>Returns <code>application/lws+json</code>:</p>
172172
    <pre class="example">
173173
{
174174
  "@context": "https://www.w3.org/ns/lws/v1",
175-
  "type": "TypeIndex",
175+
  "type": "TypeCatalog",
176176
  "totalItems": 142,
177177
  "items": [
178178
    { "type": "https://schema.org/Person" },
@@ -182,7 +182,7 @@ <h4>Storage Description Representation</h4>
182182
  "next": "..."
183183
}
184184
    </pre>
185-
    <p>Returns a paginated <code>TypeIndex</code> following standard LWS pagination. It lists the unique types of resources that currently exist within the storage and that the authenticated user is authorized to see. This endpoint accepts no query parameters.</p>
185+
    <p>Returns a paginated <code>TypeCatalog</code> following standard LWS pagination. It lists the unique types of resources that currently exist within the storage and that the authenticated user is authorized to see. This endpoint accepts no query parameters.</p>
186186
  </section>
187187

188188
  <section>
@@ -212,29 +212,29 @@ <h4>Storage Description Representation</h4>
212212
  <section>
213213
    <h4>Security and Authorization</h4>
214214
    <p>
215-
      Servers MUST enforce authorization per access grants. Responses to GET/POST on <code>typeIndexService</code> or <code>typeSearchService</code> include only types and resource URIs that the authenticated client is explicitly authorized to read. 
215+
      Servers MUST enforce authorization per access grants. Responses to GET/POST on <code>typeCatalogService</code> or <code>typeSearchService</code> include only types and resource URIs that the authenticated client is explicitly authorized to read. 
216216
    </p>
217217
    <p>
218-
      Unauthorized entries MUST be omitted entirely. A client must not be able to discover the existence of a specific resource instance, or that a specific type exists in the storage at all, if they do not have the required access grants. This implicit filtering yields a dynamically generated, client-specific type index and search result.
218+
      Unauthorized entries MUST be omitted entirely. A client must not be able to discover the existence of a specific resource instance, or that a specific type exists in the storage at all, if they do not have the required access grants. This implicit filtering yields a dynamically generated, client-specific type catalog and search result.
219219
    </p>
220220
  </section>
221221

222222
  <section>
223223
    <h4>Non-Normative Examples</h4>
224-
    <pre class="example" title="Example 1: GET TypeIndex (Discovering available types)">
224+
    <pre class="example" title="Example 1: GET TypeCatalog (Discovering available types)">
225225
Request
226-
GET /types/index
226+
GET /types/catalog
227227

228228
Response
229229
{
230230
  "@context": "https://www.w3.org/ns/lws/v1",
231-
  "type": "TypeIndex",
231+
  "type": "TypeCatalog",
232232
  "totalItems": 142,
233233
  "items": [
234234
    { "type": "https://schema.org/Person" },
235235
    { "type": "https://schema.org/Event" }
236236
  ],
237-
  "next": "https://example.org/types/index?page=2"
237+
  "next": "https://example.org/types/catalog?page=2"
238238
}
239239
    </pre>
240240

0 commit comments

Comments
 (0)