Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sparql 询问是否存在所有指定值?_Sparql - Fatal编程技术网

Sparql 询问是否存在所有指定值?

Sparql 询问是否存在所有指定值?,sparql,Sparql,我在GraphDB中有这些三元组: prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> <http://example.com/greeting> a <http://example.com/word> ; rdfs:label "hello" . 健全性检查:此问题的答案为false PREFIX : <http://example.com/> PREFIX rdfs

我在GraphDB中有这些三元组:

prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> 

<http://example.com/greeting>
  a <http://example.com/word> ;
  rdfs:label "hello" .
健全性检查:此
问题的答案为
false

PREFIX  :     <http://example.com/>
PREFIX  rdfs: <http://www.w3.org/2000/01/rdf-schema#>

ASK
WHERE
{ VALUES (?l) { ("goodbye") }
    ?s  a                     :thing ;
        rdfs:label            ?l
  }
PREFIX  rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX  obo:  <http://purl.obolibrary.org/obo/>
PREFIX  turbo: <http://example.org/ontologies/>

ASK
WHERE
  { { GRAPH turbo:expanded_encounters
        { VALUES ( ?previousUriTextVal ?DiagSymbVal ) {
            ( "http://example.org/ontologies/5f62d61cee174283a4f875ccb8bb91a1" "J44.9" )
            ( "http://example.org/ontologies/820dd597229244ab853ed845dd740f1f" "602.9" )
            ( "http://example.org/ontologies/81fcbb5c5bd141c9bde7f23321648ff7" "I50.9" )
          }
          FILTER NOT EXISTS { ?NewEnc   rdf:type              obo:OGMS_0000097 ;
                                        turbo:previousUriText  ?previousUriTextVal ;
                                        obo:OBI_0000299       ?DiagCrid .
                              ?DiagCrid  rdf:type             turbo:DiagCrid ;
                                        obo:BFO_0000051       ?DiagSymb .
                              ?DiagSymb  rdf:type             turbo:EncounterDiagCodeSymbol ;
                                        turbo:thingLiteralValue  ?DiagSymbVal
                            }
        }
    }
  }
PREFIX  rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX  obo:  <http://purl.obolibrary.org/obo/>
PREFIX  turbo: <http://example.org/ontologies/>

ASK
WHERE
  { GRAPH turbo:expanded_encounters
      { FILTER ( ?count = 3 )
        { SELECT  (COUNT(DISTINCT ?NewEnc) AS ?count)
          WHERE
            { VALUES ( ?previousUriTextVal ?DiagSymbVal ) {
                ( "http://example.org/ontologies/5f62d61cee174283a4f875ccb8bb91a1" "J44.9" )
                ( "http://example.org/ontologies/820dd597229244ab853ed845dd740f1f" "602.9" )
                ( "http://example.org/ontologies/81fcbb5c5bd141c9bde7f23321648ff7" "I50.9" )
              }
              ?NewEnc   rdf:type              obo:OGMS_0000097 ;
                        turbo:previousUriText  ?previousUriTextVal ;
                        obo:OBI_0000299       ?DiagCrid .
              ?DiagCrid  rdf:type             turbo:DiagCrid ;
                        obo:BFO_0000051       ?DiagSymb .
              ?DiagSymb  rdf:type             turbo:EncounterDiagCodeSymbol ;
                        turbo:thingLiteralValue  ?DiagSymbVal
            }
        }
      }
  }
前缀:
前缀rdfs:
问
哪里
{VALUES(?l){(“再见”)}
这是一件事;
标签
}

我的团队正在开发工具,将有关医院记录的表格数据转换为RDF三元组,然后执行各种清理和聚合

  • 我已经开始了这个“答案”,写了一个带有样本数据的工作流程说明
  • 下面是@Joshua Taylor和@AKSW的建议的工作实现
表格数据首先转换为“快捷方式三元组”,这将实例化最少数量的类,并将所有文本值链接到这些类,即使这些文本值实际上是“更多关于”其他内容

