nodeSolidServer / nodeSolidServer/node-solid-server

Deletion of decimals fail with a 409

未關閉
#1,519 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

主要語言
JavaScript
星號
1.8k
分支
308
PR 合併指標
30 天內沒有已合併 PR

描述

When I write the following data to my Pod:

@prefix : <#>.
@prefix schem: <http://schema.org/>.

:160581889284507796464006133086
a schem:MonetaryAmount; schem:amount 1.0; schem:currency "USD".

Written using the following request:

curl 'https://vincent-test.solidcommunity.net/private/tmp/tripledoc-bug.ttl' -X PATCH -H 'Content-Type: application/sparql-update' --data-raw $' INSERT DATA {<https://vincent-test.solidcommunity.net/private/tmp/tripledoc-bug.ttl#160581889284507796464006133086> a <http://schema.org/MonetaryAmount>;\n    <http://schema.org/currency> "USD";\n    <http://schema.org/amount> "1"^^<http://www.w3.org/2001/XMLSchema#decimal>.\n};'

As far as I can tell I should be able to delete that data with the following PATCH:

DELETE DATA {<https://vincent-test.solidcommunity.net/private/tmp/tripledoc-bug.ttl#160581889284507796464006133086> a <http://schema.org/MonetaryAmount>;
    <http://schema.org/amount> "1.0"^^<http://www.w3.org/2001/XMLSchema#decimal>;
    <http://schema.org/currency> "USD".}; 

However, that results in the following response:

The patch could not be applied. Could not find to delete: https://vincent-test.solidcommunity.net/private/tmp/tripledoc-bug.ttl#160581889284507796464006133086 http://schema.org/amount "1.0"^^http://www.w3.org/2001/XMLSchema#decimal .

This appears to happen specifically with decimals. (Though it seems to be the problem has a similar root cause to https://github.com/solid/node-solid-server/issues/1468, but for decimals rather than booleans.)

See this sandbox for the reproduction (log in with a solidcommunity.net account): https://codesandbox.io/s/floral-glitter-jfejz?file=/src/index.ts

(Originally reported by @abigpotostew against Tripledoc.)

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

研究方向

首先,使用 issue 中的 curl 請求重現十進位 DELETE DATA 失敗,並將其與前一個 INSERT DATA 請求進行比較。追蹤伺服器對十進位 RDF 詞項的 PATCH 處理;當請求使用等效的 "1.0"^^xsd:decimal 值時,能夠成功刪除已儲存的 "1"^^xsd:decimal,即表示完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
javascript, node.js
領域
backend
Issue 類型
缺陷
難度
4/5
預估耗時
3-5 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。