Quick Overview: Difference between revisions

(→‎Overview of Student: update query (-username edgeLabel))
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
For more indepth examples and explanations visit the following:
{| class="mw-collapsible mw-expanded wikitable" style="margin:auto"
|-
! Link !! What you will find !! Preview
|-
| [[Courses/CGBV]] || An overview of the Course "Computergraphik und Bildverarbeitung" ||
|-
| [[Feature_Demo]] || A demo of a couple of features ||
|-
| [[GraphStructure]] || The documentation of the graph structure || [[File:Graph-structure.png|thumb|upright=0.75]]
|-
| [[ExampleStudent]] || An example on how a student can use the graph ||
|-
| [[Quiz/CGBV-SL2]] || An example of how coursework is integrated ||
|}


= The Dependency Graph =
= The Dependency Graph =
Line 22: Line 7:


In the end the graph turns into a big interconnected structure:
In the end the graph turns into a big interconnected structure:
{{Special:RunQuery/FullGraph}}


{{#widget:SPARQLquery|code=
----
#defaultView:Graph
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
SELECT ?item ?itemLabel ?class ?classLabel ?image ?dependency ?dependencyLabel WHERE {
  ?item wdt:P1 ?dependency.
  ?item wdt:P2 ?class
  OPTIONAL{ ?item wdt:P9 ?image.}
  OPTIONAL{ ?class wdt:P9 ?image.}
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
}}
 


In order to make this amount of data useable, several ''Structure-Items'' have been defined to help group items into abstract categories.
In order to make this amount of data useable, several ''Structure-Items'' have been defined to help group items into abstract categories.
Line 84: Line 59:
   ?item1 ?prop ?item2.
   ?item1 ?prop ?item2.
   ?edge ?dummy ?prop ; rdf:type wikibase:Property.
   ?edge ?dummy ?prop ; rdf:type wikibase:Property.
  # Minus username in edgeLabel
  FILTER (?prop != wdt:P28)


   # Color Coding:
   # Color Coding:
Line 102: Line 80:
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wd: <https://graphit.ur.de/entity/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
PREFIX wdt: <https://graphit.ur.de/prop/direct/>
#SELECT distinct ?topic ?topicLabel ?pre ?preLabel ?post ?postLabel  ?level ?rgb
SELECT distinct ?v ?vLabel ?rgb ?link ?linkLabel
SELECT ?topic ?topicLabel ?pre ?preLabel ?post ?postLabel ?rgb
WHERE {
WHERE {
{
{
   { SELECT * WHERE {
   { SELECT * WHERE {
   { SELECT ?goal ?goalLabel ?topic ?topicLabel ?rgb WHERE {
   { SELECT ?goal ?goalLabel ?topic ?topicLabel WHERE {
     {
     {
     BIND (wd:Q149 as ?goal).
     BIND (wd:Q149 as ?goal).
Line 117: Line 94:
   }
   }
   }
   }
   
   ?topic wdt:P1 ?pre.
   ?topic wdt:P1 ?pre.
  BIND (?topic as ?v). # + add all ?pre that are not yet in ?topic 
  BIND (?pre as ?link).
  bind (if(?v = wd:Q149, "FBBC74", "FFEDD8") as ?rgb).
   }
   }
   }
   }
Line 124: Line 105:
    
    
   { SELECT * WHERE {
   { SELECT * WHERE {
   { SELECT ?topic ?topicLabel ?goal ?goalLabel ?rgb WHERE {
   { SELECT ?topic ?topicLabel ?goal ?goalLabel WHERE {
     {
     {
       BIND (wd:Q149 as ?topic).
       BIND (wd:Q149 as ?topic).
       ?goal wdt:P1+ ?topic.
       ?goal wdt:P1+ ?topic.  
    } UNION {
      VALUES ?topic { wd:Q149 } # we also want to include the root node itself
     }
     }
   }
   }
   }
   }
   ?post wdt:P1 ?topic.
   ?post wdt:P1 ?topic.
  BIND (?post as ?v).
  BIND (?topic as ?link).
  bind ("F68C13" as ?rgb).
   }
   }
   }
   }
 
  # CC (only works in Table not GraphView)
  #bind (if(bound(?post), "FAB86C",
          #if(?topic = wd:Q149, "FDD3A2", "FFEDD8")) as ?rgb).


   SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
   SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
}
}
} |caption=The learning path to an item, showing its pre- and postrequisites
}}
}}
NOTE: Color coding was currently not possible for this specific case.


== Course Work ==
== Course Work ==
What items are used in a mandatory coursework:
What items are used in a mandatory coursework:
{{Learnpath|quiz=wd:Q451}}
{{Learnpath|quiz=wd:Q451}}

Latest revision as of 15:59, 9 November 2023


The Dependency Graph

At the lowest level the graph is structured by linking learning contents to its prerequisite(s) and useful resources. A student can now use these links to determine how items depend on each other, and what knowledge is required to understand a specific item.

The dependencies between items


In the end the graph turns into a big interconnected structure:



In order to make this amount of data useable, several Structure-Items have been defined to help group items into abstract categories.

For a more detailed explanation of the entire underlying structure go to GraphStructure or take a quick look at these following diagrams:

Using the Graph

The graph itself is just a versatile data structure. In order to make it usable, we are developing tools and visualizations. The SPARQL query language offered by WikiBase allows for retrieving relevant parts of the graph and visualizing it in different ways.

Hint: On each interactive visualization on this page, you can click on the "GraphIT Query Service" link in the lower left corner. This opens a new tab which shows you the SPARQL query and allows you to modify it.

Timeline of Course Sessions

This visualization shows all sessions of the course "Computer Graphics and Image Processing" and the topics they covered in a timeline.

Overview of Student

Shows what items a Student is has linked their item to. Can be used to track progress.

Learning path

The complete path to an item (here: Virtual Cameras) and what's next.

The learning path to an item, showing its pre- and postrequisites

Course Work

What items are used in a mandatory coursework:

The learning path to wd:Q451