query-5ee0e78b24b56059c138939ed14ed24f

rq turtle/ttl

Alles von einem Item

Use at

PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX schema: <http://schema.org/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX entity: <http://www.wikidata.org/entity/>

#  In addition to the original query this one comes with some advantages:
#  - You will get only literals as results, (even if the values are stored as IRI in wikibase)
#  - That means you will also get properties as birth date, alphanumeric identifier and so on.
#  - The list is ordered numerically by property number. (So P19 comes before P100) 
#  - All label, altLabel and description in a given Language are included.
#  You may open a separate column ?valUrl if you need also the IRI
#
#  Please advise, if there is an option to put the Q-Number  and/or the Language 
#  code into a runtime variable. 

SELECT ?propNumber ?propLabel ?val
WHERE
{

    # NAME
    {   BIND(entity:Q1697056 AS ?valUrl) .
        BIND("N/A" AS ?propUrl ) .
        BIND("Name"@de AS ?propLabel ) .
       entity:Q1697056 rdfs:label ?val .

        FILTER (LANG(?val) = "de") 
    }
    UNION
    {   # alle Labels
        BIND(entity:Q1697056 AS ?valUrl) .

        BIND("AltLabel"@de AS ?propLabel ) .
        optional{entity:Q42 skos:altLabel ?val}.
        FILTER (LANG(?val) = "de") 
    }
    UNION
    {   # Description
        BIND(entity:Q1697056 AS ?valUrl) .

        BIND("Beschreibung"@de AS ?propLabel ) .
        optional{entity:Q1697056 schema:description ?val}.
        FILTER (LANG(?val) = "de") 
    }
    UNION
    {   # komplexere Datentypen (Zeit, Adresse)
        entity:Q1697056 ?propUrl ?valUrl .
        ?property ?ref ?propUrl .
        ?property rdf:type wikibase:Property .
        ?property rdfs:label ?propLabel.
        FILTER (lang(?propLabel) = 'de' )
        filter  isliteral(?valUrl) 
        BIND(?valUrl AS ?val)
    }
    UNION
    {   # einfache Datentypen (Text)
         entity:Q1697056 ?propUrl ?valUrl .
        ?property ?ref ?propUrl .
        ?property rdf:type wikibase:Property .
        ?property rdfs:label ?propLabel.
        FILTER (lang(?propLabel) = 'de' ) 
        filter  isIRI(?valUrl) 
        ?valUrl rdfs:label ?valLabel 
        FILTER (LANG(?valLabel) = "de") 
         BIND(CONCAT(?valLabel) AS ?val)
    }
        BIND( SUBSTR(str(?propUrl),38, 250) AS ?propNumber)
}
ORDER BY xsd:integer(?propNumber)

Query found at

graph TD classDef projected fill:lightgreen; classDef literal fill:orange; classDef iri fill:yellow; v6("?propLabel"):::projected v9("?propNumber"):::projected v4("?propUrl") v6("?property") v7("?ref") v9("?val"):::projected v8("?valLabel") v6("?valUrl") c8(["wikibase:Property"]):::iri c4([http://www.wikidata.org/entity/Q42]):::iri c2([http://www.wikidata.org/entity/Q1697056]):::iri 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; f0[["?valLabel = 'de'"]] f0 --> v8 f1[["isIRI(?valUrl)"]] f1 --> v6 f2[["?propLabel = 'de'"]] f2 --> v6 c2 -->v4--> v6 v6 -->v7--> v4 v6 --"a"--> c8 v6 --"rdfs:label"--> v6 v6 --"rdfs:label"--> v8 bind3[/"concat(?valLabel)"/] v8 --o bind3 bind3 --as--o v9 end subgraph union3r[" "] style union3r fill:#abf,stroke-dasharray: 3 3; f4[["isLiteral(?valUrl)"]] f4 --> v6 f5[["?propLabel = 'de'"]] f5 --> v6 c2 -->v4--> v6 v6 -->v7--> v4 v6 --"a"--> c8 v6 --"rdfs:label"--> v6 bind6[/"?valUrl"/] v6 --o bind6 bind6 --as--o v9 end union3r <== or ==> union3l end end subgraph union2r[" "] style union2r fill:#abf,stroke-dasharray: 3 3; f7[["?val = 'de'"]] f7 --> v9 bind8[/"http://www.wikidata.org/entity/Q1697056"/] bind8 --as--o v6 bind9[/"sBeschreibung^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#langString>'"/] bind9 --as--o v6 subgraph optional0["(optional)"] style optional0 fill:#bbf,stroke-dasharray: 5 5; c2 -."schema:description".-> v9 end end union2r <== or ==> union2l end end subgraph union1r[" "] style union1r fill:#abf,stroke-dasharray: 3 3; f10[["?val = 'de'"]] f10 --> v9 bind11[/"http://www.wikidata.org/entity/Q1697056"/] bind11 --as--o v6 bind12[/"sAltLabel^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#langString>'"/] bind12 --as--o v6 subgraph optional1["(optional)"] style optional1 fill:#bbf,stroke-dasharray: 5 5; c4 -."skos:altLabel".-> v9 end end union1r <== or ==> union1l end end subgraph union0r[" "] style union0r fill:#abf,stroke-dasharray: 3 3; f13[["?val = 'de'"]] f13 --> v9 bind14[/"http://www.wikidata.org/entity/Q1697056"/] bind14 --as--o v6 bind15[/"'N/A'"/] bind15 --as--o v4 bind16[/"sName^^<http://www.w3.org/1999/02/22-rdf-syntax-ns#langString>'"/] bind16 --as--o v6 c2 --"rdfs:label"--> v9 end union0r <== or ==> union0l end bind17[/"substring(str(?propUrl),'38^^xsd:integer','250^^xsd:integer')"/] v4 --o bind17 bind17 --as--o v9