sparql-examples

A set of SPARQL examples that are used in different TGX resources

View the Project on GitHub BiGCAT-UM/sparql-examples

052

rq turtle/ttl

Clinical-trial aspect: data

Use at

PREFIX p: <http://www.wikidata.org/prop/>
PREFIX ps: <http://www.wikidata.org/prop/statement/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX target: <http://www.wikidata.org/entity/Q64651365>

SELECT ?description ?value ?valueUrl
WHERE {
  BIND(target: AS ?trial)
  {
    BIND(1 AS ?order)
    BIND("Title" AS ?description)
    ?trial wdt:P1476 ?value .
  }
  UNION
  {
    BIND(10 AS ?order)
    BIND("Number of participants" AS ?description)
    ?trial wdt:P1132 ?value .
  }
  UNION
  {
    BIND(11 AS ?order)
    BIND("Clinical trial phase" AS ?description)
    ?trial wdt:P6099 ?iri .

    BIND(SUBSTR(STR(?iri), 32) AS ?q) 
    ?iri rdfs:label ?value_string . 
    FILTER (LANG(?value_string) = 'en')
    BIND(COALESCE(?value_string, ?q) AS ?value)
    BIND(CONCAT("../topic/", ?q) AS ?valueUrl)
  }
  UNION
  {
    BIND(12 AS ?order)
    BIND("Medical condition" AS ?description)
    ?trial wdt:P1050 ?iri .

    BIND(SUBSTR(STR(?iri), 32) AS ?q) 
    ?iri rdfs:label ?value_string . 
    FILTER (LANG(?value_string) = 'en')
    BIND(COALESCE(?value_string, ?q) AS ?value)
    BIND(CONCAT("../disease/", ?q) AS ?valueUrl)
  }
  UNION
  {
    BIND(13 AS ?order)
    BIND("Research intervention" AS ?description)
    ?trial wdt:P4844 ?iri .

    BIND(SUBSTR(STR(?iri), 32) AS ?q) 
    ?iri rdfs:label ?value_string . 
    FILTER (LANG(?value_string) = 'en')
    BIND(COALESCE(?value_string, ?q) AS ?value)
    BIND(CONCAT("../topic/", ?q) AS ?valueUrl)
  }
  UNION
  {
    BIND(20 AS ?order)
    BIND("Sponsor" AS ?description)
    ?trial wdt:P859 ?iri .

    BIND(SUBSTR(STR(?iri), 32) AS ?q) 
    ?iri rdfs:label ?value_string . 
    FILTER (LANG(?value_string) = 'en')
    BIND(COALESCE(?value_string, ?q) AS ?value)
    BIND(CONCAT("../sponsor/", ?q) AS ?valueUrl)
  }

  UNION
  {
    BIND(100 AS ?order)
    BIND("ClinicalTrials.gov" AS ?description)
    ?trial wdt:P3098 ?value_ .
    BIND(CONCAT(?value_, " ↗") AS ?value)
    BIND(CONCAT("https://clinicaltrials.gov/show/", ?value_) AS ?valueUrl)
  }

  UNION
  {
    BIND(101 AS ?order)
    BIND("ClinWiki" AS ?description)
    ?trial wdt:P3098 ?value_ .
    BIND(CONCAT(?value_, " ↗") AS ?value)
    BIND(CONCAT("https://www.clinwiki.org/study/", ?value_) AS ?valueUrl)
  }

  UNION
  {
    BIND(103 AS ?order)
    BIND("OpenTrials" AS ?description)
    ?trial wdt:P6220 ?value_ .
    BIND(CONCAT(?value_, " ↗") AS ?value)
    BIND(CONCAT("https://explorer.opentrials.net/trials/", ?value_) AS ?valueUrl)
  }

} 
ORDER BY ?order
graph TD
classDef projected fill:lightgreen;
classDef literal fill:orange;
classDef iri fill:yellow;
  v10("?description"):::projected 
  v6("?iri")
  v10("?order")
  v9("?q")
  v2("?trial")
  v10("?value"):::projected 
  v10("?valueUrl"):::projected 
  v9("?value_")
  v5("?value_string")
  bind0[/"http://www.wikidata.org/entity/Q64651365"/]
  bind0 --as--o v2
  subgraph union0[" Union "]
  subgraph union0l[" "]
    style union0l fill:#abf,stroke-dasharray: 3 3;
    subgraph union1[" Union "]
    subgraph union1l[" "]
      style union1l fill:#abf,stroke-dasharray: 3 3;
      subgraph union2[" Union "]
      subgraph union2l[" "]
        style union2l fill:#abf,stroke-dasharray: 3 3;
        subgraph union3[" Union "]
        subgraph union3l[" "]
          style union3l fill:#abf,stroke-dasharray: 3 3;
          subgraph union4[" Union "]
          subgraph union4l[" "]
            style union4l fill:#abf,stroke-dasharray: 3 3;
            subgraph union5[" Union "]
            subgraph union5l[" "]
              style union5l fill:#abf,stroke-dasharray: 3 3;
              subgraph union6[" Union "]
              subgraph union6l[" "]
                style union6l fill:#abf,stroke-dasharray: 3 3;
                subgraph union7[" Union "]
                subgraph union7l[" "]
                  style union7l fill:#abf,stroke-dasharray: 3 3;
                  bind1[/"'103^^xsd:integer'"/]
                  bind1 --as--o v10
                  bind2[/"'OpenTrials'"/]
                  bind2 --as--o v10
                  v2 --"p:direct/P6220"-->  v9
                  bind3[/"concat(?value_,' ↗')"/]
                  v9 --o bind3
                  bind3 --as--o v10
                  bind4[/"concat('https://explorer.opentrials.net/trials/',?value_)"/]
                  v9 --o bind4
                  bind4 --as--o v10
                end
                subgraph union7r[" "]
                  style union7r fill:#abf,stroke-dasharray: 3 3;
                  bind5[/"'101^^xsd:integer'"/]
                  bind5 --as--o v10
                  bind6[/"'ClinWiki'"/]
                  bind6 --as--o v10
                  v2 --"p:direct/P3098"-->  v9
                  bind7[/"concat(?value_,' ↗')"/]
                  v9 --o bind7
                  bind7 --as--o v10
                  bind8[/"concat('https://www.clinwiki.org/study/',?value_)"/]
                  v9 --o bind8
                  bind8 --as--o v10
                end
                union7r <== or ==> union7l
                end
              end
              subgraph union6r[" "]
                style union6r fill:#abf,stroke-dasharray: 3 3;
                bind9[/"'100^^xsd:integer'"/]
                bind9 --as--o v10
                bind10[/"'ClinicalTrials.gov'"/]
                bind10 --as--o v10
                v2 --"p:direct/P3098"-->  v9
                bind11[/"concat(?value_,' ↗')"/]
                v9 --o bind11
                bind11 --as--o v10
                bind12[/"concat('https://clinicaltrials.gov/show/',?value_)"/]
                v9 --o bind12
                bind12 --as--o v10
              end
              union6r <== or ==> union6l
              end
            end
            subgraph union5r[" "]
              style union5r fill:#abf,stroke-dasharray: 3 3;
              f13[["?value_string = 'en'"]]
              f13 --> v5
              bind14[/"'20^^xsd:integer'"/]
              bind14 --as--o v10
              bind15[/"'Sponsor'"/]
              bind15 --as--o v10
              v2 --"p:direct/P859"-->  v6
              bind16[/"substring(str(?iri),'32^^xsd:integer')"/]
              v6 --o bind16
              bind16 --as--o v9
              v6 --"rdfs:label"-->  v5
              bind17[/"?value_string?q"/]
              v5 --o bind17
              v9 --o bind17
              bind17 --as--o v10
              bind18[/"concat('../sponsor/',?q)"/]
              v9 --o bind18
              bind18 --as--o v10
            end
            union5r <== or ==> union5l
            end
          end
          subgraph union4r[" "]
            style union4r fill:#abf,stroke-dasharray: 3 3;
            f19[["?value_string = 'en'"]]
            f19 --> v5
            bind20[/"'13^^xsd:integer'"/]
            bind20 --as--o v10
            bind21[/"'Research intervention'"/]
            bind21 --as--o v10
            v2 --"p:direct/P4844"-->  v6
            bind22[/"substring(str(?iri),'32^^xsd:integer')"/]
            v6 --o bind22
            bind22 --as--o v9
            v6 --"rdfs:label"-->  v5
            bind23[/"?value_string?q"/]
            v5 --o bind23
            v9 --o bind23
            bind23 --as--o v10
            bind24[/"concat('../topic/',?q)"/]
            v9 --o bind24
            bind24 --as--o v10
          end
          union4r <== or ==> union4l
          end
        end
        subgraph union3r[" "]
          style union3r fill:#abf,stroke-dasharray: 3 3;
          f25[["?value_string = 'en'"]]
          f25 --> v5
          bind26[/"'12^^xsd:integer'"/]
          bind26 --as--o v10
          bind27[/"'Medical condition'"/]
          bind27 --as--o v10
          v2 --"p:direct/P1050"-->  v6
          bind28[/"substring(str(?iri),'32^^xsd:integer')"/]
          v6 --o bind28
          bind28 --as--o v9
          v6 --"rdfs:label"-->  v5
          bind29[/"?value_string?q"/]
          v5 --o bind29
          v9 --o bind29
          bind29 --as--o v10
          bind30[/"concat('../disease/',?q)"/]
          v9 --o bind30
          bind30 --as--o v10
        end
        union3r <== or ==> union3l
        end
      end
      subgraph union2r[" "]
        style union2r fill:#abf,stroke-dasharray: 3 3;
        f31[["?value_string = 'en'"]]
        f31 --> v5
        bind32[/"'11^^xsd:integer'"/]
        bind32 --as--o v10
        bind33[/"'Clinical trial phase'"/]
        bind33 --as--o v10
        v2 --"p:direct/P6099"-->  v6
        bind34[/"substring(str(?iri),'32^^xsd:integer')"/]
        v6 --o bind34
        bind34 --as--o v9
        v6 --"rdfs:label"-->  v5
        bind35[/"?value_string?q"/]
        v5 --o bind35
        v9 --o bind35
        bind35 --as--o v10
        bind36[/"concat('../topic/',?q)"/]
        v9 --o bind36
        bind36 --as--o v10
      end
      union2r <== or ==> union2l
      end
    end
    subgraph union1r[" "]
      style union1r fill:#abf,stroke-dasharray: 3 3;
      bind37[/"'10^^xsd:integer'"/]
      bind37 --as--o v10
      bind38[/"'Number of participants'"/]
      bind38 --as--o v10
      v2 --"p:direct/P1132"-->  v10
    end
    union1r <== or ==> union1l
    end
  end
  subgraph union0r[" "]
    style union0r fill:#abf,stroke-dasharray: 3 3;
    bind39[/"'1^^xsd:integer'"/]
    bind39 --as--o v10
    bind40[/"'Title'"/]
    bind40 --as--o v10
    v2 --"p:direct/P1476"-->  v10
  end
  union0r <== or ==> union0l
  end