这样的表格数据:

+-------+------------+----------+----------+
| EncID |  EncDate   | DiagCode | CodeType |
+-------+------------+----------+----------+
|   102 | 12/05/2015 | J44.9    | ICD-10   |
|   103 | 11/25/2015 | 602.9    | ICD-9    |
|   102 | 12/05/2015 | I50.9    | ICD-10   |
+-------+------------+----------+----------+
@prefix turbo: <http://purl.obolibrary.org/obo/> .
@prefix obo: <http://example.org/ontologies/> .

<http://example.org/ontologies/b9dc5b08-cf1b-465e-8773-4b19bfbcf803>
  a <http://purl.obolibrary.org/obo/OGMS_0000097> ;
  turbo:OBI_0000299 <http://example.org/ontologies/8a04f52f-22d2-4aab-bacf-d96e1c7fe900> ;
  obo:previousUriText "http://example.org/ontologies/5f62d61cee174283a4f875ccb8bb91a1" .

obo:8a04f52f-22d2-4aab-bacf-d96e1c7fe900
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:6738d8c0-8bb8-4078-8430-5e9294e5af15 .

obo:6738d8c0-8bb8-4078-8430-5e9294e5af15
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "J44.9" .

obo:d3a8a700-2eb9-420d-a863-d47462fa393c
  a turbo:OGMS_0000097 ;
  turbo:OBI_0000299 obo:c12acc26-6dbe-486d-9ae9-9f34c9561aea ;
  obo:previousUriText "http://example.org/ontologies/81fcbb5c5bd141c9bde7f23321648ff7" .

obo:c12acc26-6dbe-486d-9ae9-9f34c9561aea
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:3b784151-b369-4594-9ce3-285f5fe60850 .

obo:3b784151-b369-4594-9ce3-285f5fe60850
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "I50.9" .

obo:af0e949a-99e4-48cd-885b-7cb1aa3dd265
  a turbo:OGMS_0000097 ;
  turbo:OBI_0000299 obo:c2da52ec-7331-4011-b8f8-6fbf8b419708 ;
  obo:previousUriText "http://example.org/ontologies/820dd597229244ab853ed845dd740f1f" .

obo:c2da52ec-7331-4011-b8f8-6fbf8b419708
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:7f8399ef-5fcd-447c-80a4-18dfb160e99c .

obo:7f8399ef-5fcd-447c-80a4-18dfb160e99c
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "602.9" . 
首先变成这样的三元组(忽略EncDates和代码类型)。

前缀rdf:
前缀海外建筑运营管理局:
前缀turbo:
前缀xsd:
插入数据{
图涡轮:遭遇来自业力的业力{
turbo:5F62D61CE174283A4F875CCB8BB91A1 rdf:海外建筑运营管理局类型:OGMS_u0000097。
turbo:5f62d61cee174283a4f875ccb8bb91a1 turbo:ScEnc2DiagCode“J44.9”。
turbo:5F62D61CE174283A4F875CCB8BB91A1 turbo:ScEnc2DiagCodeRegText“ICD-10”。
turbo:5f62d61cee174283a4f875ccb8bb91a1 turbo:ScEnc2EncID“102”。
turbo:81fcbb5c5bd141c9bde7f23321648ff7 rdf:obo类型:OGMS_u0000097。
turbo:81fcbb5c5bd141c9bde7f23321648ff7 turbo:ScEnc2DiagCode“I50.9”。
turbo:81fcbb5c5bd141c9bde7f23321648ff7 turbo:ScEnc2DiagCodeRegText“ICD-10”。
turbo:81fcbb5c5bd141c9bde7f23321648ff7 turbo:ScEnc2EncID“102”。
turbo:820dd597229244ab853ed845dd740f1f rdf:obo类型:OGMS_u0000097。
turbo:820dd597229244ab853ed845dd740f1f turbo:ScEnc2DiagCode“602.9”。
turbo:820dd597229244ab853ed845dd740f1f turbo:ScEnc2DiagCodeRegText“ICD-9”。
turbo:820dd597229244ab853ed845dd740f1f turbo:ScEnc2EncID“103”。}
}
然后像这样展开

