Sandbox: Difference between revisions
(added full graph runquery) |
(→Personal Section: test alternative external data syntax) |
||
| (18 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
{{Note|type=warn|text=A test text}} | |||
[[ | <imagemap> | ||
File:Graph-simple.png|400px|alt=Test | |||
default [[Main Page|Go home]] | |||
</imagemap> | |||
== External Data == | |||
{{Special:RunQuery/Learning Path}} | {{#get_web_data:url=https://query.wikidata.org/sparql?query=SELECT%20%3Fitem%20%3FitemLabel%20%3Fsymbol%20%3FatomicNumber%20%28%20YEAR%28%20%3FdiscoveryDate%20%29%20AS%20%3FdiscoveryYear%20%29%20%3Fdiscoverer%20%3FdiscovererLabel%0AWHERE%20%7B%0A%20%20VALUES%20%3Fitem%20%7B%20wd%3AQ654%20%7D%20.%0A%20%20%3Fitem%20wdt%3AP246%20%3Fsymbol%20.%0A%20%20%3Fitem%20wdt%3AP1086%20%3FatomicNumber%20.%0A%20%20%3Fitem%20wdt%3AP575%20%3FdiscoveryDate%20.%0A%20%20%3Fitem%20wdt%3AP61%20%3Fdiscoverer%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20"en".%20%7D%0A%7D&format=json | ||
|format=json | |||
|use jsonpath | |||
|data=itemLabel=$.results.bindings[0].itemLabel.value, | |||
symbol=$.results.bindings[0].symbol.value, | |||
atomicNumber=$.results.bindings[0].atomicNumber.value, | |||
discoveryYear=$.results.bindings[0].discoveryYear.value, | |||
discovererURL=$.results.bindings[*].discoverer.value, | |||
discovererLabel=$.results.bindings[*].discovererLabel.value, | |||
}} | |||
Info for '''Q654''': | |||
* Name: {{#external_value:itemLabel}} | |||
* Symbol: {{#external_value:symbol}} | |||
* Atomic number: {{#external_value:atomicNumber}} | |||
* Year discovered: {{#external_value:discoveryYear}} | |||
* Discoverers: {{#for_external_table:[{{{discovererURL}}} {{{discovererLabel}}}], <nowiki />}} | |||
via: https://discoursedb.org/wiki/Wikidata_querying_demo | |||
{{#get_web_data:url=http://query.graphit.ur.de/proxy/wdqs/bigdata/namespace/wdq/sparql?query=%23defaultView%3ATable%0APREFIX%20wd%3A%20%20%3Chttps%3A%2F%2Fgraphit.ur.de%2Fentity%3E%0APREFIX%20wdt%3A%20%3Chttps%3A%2F%2Fgraphit.ur.de%2Fprop%2Fdirect%2F%3E%0ASELECT%20(COUNT(*)%20as%20%3Fitems)%20%0AWHERE%20%7B%0A%20%20%3Fitem%20wikibase%3Aidentifiers%20%3Fi.%20%23%20get%20only%20items%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22%5BAUTO_LANGUAGE%5D%2Cen%22.%20%7D%0A%7D&format=json | |||
|format=json | |||
|use jsonpath | |||
|data=items=$.results.bindings[0].items.value | |||
}} | |||
Anzahl Items: {{#external_value:items}} | |||
== Course Query == | |||
{{SPARQL2|query= | |||
#defaultView:Graph | |||
PREFIX wd: <https://graphit.ur.de/entity/> | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
SELECT distinct ?topic ?topicLabel ?rgb ?dependency ?dependencyLabel ?category ?categoryLabel | |||
WHERE { | |||
{ | |||
# get all categories of the course | |||
BIND (wd:Q468 as ?course). | |||
?course wdt:P14 ?category. | |||
Minus {?category wdt:P3 wd:Q427} | |||
{ SELECT ?category ?categoryLabel ?topic ?topicLabel WHERE { | |||
{ | |||
?category wdt:P14 ?topic. | |||
} | |||
} | |||
} | |||
Union | |||
# get all dependencies of the topics | |||
{ SELECT ?topic ?topicLabel ?dependency ?dependencyLabel WHERE { | |||
{ | |||
?topic wdt:P1 ?dependency. | |||
} | |||
} | |||
} | |||
?category wdt:P14 ?topic. | |||
?topic wdt:P1 ?dependency. | |||
bind (if(?category = wd:Q472, "e8fcff", # (blue) f3fdff | |||
if(?category = wd:Q473, "e3ffd9", # (green) | |||
if(?category = wd:Q474, "ffeec2", # (orange) | |||
if(?category = wd:Q475, "DCCDE0", # (purple) | |||
if(?category = wd:Q476, "F9DCDF", # (pink) | |||
if(?category = wd:Q477, "E7DEDA", # (brown) | |||
if(?category = wd:Q478, "ECEDFF", # (lavender) | |||
"FFFFFF" ))))))) as ?rgb). | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | |||
} | |||
} | |||
| caption=Query includes dependencies between items | |||
}} | |||
{{SPARQL2|query= | |||
#defaultView:Graph | |||
PREFIX wd: <https://graphit.ur.de/entity/> | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
SELECT distinct | |||
?category ?categoryLabel ?topic ?topicLabel ?rgb | |||
WHERE { | |||
BIND (wd:Q468 as ?course). | |||
?course wdt:P14 ?category. | |||
Minus {?category wdt:P3 wd:Q427} | |||
BIND (rdf:type as ?id) | |||
?category wdt:P14 ?topic. | |||
# Color coding | |||
bind (if(?category = wd:Q472, "e8fcff", # (blue) f3fdff | |||
if(?category = wd:Q473, "e3ffd9", # (green) | |||
if(?category = wd:Q474, "ffeec2", # (orange) | |||
if(?category = wd:Q475, "DCCDE0", # (purple) | |||
if(?category = wd:Q476, "F9DCDF", # (pink) | |||
if(?category = wd:Q477, "E7DEDA", # (brown) | |||
if(?category = wd:Q478, "ECEDFF", # (lavender) | |||
"FFFFFF" ))))))) as ?rgb). | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | |||
} | |||
| caption=Query shows the included items in a category | |||
}} | |||
== Linked RunQuery == | |||
{{#queryformlink:form=Learning Path|link text=Try running the query :D|link type=button|tooltip=This is a test}} | |||
Follow https://graphit.ur.de/wiki/Special:RunQuery/Learning_Path?Learning_Path[quiz]=Q444&_run for preloaded query | |||
{{#queryformlink:form=Learning Path|query string=Learning_Path[quiz]=Q444&_run}} | |||
== Embedded RunQuery == | |||
{{Special:RunQuery/Learning Path2}} | |||
== Full Graph == | == Full Graph == | ||
Run this query to get the full graph | Run this query to get the full graph | ||
{{Special:RunQuery/FullGraph}} | {{Special:RunQuery/FullGraph}} | ||
== Personal Section == | |||
(Test for EIMI) | |||
<!-- | |||
{{#get_web_data:url=http://query.graphit.ur.de/proxy/wdqs/bigdata/namespace/wdq/sparql?query=%23defaultView%3ATable%0APREFIX%20wd%3A%20%3Chttps%3A%2F%2Fgraphit.ur.de%2Fentity%2F%3E%0APREFIX%20wdt%3A%20%3Chttps%3A%2F%2Fgraphit.ur.de%2Fprop%2Fdirect%2F%3E%0ASELECT%20DISTINCT%20%3Fcompletions%20%3Fitems%20WHERE%20%7B%0A%20%20%20%20%20%20%0A%20%20%7B%20SELECT%20(COUNT%20(DISTINCT%20%3Fcomplete)%20AS%20%3Fcompletions)%20WHERE%20%7B%0A%20%20%20%20%3Fuser%20rdfs%3Alabel%20%22%7B%7B%23username%3AMax%20Mustermann%7D%7D%22%40en.%0A%20%20%20%20wd%3AQ2113%20wdt%3AP14%2Fwdt%3AP14%20%3Fcomplete.%0A%20%20%20%20%3Fuser%20wdt%3AP12%20%3Fcomplete.%0A%20%20%7D%7D%0A%20%20%0A%20%20%7B%20SELECT%20(COUNT%20(DISTINCT%20%3Fitem)%20AS%20%3Fitems)%20WHERE%20%7B%0A%20%20%20%20wd%3AQ2113%20wdt%3AP14%2Fwdt%3AP14%20%3Fitem.%0A%20%20%7D%20%7D%0A%20%20%20%20%0A%20%20SERVICE%20wikibase%3Alabel%20%7B%20bd%3AserviceParam%20wikibase%3Alanguage%20%22%5BAUTO_LANGUAGE%5D%2Cen%22.%20%7D%0A%7D&format=json | |||
|format=json | |||
|use jsonpath | |||
|data= | |||
completions=$.results.bindings[0].completions.value, | |||
items=$.results.bindings[0].items.value, | |||
}} | |||
--> | |||
{{#get_web_data:url=http://query.graphit.ur.de/proxy/wdqs/bigdata/namespace/wdq/sparql?query={{urlencode:PREFIX wd: <https://graphit.ur.de/entity/> | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
SELECT DISTINCT ?completions ?items WHERE { | |||
{ SELECT (COUNT (DISTINCT ?complete) AS ?completions) WHERE { | |||
?user rdfs:label "{{#username:Max Mustermann}}"@en. | |||
wd:Q2113 wdt:P14/wdt:P14 ?complete. | |||
?user wdt:P12 ?complete. | |||
} } | |||
{ SELECT (COUNT (DISTINCT ?item) AS ?items) WHERE { | |||
wd:Q2113 wdt:P14/wdt:P14 ?item. | |||
} } | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | |||
}}}&format=json | |||
|format=json | |||
|use jsonpath | |||
|data= | |||
completions=$.results.bindings[0].completions.value, | |||
items=$.results.bindings[0].items.value, | |||
}} | |||
Du ({{#username:Max Mustermann}}) hast '''{{#external_value:completions}}''' von {{#external_value:items}} Lerninhalten geschafft. | |||
<progress value="{{#external_value:completions}}" max="{{#external_value:items}}"> {{#external_value:completions}} </progress> | |||
'''{{#external_value:completions}}''' / {{#external_value:items}} Lerninhalten | |||
{{#widget:Progressbar|value={{#external_value:completions}}|max={{#external_value:items}}|text={{#external_value:completions}} }} | |||
{{#widget:Progressbar|value=4|max=10|text=test}} | |||
{{SPARQL2|query= | |||
#defaultView:Graph | |||
PREFIX wd: <https://graphit.ur.de/entity/> | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
SELECT distinct ?item ?itemLabel ?shape1 ?rgb1 | |||
?dependency ?dependencyLabel ?rgb2 ?shape2 | |||
WHERE { | |||
wd:Q2113 wdt:P14 ?session. | |||
?session wdt:P3 wd:Q427. | |||
?session wdt:P14 ?item. | |||
?user rdfs:label "{{#username:Max Mustermann}}"@en. | |||
OPTIONAL{ | |||
?item wdt:P1 ?dependency. | |||
?session wdt:P14 ?dependency. | |||
BIND (IF(EXISTS{?user wdt:P12 ?dependency}, "008F0E", "ffffff") as ?rgb2) | |||
BIND (IF(EXISTS{?user wdt:P12 ?dependency}, "dot", "ellipse") as ?shape2) | |||
} | |||
BIND (IF(EXISTS{?user wdt:P12 ?item}, "008F0E", "ffffff") as ?rgb1) | |||
BIND (IF(EXISTS{?user wdt:P12 ?item}, "dot", "ellipse") as ?shape1) | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | |||
} LIMIT 500 | |||
| caption=Alle Items des Kurses EIMI 25WS. Grün markierte Items, sind von dir "completed" | |||
}} | |||
{{SPARQL2|query= | |||
#defaultView:Graph | |||
PREFIX wd: <https://graphit.ur.de/entity/> | |||
PREFIX wdt: <https://graphit.ur.de/prop/direct/> | |||
SELECT distinct | |||
?topic ?topicLabel ?rgb1 ?shape1 | |||
?dCount | |||
?dependency ?dependencyLabel ?rgb2 ?shape2 | |||
WHERE { | |||
# size the items according to their indegrees and mark all "completed" items of a user green | |||
?user rdfs:label "Leonie"@en. | |||
{ wd:Q2113 wdt:P14/wdt:P14 ?topic. | |||
OPTIONAL { | |||
?topic wdt:P1 ?dependency | |||
BIND (IF(EXISTS{?user wdt:P12 ?dependency}, "008F0E", "ffffff") as ?rgb2) | |||
} | |||
} UNION { | |||
# get all dependencies not directly included ( for sizing they need to be in the same column as ?topic () | |||
wd:Q2113 wdt:P14/wdt:P14 ?item. | |||
?item wdt:P1 ?topic. | |||
FILTER NOT EXISTS { wd:Q2113 wdt:P14/wdt:P14 ?topic. } | |||
} | |||
OPTIONAL { | |||
SELECT ?topic ?topicLabel (COUNT(DISTINCT ?pre) as ?dCount) WHERE { | |||
?pre wdt:P1 ?topic. | |||
} GROUP BY ?topic ?topicLabel | |||
} # number of items that -depend-on-> ?topic | |||
BIND(IF(!BOUND(?dCount), 0, ?dCount) as ?dCount). | |||
BIND (IF(EXISTS{?user wdt:P12 ?topic}, "008F0E", "ffffff") as ?rgb1) | |||
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". } | |||
} | |||
|caption=Alle Items aus EIMI. Größe = wieviel andere Items haben es als Vorwissen. Grün = Completion | |||
}} | |||
Latest revision as of 15:20, 3 November 2025
⚠️ A test text
External Data
Info for Q654:
- Name: neon
- Symbol: Ne
- Atomic number: 10
- Year discovered: 1898
- Discoverers: Morris Travers, William Ramsay,
via: https://discoursedb.org/wiki/Wikidata_querying_demo
Anzahl Items: 2640
Course Query
Items used: Wissenschaftliches Arbeiten 23/24WS (Q468), Session (Q427), Instrumente und Methoden (Q472), Was ist Wissenschaft (Q473), Ablauf Bachelorarbeit (Q474), Statistik (Q475), Wissenschaftliches Schreiben (Q476), Studiendesign und -durchführung (Q477), Literaturrecherche (Q478)
Properties used: includes (P14), instance of (P3), depends on (P1)
#defaultView:Graph
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
SELECT distinct ?topic ?topicLabel ?rgb ?dependency ?dependencyLabel ?category ?categoryLabel
WHERE {
{
# get all categories of the course
BIND (wd:Q468 as ?course).
?course wdt:P14 ?category.
Minus {?category wdt:P3 wd:Q427}
{ SELECT ?category ?categoryLabel ?topic ?topicLabel WHERE {
{
?category wdt:P14 ?topic.
}
}
}
Union
# get all dependencies of the topics
{ SELECT ?topic ?topicLabel ?dependency ?dependencyLabel WHERE {
{
?topic wdt:P1 ?dependency.
}
}
}
?category wdt:P14 ?topic.
?topic wdt:P1 ?dependency.
bind (if(?category = wd:Q472, "e8fcff", # (blue) f3fdff
if(?category = wd:Q473, "e3ffd9", # (green)
if(?category = wd:Q474, "ffeec2", # (orange)
if(?category = wd:Q475, "DCCDE0", # (purple)
if(?category = wd:Q476, "F9DCDF", # (pink)
if(?category = wd:Q477, "E7DEDA", # (brown)
if(?category = wd:Q478, "ECEDFF", # (lavender)
"FFFFFF" ))))))) as ?rgb).
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
}
Items used: Wissenschaftliches Arbeiten 23/24WS (Q468), Session (Q427), Instrumente und Methoden (Q472), Was ist Wissenschaft (Q473), Ablauf Bachelorarbeit (Q474), Statistik (Q475), Wissenschaftliches Schreiben (Q476), Studiendesign und -durchführung (Q477), Literaturrecherche (Q478)
Properties used: includes (P14), instance of (P3)
#defaultView:Graph
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
SELECT distinct
?category ?categoryLabel ?topic ?topicLabel ?rgb
WHERE {
BIND (wd:Q468 as ?course).
?course wdt:P14 ?category.
Minus {?category wdt:P3 wd:Q427}
BIND (rdf:type as ?id)
?category wdt:P14 ?topic.
# Color coding
bind (if(?category = wd:Q472, "e8fcff", # (blue) f3fdff
if(?category = wd:Q473, "e3ffd9", # (green)
if(?category = wd:Q474, "ffeec2", # (orange)
if(?category = wd:Q475, "DCCDE0", # (purple)
if(?category = wd:Q476, "F9DCDF", # (pink)
if(?category = wd:Q477, "E7DEDA", # (brown)
if(?category = wd:Q478, "ECEDFF", # (lavender)
"FFFFFF" ))))))) as ?rgb).
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
Linked RunQuery
Follow https://graphit.ur.de/wiki/Special:RunQuery/Learning_Path?Learning_Path[quiz]=Q444&_run for preloaded query
Embedded RunQuery
Full Graph
Run this query to get the full graph
Personal Section
(Test for EIMI)
Du (Max Mustermann) hast 3 von 391 Lerninhalten geschafft. <progress value="3" max="391"> 3 </progress>
3 / 391 Lerninhalten
Items used: EIMI 25/26WS (Q2113), Session (Q427)
Properties used: includes (P14), instance of (P3), depends on (P1), has completed (P12)
#defaultView:Graph
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
SELECT distinct ?item ?itemLabel ?shape1 ?rgb1
?dependency ?dependencyLabel ?rgb2 ?shape2
WHERE {
wd:Q2113 wdt:P14 ?session.
?session wdt:P3 wd:Q427.
?session wdt:P14 ?item.
?user rdfs:label "Max Mustermann"@en.
OPTIONAL{
?item wdt:P1 ?dependency.
?session wdt:P14 ?dependency.
BIND (IF(EXISTS{?user wdt:P12 ?dependency}, "008F0E", "ffffff") as ?rgb2)
BIND (IF(EXISTS{?user wdt:P12 ?dependency}, "dot", "ellipse") as ?shape2)
}
BIND (IF(EXISTS{?user wdt:P12 ?item}, "008F0E", "ffffff") as ?rgb1)
BIND (IF(EXISTS{?user wdt:P12 ?item}, "dot", "ellipse") as ?shape1)
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
} LIMIT 500
Items used: EIMI 25/26WS (Q2113)
Properties used: includes (P14), depends on (P1), has completed (P12)
#defaultView:Graph
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
SELECT distinct
?topic ?topicLabel ?rgb1 ?shape1
?dCount
?dependency ?dependencyLabel ?rgb2 ?shape2
WHERE {
# size the items according to their indegrees and mark all "completed" items of a user green
?user rdfs:label "Leonie"@en.
{ wd:Q2113 wdt:P14/wdt:P14 ?topic.
OPTIONAL {
?topic wdt:P1 ?dependency
BIND (IF(EXISTS{?user wdt:P12 ?dependency}, "008F0E", "ffffff") as ?rgb2)
}
} UNION {
# get all dependencies not directly included ( for sizing they need to be in the same column as ?topic ()
wd:Q2113 wdt:P14/wdt:P14 ?item.
?item wdt:P1 ?topic.
FILTER NOT EXISTS { wd:Q2113 wdt:P14/wdt:P14 ?topic. }
}
OPTIONAL {
SELECT ?topic ?topicLabel (COUNT(DISTINCT ?pre) as ?dCount) WHERE {
?pre wdt:P1 ?topic.
} GROUP BY ?topic ?topicLabel
} # number of items that -depend-on-> ?topic
BIND(IF(!BOUND(?dCount), 0, ?dCount) as ?dCount).
BIND (IF(EXISTS{?user wdt:P12 ?topic}, "008F0E", "ffffff") as ?rgb1)
SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
