私は SPARQL 1.1 の初心者です。以下のような N-Triples ファイルがあります。Work_RVU
(最後の属性) と関連するコード (4 番目の属性)の最大値を見つけたい。
<file://PPRVU12.xlsx/69540> <http://www.w3.org/1999/02/22-rdf-syntax-ns?#type> <http://cms.gov/HCPCS> .
<file://PPRVU12.xlsx/69540> <http://www.w3.org/2000/01/rdf-schema#label> "Remove ear lesion" .
<file://PPRVU12.xlsx/69540> <file://PPRVU12.xlsx#Status_Code> "A" .
<file://PPRVU12.xlsx/69540> <file://PPRVU12.xlsx#Code> "69540" .
<file://PPRVU12.xlsx/69540> <file://PPRVU12.xlsx#Work_RVU> "1.25" .
<file://PPRVU12.xlsx/69550> <http://www.w3.org/1999/02/22-rdf-syntax-ns?#type> <http://cms.gov/HCPCS> .
<file://PPRVU12.xlsx/69550> <http://www.w3.org/2000/01/rdf-schema#label> "Remove ear lesion" .
<file://PPRVU12.xlsx/69550> <file://PPRVU12.xlsx#Status_Code> "A" .
<file://PPRVU12.xlsx/69550> <file://PPRVU12.xlsx#Code> "69550" .
<file://PPRVU12.xlsx/69550> <file://PPRVU12.xlsx#Work_RVU> "11.15" .
<file://PPRVU12.xlsx/69552> <http://www.w3.org/1999/02/22-rdf-syntax-ns?#type> <http://cms.gov/HCPCS> .
<file://PPRVU12.xlsx/69552> <http://www.w3.org/2000/01/rdf-schema#label> "Remove ear lesion" .
<file://PPRVU12.xlsx/69552> <file://PPRVU12.xlsx#Status_Code> "A" .
<file://PPRVU12.xlsx/69552> <file://PPRVU12.xlsx#Code> "69552" .
<file://PPRVU12.xlsx/69552> <file://PPRVU12.xlsx#Work_RVU> "19.81" .
最大 RVU は 19.81 で、コードは「69552」である必要があります。19.81 を出力することはできますが、常に「69540」を出力します。これは、毎回最初に遭遇したコードを常に選択することを意味します。
私のSPARQLコードは以下の通りです:
PREFIX pre: <file://PPRVU12.xlsx#>
SELECT ?code (MAX (?val) AS ?Max_RVU)
WHERE{
?code pre:Work_RVU ?val .
}
このクエリに誤りはありますか? 別のクエリも試しましたが、
PREFIX pre: <file://PPRVU12.xlsx#>
PREFIX head: <http://www.w3.org/1999/02/22-rdf-syntax-ns?#>
SELECT ?code (MAX (?val) AS ?Max_RVU)
WHERE{
?d head:type <http://cms.gov/HCPCS> .
?d pre:Code ?code .
?d pre:Work_RVU ?val .
}
しかし、結果は同じでした。