PREFIX  rdf:  <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX  obo:  <http://purl.obolibrary.org/obo/>
PREFIX  turbo: <http://example.org/ontologies/>

INSERT {
  GRAPH turbo:expanded_encounters {
    ?NewEnc rdf:type obo:OGMS_0000097 .
    ?NewEnc turbo:previousUriText ?previousUriText .
    ?NewEnc obo:OBI_0000299 ?DiagCrid .
    ?DiagCrid rdf:type turbo:DiagCrid .
    ?DiagCrid obo:BFO_0000051 ?DiagSymb .
    ?DiagSymb rdf:type turbo:EncounterDiagCodeSymbol .
    ?DiagSymb turbo:thingLiteralValue ?DiagSymbVal .
  }
}
WHERE
  { GRAPH turbo:encounters_from_karma
      { ?EncFromKarma
                  rdf:type              obo:OGMS_0000097 ;
                  turbo:ScEnc2DiagCode  ?DiagSymbVal
        BIND(str(?EncFromKarma) AS ?previousUriText)
        BIND(uri(concat("http://transformunify.org/ontologies/", struuid())) AS ?NewEnc)
        BIND(uri(concat("http://transformunify.org/ontologies/", struuid())) AS ?DiagCrid)
        BIND(uri(concat("http://transformunify.org/ontologies/", struuid())) AS ?DiagSymb)
      }
  }
