nodeSolidServer / nodeSolidServer/node-solid-server
Globbing, sorting and paging
まだ誰も着手していません。
- 主要言語
- JavaScript
- スター
- 1.8k
- フォーク
- 308
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Would it be possible to add query parameters for sorting and paging when requesting a "globbing" resource?
When presenting a list of items (blog comments, chat entries, pets, whatever), it is very common to let the server do paging and sorting to improve efficiency for browsing through large amounts of data (as compared to loading all N-thousand Turtle statements and throw away 99% of them in order to show the top 1%).
It could work as follows:
-
A globbing request like "/items/*" normally returns the Turtle content of all resources stored under "/items". Each of theses resources contains a set of Turtle statements.
-
One URL parameter, like for instance "orderBy", could define a predicate identifier (or multiple) to order the resources by.
-
Other URL parameters, like for instance "count" and "offset" could define which "slice" of the sorted resources to return.
-
As a result, only the content of the first "count" resources, from index "offset", when ordering the resources by the value of the predicates in the resources by "orderBy", would be returned.
Example, get the first 10 items ordered by the value of http://schema.org/name: /items/*?orderBy=https%3A%2F%2Fschema.org%2Fname&offset=0&count=10
The "orderBy" predicate is only evaluated for statements where the subject is identical to the resource URL.
I kind of assume this suggestion is covered in existing work on linked data.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
この issue ではファイル、テスト、エントリーポイントが指定されていません。まず /items/* のような globbing リクエストがどのように処理され、クエリパラメーターがどのように解析されるかを追跡し、次にサブジェクトの述語によるソートと offset/count ページングをどのように仕様化してテストすべきかを判断してください。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript, node.js
- 領域
- api, backend
- issue の種類
- 機能追加
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 25/100