前缀rdf:
前缀海外建筑运营管理局:
前缀turbo:
插入{
图turbo:扩展的_遭遇{
?NewEnc rdf:海外建筑运营管理局类型:OGMS_uu0000097。
?NewEnc turbo:previousUriText?previousUriText。
?新建海外建筑运营管理局:OBI_0000299?诊断。
?DiagCrid rdf:涡轮类型:DiagCrid。
?DiagCrid海外建筑运营管理局:BFO_u0000051?DiagSymb。
?DiagSymb rdf:涡轮类型:遇到AGCODESYMBOL。
?DiagSymb涡轮:thingLiteralValue?DiagSymbVal。
}
}
哪里
{图涡轮:遭遇来自业力的业力
{因果报应
rdf:海外建筑运营管理局类型:OGMS_0000097;
turbo:ScEnc2DiagCode?DiagSymbVal
绑定(str(?EncFromKarma)为之前的文本)
绑定(uri)(concat(“http://transformunify.org/ontologies/,struid())作为?NewEnc)
绑定(uri)(concat(“http://transformunify.org/ontologies/,struid())作为?DiagCrid)
绑定(uri)(concat(“http://transformunify.org/ontologies/,struid())作为?DiagSymb)
}
}
因此看起来是这样的:

+-------+------------+----------+----------+
| EncID |  EncDate   | DiagCode | CodeType |
+-------+------------+----------+----------+
|   102 | 12/05/2015 | J44.9    | ICD-10   |
|   103 | 11/25/2015 | 602.9    | ICD-9    |
|   102 | 12/05/2015 | I50.9    | ICD-10   |
+-------+------------+----------+----------+
@prefix turbo: <http://purl.obolibrary.org/obo/> .
@prefix obo: <http://example.org/ontologies/> .

<http://example.org/ontologies/b9dc5b08-cf1b-465e-8773-4b19bfbcf803>
  a <http://purl.obolibrary.org/obo/OGMS_0000097> ;
  turbo:OBI_0000299 <http://example.org/ontologies/8a04f52f-22d2-4aab-bacf-d96e1c7fe900> ;
  obo:previousUriText "http://example.org/ontologies/5f62d61cee174283a4f875ccb8bb91a1" .

obo:8a04f52f-22d2-4aab-bacf-d96e1c7fe900
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:6738d8c0-8bb8-4078-8430-5e9294e5af15 .

obo:6738d8c0-8bb8-4078-8430-5e9294e5af15
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "J44.9" .

obo:d3a8a700-2eb9-420d-a863-d47462fa393c
  a turbo:OGMS_0000097 ;
  turbo:OBI_0000299 obo:c12acc26-6dbe-486d-9ae9-9f34c9561aea ;
  obo:previousUriText "http://example.org/ontologies/81fcbb5c5bd141c9bde7f23321648ff7" .

obo:c12acc26-6dbe-486d-9ae9-9f34c9561aea
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:3b784151-b369-4594-9ce3-285f5fe60850 .

obo:3b784151-b369-4594-9ce3-285f5fe60850
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "I50.9" .

obo:af0e949a-99e4-48cd-885b-7cb1aa3dd265
  a turbo:OGMS_0000097 ;
  turbo:OBI_0000299 obo:c2da52ec-7331-4011-b8f8-6fbf8b419708 ;
  obo:previousUriText "http://example.org/ontologies/820dd597229244ab853ed845dd740f1f" .

obo:c2da52ec-7331-4011-b8f8-6fbf8b419708
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:7f8399ef-5fcd-447c-80a4-18dfb160e99c .

obo:7f8399ef-5fcd-447c-80a4-18dfb160e99c
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "602.9" . 
@前缀turbo:。
@前缀obo:。
A.
turbo:OBI_0000299;
海外建筑运营管理局:先前的“文本”http://example.org/ontologies/5f62d61cee174283a4f875ccb8bb91a1" .
海外建筑运营管理局:8a04f52f-22d2-4aab-bacf-d96e1c7fe900
海外建筑运营管理局:DiagCrid;
涡轮增压器:BFO_0000051海外建筑运营管理局:6738d8c0-8bb8-4078-8430-5e9294e5af15。
海外建筑运营管理局:6738d8c0-8bb8-4078-8430-5e9294e5af15
海外建筑运营管理局:遭遇AGCODESYMBOL;
海外建筑运营管理局:thingLiteralValue“J44.9”。
海外建筑运营管理局:d3a8a700-2eb9-420d-a863-d47462fa393c
涡轮增压器:OGMS_u0000097;
turbo:OBI_0000299海外建筑运营管理局:C12AC26-6dbe-486d-9ae9-9f34c9561aea;
海外建筑运营管理局:先前的“文本”http://example.org/ontologies/81fcbb5c5bd141c9bde7f23321648ff7" .
海外建筑运营管理局:C12AC26-6dbe-486d-9ae9-9f34c9561aea
海外建筑运营管理局:DiagCrid;
turbo:BFO_0000051海外建筑运营管理局:3b784151-b369-4594-9ce3-285f5fe60850。
海外建筑运营管理局:3b784151-b369-4594-9ce3-285f5fe60850
海外建筑运营管理局:遭遇AGCODESYMBOL;
海外建筑运营管理局:thingLiteralValue“I50.9”。
海外建筑运营管理局:af0e949a-99e4-48cd-885b-7cb1aa3dd265
涡轮增压器:OGMS_u0000097;
turbo:OBI_0000299海外建筑运营管理局:c2da52ec-7331-4011-b8f8-6fbf8b419708;
海外建筑运营管理局:先前的“文本”http://example.org/ontologies/820dd597229244ab853ed845dd740f1f" .
海外建筑运营管理局:c2da52ec-7331-4011-b8f8-6fbf8b419708
海外建筑运营管理局:DiagCrid;
涡轮增压器:BFO_0000051海外建筑运营管理局:7f8399ef-5fcd-447c-80a4-18dfb160e99c。
海外建筑运营管理局:7f8399ef-5fcd-447c-80a4-18dfb160e99c
海外建筑运营管理局:遭遇AGCODESYMBOL;
海外建筑运营管理局:thingLiteralValue“602.9”。
最后,我可以根据@Joshua Taylor或@AKSW:

+-------+------------+----------+----------+
| EncID |  EncDate   | DiagCode | CodeType |
+-------+------------+----------+----------+
|   102 | 12/05/2015 | J44.9    | ICD-10   |
|   103 | 11/25/2015 | 602.9    | ICD-9    |
|   102 | 12/05/2015 | I50.9    | ICD-10   |
+-------+------------+----------+----------+
@prefix turbo: <http://purl.obolibrary.org/obo/> .
@prefix obo: <http://example.org/ontologies/> .

<http://example.org/ontologies/b9dc5b08-cf1b-465e-8773-4b19bfbcf803>
  a <http://purl.obolibrary.org/obo/OGMS_0000097> ;
  turbo:OBI_0000299 <http://example.org/ontologies/8a04f52f-22d2-4aab-bacf-d96e1c7fe900> ;
  obo:previousUriText "http://example.org/ontologies/5f62d61cee174283a4f875ccb8bb91a1" .

obo:8a04f52f-22d2-4aab-bacf-d96e1c7fe900
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:6738d8c0-8bb8-4078-8430-5e9294e5af15 .

obo:6738d8c0-8bb8-4078-8430-5e9294e5af15
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "J44.9" .

obo:d3a8a700-2eb9-420d-a863-d47462fa393c
  a turbo:OGMS_0000097 ;
  turbo:OBI_0000299 obo:c12acc26-6dbe-486d-9ae9-9f34c9561aea ;
  obo:previousUriText "http://example.org/ontologies/81fcbb5c5bd141c9bde7f23321648ff7" .

obo:c12acc26-6dbe-486d-9ae9-9f34c9561aea
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:3b784151-b369-4594-9ce3-285f5fe60850 .

obo:3b784151-b369-4594-9ce3-285f5fe60850
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "I50.9" .

obo:af0e949a-99e4-48cd-885b-7cb1aa3dd265
  a turbo:OGMS_0000097 ;
  turbo:OBI_0000299 obo:c2da52ec-7331-4011-b8f8-6fbf8b419708 ;
  obo:previousUriText "http://example.org/ontologies/820dd597229244ab853ed845dd740f1f" .

obo:c2da52ec-7331-4011-b8f8-6fbf8b419708
  a obo:DiagCrid ;
  turbo:BFO_0000051 obo:7f8399ef-5fcd-447c-80a4-18dfb160e99c .

obo:7f8399ef-5fcd-447c-80a4-18dfb160e99c
  a obo:EncounterDiagCodeSymbol ;
  obo:thingLiteralValue "602.9" . 
@Joshua Taylor

前缀rdf:
前缀海外建筑运营管理局:
前缀turbo:
问
哪里
{{GRAPH turbo:扩展的_遭遇
{值(?以前的UritexVal?DiagSymbVal){
( "http://example.org/ontologies/5f62d61cee174283a4f875ccb8bb91a1“J44.9”)
( "http://example.org/ontologies/820dd597229244ab853ed845dd740f1f" "602.9" )
( "http://example.org/ontologies/81fcbb5c5bd141c9bde7f23321648ff7“I50.9”)
}
筛选器不存在{NewEnc rdf:type obo:OGMS_0000097;
turbo:previousUriText?previousUriTextVal;
海外建筑运营管理局:OBI_0000299?DiagCrid。
?DiagCrid rdf:涡轮类型:DiagCrid;
海外建筑运营管理局:BFO_u0000051?诊断码。
?DiagSymb rdf:涡轮类型:遇到AGCODESYMBOL;
涡轮:thingLiteralValue?DiagSymbVal
}
}
}
}
@AKSW

前缀rdf:
前缀海外建筑运营管理局:
前缀turbo:
问
哪里
{GRAPH turbo:expanded_
{过滤器(?计数=3)
{选择(COUNT(DISTINCT?NewEnc)作为?COUNT)
哪里
{值(?以前的UritexVal?DiagSymbVal){