User:Pmartinolli/OtSoCG

On the Shoulders of Cloud Giants: Citation Practices in the Tabletop Role-Playing Game Publishing Industry

edit

Project Overview

edit

Indexing (generalities)

edit

Indexing a tabletop role-playing game

edit
  • Minimum information :
  • If several editions :
    • One item for the RPG family (all the games)
      • instance of = TTRPG
      • has editions :
      • RPGGeek ID : rgpfamily/ or rpg/
    • One item for each editions
      • instance of = TTRPG + version, edition or translation
      • edition of :
      • followed by / follows : each editions
      • RPGGeek ID : rpg/ or rpgitem/
  • Other information :
  • When a game has editions :
  • When an item is an adventure, supplement, campaign of a game : Expansion of
  • Other identifiers :



Special case : indexing game mechanics

edit
  • game mechanics can be indexed with game systems if already existing in Wikidata (ex: storytelling system, Hero system, etc.)
    • Game system are supposed to have a set of more related game mechanics (under construction 2021)
    • tabletop role-playing game are supposed to have a set of generic game mechanics (in role-playing game system that are traditionally attributed to TTRPGs)
    • If needed, indexing with specific game mechanics for that game.

Batch indexing with Quickstatements

edit

Indexing a notion of « notoriety » in TTRPGs

edit
  • In September 2024, I added 228 of the 330 games and supplements listed in the Appendix A of the book Monsters, Aliens, and Holes in the Ground as Described bu source (P1343) = Q128123368.

Using PetScan to collect data to index

edit


Mix'n'Match with RPGGeek

edit

Access to MnM:RPGGeek (follow-up page)

NB: if several editions of the same item, please link to the 1st edition only (or manually link to /rpg or /rpgfamily).

List TTRPGs systems with dice types

edit
SELECT DISTINCT ?item ?itemLabel ?mechaLabel ?diceLabel WHERE {
      {?item wdt:P31 wd:Q1643932. }
      UNION
      {?item wdt:P31 wd:Q2164067. }
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
      OPTIONAL {?item wdt:P4151 ?mecha} 
      OPTIONAL { ?item (wdt:P577|wdt:P571) ?date.}
      OPTIONAL { ?item wdt:P2283 ?dice.}
}
ORDER BY DESC(?mechaLabel)
Try it!

Bubble chart of uses (dices, etc.)

edit
#defaultView:BubbleChart
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> 
PREFIX wikibase: <http://wikiba.se/ontology#>
PREFIX wd: <http://www.wikidata.org/entity/> 
PREFIX wdt: <http://www.wikidata.org/prop/direct/>

SELECT  ?usesl (COUNT(?h) as ?nb) WHERE {
   ?h wdt:P31 wd:Q1643932 .
   ?h wdt:P2283  ?uses .
  OPTIONAL { 
     ?uses rdfs:label ?usesl filter (lang(?usesl) = "en"). 
   }
 } 
GROUP BY ?usesl
ORDER BY DESC(?nb)
Try it!

Bar chart of all dice and material used per year

edit
#defaultView:BarChart
SELECT ?year (COUNT(?_uses) AS ?count) (SAMPLE(?_usesLabel) AS ?_usesLabel) WHERE {
  ?item wdt:P31 wd:Q1643932; # instance of: ttrpg
        wdt:P577 ?_date;   # inception
        wdt:P2283 ?_uses.
  BIND(str(YEAR(?_date)) AS ?year)
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".
                          ?_uses rdfs:label ?_usesLabel.}
  FILTER(?_date >= "1960-00-00T00:00:00Z"^^xsd:dateTime)
}
GROUP BY ?_usesLabel ?year
HAVING (?count > 0)
Try it!
edit
SELECT DISTINCT ?item ?itemLabel ?instance ?instanceLabel ?date ?author ?authorLabel ?publisher ?publisherLabel ?movement ?movementLabel ?gamemechanics ?gamemechanicsLabel ?RPGGeek_ID WHERE {
  {
    { ?item wdt:P31 wd:Q1643932. } #TTRPG
    UNION
    { ?item wdt:P31 wd:Q2164067. } #System
    UNION
    { ?item wdt:P31 wd:Q71631512. } #supplement
    UNION
    { ?item wdt:P31 wd:Q4418079. } #setting
    UNION
    { ?item wdt:P31 wd:Q4686479. } #adventure
    UNION
    { ?item wdt:P31 wd:Q2608176. } #campaign
  }
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  OPTIONAL { ?item wdt:P31 ?instance. }
  OPTIONAL { ?item wdt:P577 ?date.}
  OPTIONAL { ?item (wdt:P50|wdt:P170|wdt:P2093) ?author.}  
  OPTIONAL { ?item wdt:P123 ?publisher.}
  OPTIONAL { ?item wdt:P135 ?movement.}
  OPTIONAL { ?item wdt:P4151 ?gamemechanics.}
  OPTIONAL { ?item wdt:P7226 ?RPGGeek_ID. }
}
ORDER BY (?itemLabel)
Try it!

Tool : Any item with Q1643932 (TTRPG) in any property

edit
SELECT ?node ?property WHERE {?node ?property wd:Q1643932 }
Try it!

More complete :

SELECT ?node ?property WHERE {{?node ?property wd:Q1643932} 
                              UNION {?node ?property wd:Q2164067} 
                              UNION {?node ?property wd:Q71631512}
                              UNION {?node ?property wd:Q4418079}
                              UNION {?node ?property wd:Q2608176}
                              UNION {?node ?property wd:Q54845077}
                              UNION {?node ?property wd:Q100271038}}
Try it!

Could also be used in PetScan > Other Sources > SPARQL query

Tool : List of misc. properties from a set of Wikidata items

edit
SELECT DISTINCT ?item ?itemLabel ?itemDescription ?instanceof ?partof ?subclassof ?date ?publisher ?gamemechanics ?RPGGeek_ID WHERE { 
     VALUES ?item { 
wd:Q1000492
wd:Q100873858

  }.  # paste up to 1400 items here 
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  OPTIONAL { ?item wdt:P31 ?instanceof. }
  OPTIONAL { ?item wdt:P361 ?partof. }
  OPTIONAL { ?item wdt:P279 ?subclassof. }
  OPTIONAL { ?item wdt:P577 ?date.} 
  OPTIONAL { ?item wdt:P123 ?publisher.}
  OPTIONAL { ?item wdt:P4151 ?gamemechanics.}
  OPTIONAL { ?item wdt:P7226 ?RPGGeek_ID. }
}
ORDER BY (?instanceof)
Try it!

Tool : List of misc. properties from a set of Wikidata items

edit
#title:Most used properties of TTRPG (adapted from a query by https://twitter.com/JeanFred https://w.wiki/5Fvr)
#defaultView:BubbleChart
SELECT ?property ?propertyLabel ?propertyDescription  (COUNT(DISTINCT ?item) AS ?count)
WITH {
  SELECT DISTINCT ?property ?propertyLabel WHERE {
    VALUES ?type {
      wikibase:ExternalId
      wikibase:Url
    }
    #?property wikibase:propertyType ?type;
    #  (wdt:P31/(wdt:P279*)) wd:Q28147643;
    #  rdfs:label ?propertyLabel.
    #FILTER((LANG(?propertyLabel)) = "en")
    #MINUS { ?property wdt:P1629 wd:Q96096761. }
    #MINUS { ?property wdt:P1629 wd:Q27631547. }
  }
} AS %properties
WHERE {
  INCLUDE %properties.
  ?item wdt:P31 wd:Q1643932 .
  ?property wikibase:claim ?propertyclaim.
  ?item ?propertyclaim _:b4.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}

GROUP BY ?property ?propertyLabel ?propertyDescription ORDER BY DESC (?count)
Most used properties of TTRPG (adapted from a query by https://twitter.com/JeanFred https://w.wiki/5Fvr)

Citation practices

edit

Indexing

edit

List of all citation intent : https://w.wiki/3fCv

Guide on CiTO. The Citation Typing Ontology (CiTO) is an ontology that enables characterization of the nature or type of citations, both factually and rhetorically.

Visualizing

edit

A cloudy graph

edit
#defaultView:Graph
SELECT DISTINCT ?item ?itemLabel ?cited_works ?cited_worksLabel 
WHERE
{
    {
      {?item wdt:P31 wd:Q1643932} 
      UNION 
      {?item wdt:P31 wd:Q2164067}
      UNION
      {?item wdt:P31 wd:Q71631512}
      UNION
      {?item wdt:P31 wd:Q4418079}      
    }. # instance = TTRPG or TTRPG system or supplement or setting
    ?item  wdt:P2860    ?cited_works. # which cites works
    {
      {?cited_works wdt:P31 wd:Q1643932}
      UNION 
      {?cited_works wdt:P31 wd:Q2164067}
      UNION
      {?cited_works wdt:P31 wd:Q71631512}
      UNION
      {?cited_works wdt:P31 wd:Q4418079} 
    }. # that are TTRPG or TTRPG system or supplement or setting  
    SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
Try it!

Or a clean table

edit
SELECT DISTINCT ?item ?itemLabel ?cited_works ?cited_worksLabel 
WHERE
{
    {
      {?item wdt:P31 wd:Q1643932} 
      UNION 
      {?item wdt:P31 wd:Q2164067}
      UNION
      {?item wdt:P31 wd:Q71631512}
      UNION
      {?item wdt:P31 wd:Q4418079}      
    }. # instance = TTRPG or TTRPG system or supplement or setting
    ?item  wdt:P2860    ?cited_works. # which cites works
    {
      {?cited_works wdt:P31 wd:Q1643932}
      UNION 
      {?cited_works wdt:P31 wd:Q2164067}
      UNION
      {?cited_works wdt:P31 wd:Q71631512}
      UNION
      {?cited_works wdt:P31 wd:Q4418079} 
    }. # that are TTRPG or TTRPG system or supplement or setting  
    SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
}
ORDER BY ?item ?cited_works
Try it!

A complete table

edit
SELECT DISTINCT ?item ?itemLabel ?publicationdate ?cited_work ?follows ?basedon ?influencedby ?inspiredby 
WHERE
{
   {?item wdt:P31 wd:Q1643932} UNION {?item wdt:P31 wd:Q2164067} 
   ?item wdt:P577 ?_date.
   BIND(str(YEAR(?_date)) AS ?publicationdate)
   OPTIONAL {?item wdt:P2860 ?cited_work. }
   OPTIONAL {?item wdt:P155 ?follows. }  
   OPTIONAL {?item wdt:P144 ?basedon. }  
   OPTIONAL {?item wdt:P737 ?influencedby. } 
   OPTIONAL {?item wdt:P941 ?inspiredby. } 
  
   SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }
  FILTER EXISTS { {?cited_work wdt:P31 wd:Q1643932} UNION {?cited_work wdt:P31 wd:Q2164067} }
  FILTER EXISTS { {?follows wdt:P31 wd:Q1643932} UNION {?follows wdt:P31 wd:Q2164067} }  
  FILTER EXISTS { {?basedon wdt:P31 wd:Q1643932} UNION {?basedon wdt:P31 wd:Q2164067} }  
  FILTER EXISTS { {?influencedby wdt:P31 wd:Q1643932} UNION {?influencedby wdt:P31 wd:Q2164067} }  
  FILTER EXISTS { {?inspiredby wdt:P31 wd:Q1643932} UNION {?inspiredby wdt:P31 wd:Q2164067} }  
}
ORDER BY ?publicationdate ?item
Try it!


The ultimate full table

edit
SELECT DISTINCT ?item ?itemLabel ?instanceLabel ?publicationdate ?country ?countryLabel ?title ?genre ?genreLabel ?hasedition ?haseditionLabel ?author ?authorLabel ?authorns ?publisher ?publisherLabel ?RPGGeekID ?copyrightLabel 
WHERE
{
SERVICE wikibase:label { bd:serviceParam wikibase:language "en" }

      {?item wdt:P31 wd:Q1643932} 
      UNION {?item wdt:P31 wd:Q2164067}
      UNION {?item wdt:P31 wd:Q71631512}
      UNION {?item wdt:P31 wd:Q4418079}    
      UNION {?item wdt:P31 wd:Q100271038}
      UNION {?item wdt:P31 wd:Q4686479}
      UNION {?item wdt:P31 wd:Q2608176}
      UNION {?item wdt:P31 wd:Q57904379}

OPTIONAL {?item wdt:P31 ?instance.}
 
OPTIONAL {?item wdt:P577 ?_date.}
BIND(str(YEAR(?_date)) AS ?publicationdate)

OPTIONAL {?item wdt:P17 ?country. }
OPTIONAL {?item wdt:P1476 ?title. }
OPTIONAL {?item wdt:P407 ?lang. }
OPTIONAL {?item wdt:P136 ?genre. }
OPTIONAL {?item wdt:P747 ?hasedition. }
OPTIONAL {?item wdt:P50 ?author. }
OPTIONAL {?item wdt:P2093 ?authorns. }
OPTIONAL {?item wdt:P123 ?publisher. }
OPTIONAL {?item wdt:P7226 ?RPGGeekID. }
OPTIONAL {?item wdt:P6216 ?copyright. }
  
}
ORDER BY ?publicationdate ?item
Try it!

List of TTRPG citing other TTRPG with date range

edit
SELECT DISTINCT ?itemLabel ?cited_worksLabel (YEAR(?when) as ?date) WHERE {
    ?item wdt:P31 wd:Q1643932.
    ?item wdt:P2860 ?cited_works.
    OPTIONAL {?item wdt:P577 ?when.}
    ?cited_works wdt:P31 wd:Q1643932.

  FILTER(YEAR(?when) >= 1970 && YEAR(?when) <= 1979)
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
Try it!

What are the most cited TTRPG ?

edit
SELECT (COUNT(?_citing) AS ?count) (SAMPLE(?_citingLabel) AS ?citingLabel)  WHERE {
  ?ttrpg wdt:P31 wd:Q1643932.
  ?ttrpg wdt:P2860 ?_citing.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en".
                          ?_citing rdfs:label ?_citingLabel.}
}
GROUP BY ?_citing
HAVING (?count > 1)
ORDER BY DESC(?count)
Try it!

What are the TTRPG that cite the most?

edit
SELECT ?works ?worksLabel (COUNT(DISTINCT ?citedworks) AS ?count) 
WHERE
{
    ?works wdt:P2860 ?citedworks. 
           ?citedworks wdt:P31 wd:Q1643932. 
    ?works wdt:P31 wd:Q1643932. 
    ?works wdt:P577 ?date.
    BIND ( STR(year(?date)) as ?year )
    SERVICE wikibase:label {
        bd:serviceParam wikibase:language "en" .
    }
}
GROUP BY ?works ?worksLabel
ORDER BY DESC(?count)
Try it!


TTRPGs that cites at least one TTRPG (per year)

edit

Biases by the partial indexation

#defaultView:BarChart
PREFIX target: <http://www.wikidata.org/entity/Q1643932>

SELECT ?year (count(distinct ?citing_work) as ?count) ?kind  WHERE {
  ?work wdt:P31 target: .
  ?citing_work wdt:P2860 ?work .
  bind(if (exists { ?citing_work wdt:P31 target: }, "", "") as ?kind)
  ?citing_work wdt:P577 ?date .
  BIND(str(YEAR(?date)) AS ?year)
} group by ?year ?kind
order by desc(?year)
Try it!

TTRPG indexed in Wikibase

edit

(requête par Nicolas Vigneron) Le nombre de liens (nb_sitelinks) est un bon indicateur de valeur/ importance car c'est le nombre de pages sur les différents Wikipédia.

SELECT ?works ?worksLabel ?nb_statements ?nb_sitekinks ?nb_identifiers WHERE {
    ?works wdt:P31 wd:Q1643932. 
    ?works wikibase:statements ?nb_statements .
    ?works wikibase:sitelinks ?nb_sitekinks .
    ?works wikibase:identifiers ?nb_identifiers.
    SERVICE wikibase:label { bd:serviceParam wikibase:language "en" . }
}
ORDER BY DESC(?nb_statements)
Try it!

TTRPG avec nb de pages liées

edit
SELECT ?works ?worksLabel (COUNT(?lien) AS ?nb_pagesliées) WHERE {
  ?works wdt:P31 wd:Q1643932. 
  ?autre ?lien ?works .
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
GROUP BY ?works ?worksLabel
Try it!

Scholarly work on TTRPG

edit

Indexing workflow with Zotero/Cita

edit

(only work with items with a DOI)

  • Install Cita plugin.
  • Create a folder named Wikidating. Create a subfolder named 0 where you put the items you will maybe create. Create a subfolder named 1 where you will put the items you will create in priority.
  • Go in folder 1, pick the oldest scholarly work. Right-click on it > WikiCite > FetchIDs
    • If it succeeds, it will create a qid entry in Extra field.
    • If it doesnt succeed, it will propose to create the item in Wikidata. Choose Quickstatements. When Quickstatements finished, improve the item with :
      • Published In property = name of the journal (it's always missing).
      • Main subject property = TTRPG.
    • Then come the tricky part : adding Cites Works items :
      • Go in the references section of the PDF of the scholarly work.
      • If a reference main subject is TTRPG, add it in Cites Works.
        • If it exist in Wikidata : perfect.
        • If it doesn't exist in Wikidata : create it.
          • Use Craddle>Book for creating a book.
          • Use the same procedure for an article with DOI
          • Or take a note somewhere that this item cites that item (you will do it one day).
  • In Zotero, add tag _wikidated to the item.

List of scholarly items about TTRPG

edit
SELECT DISTINCT ?item ?itemLabel
WHERE 
{
      { {?item wdt:P31 wd:Q35760}           # essay 
      UNION  {?item wdt:P31 wd:Q571}        # or book
      UNION  {?item wdt:P31 wd:Q13442814}   # or scholarly article
      UNION  {?item wdt:P31 wd:Q55915575}   # or scholarly work
      UNION  {?item wdt:P31 wd:Q1338914}    # or handbook
      UNION  {?item wdt:P31 wd:Q11826511}   # or scientific work
      UNION  {?item wdt:P31 wd:Q5633421}    # or scholarly journal
      UNION  {?item wdt:P31 wd:Q591041}     # or scientific journal
      UNION  {?item wdt:P106 wd:Q1650915}   # or researcher
      UNION  {?item wdt:P31 wd:Q3331189}   # or version, edition, translation
      }
      ?item (wdt:P921|wdt:P101) wd:Q1643932.   # main subject or field of work is ttrpg        
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  }
Try it!

List of items from IJRP

edit
SELECT DISTINCT ?instanceofLabel ?subclassofLabel ?item ?itemLabel
WHERE 
{
  { {VALUES ?item {wd:Q69671730}.
     ?item wdt:P31 ?instanceof.}   # IJRP itself
  UNION 
  {?item wdt:P31 wd:Q13442814.  # articles of IJRP
   ?item wdt:P1433 wd:Q69671730.
   ?item wdt:P31 ?instanceof.}
  UNION
  {?item0 wdt:P31 wd:Q13442814. # researchers of IJRP
   ?item0 wdt:P1433 wd:Q69671730.
   ?item0 wdt:P50 ?item.  
     }
  UNION
  {?item00 wdt:P31 wd:Q13442814. # topics of IJRP
   ?item00 wdt:P1433 wd:Q69671730.
   ?item00 wdt:P921 ?item.  
   } }
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
ORDER BY ?item
Try it!

A rendering of IJRP items with Scholia

Visualizing (list)

edit
#defaultView:Graph
SELECT DISTINCT ?item ?itemLabel ?cited ?citedLabel
WHERE 
{
      { {?item wdt:P31 wd:Q35760}           # essay 
      UNION  {?item wdt:P31 wd:Q571}        # or book
      UNION  {?item wdt:P31 wd:Q13442814}   # or scholarly article
      UNION  {?item wdt:P31 wd:Q55915575}   # or scholarly work
      UNION  {?item wdt:P31 wd:Q1338914}    # or handbook
      UNION  {?item wdt:P31 wd:Q11826511} } # or scientific work
    ?item wdt:P921 wd:Q1643932.             # main subject = ttrpg   
    ?item  wdt:P2860    ?cited.
       { {?item wdt:P31 wd:Q35760}            # essay 
       UNION  {?cited wdt:P31 wd:Q571}        # or book
       UNION  {?cited wdt:P31 wd:Q13442814}   # or scholarly article
       UNION  {?item wdt:P31 wd:Q55915575}    # or scholarly work
       UNION  {?cited wdt:P31 wd:Q1338914}    # or handbook
       UNION  {?cited wdt:P31 wd:Q11826511}
       ?cited wdt:P921 wd:Q1643932.
       }. # that are scholarly works on TTRPG  
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  }
Try it!

Visualizing : Graph of citations of scholarly work on TTRPG

edit
#defaultView:Graph
     SELECT DISTINCT ?item ?itemLabel ?cited WHERE {
      {{?item wdt:P31 wd:Q35760}            # essay 
      UNION  {?item wdt:P31 wd:Q571}        # or book
      UNION  {?item wdt:P31 wd:Q13442814}   # or scholarly article
      UNION  {?item wdt:P31 wd:Q1338914}    # or handbook
      UNION  {?item wdt:P31 wd:Q11826511}}  # or scientific work
    ?item wdt:P921 wd:Q1643932.             # main subject = ttrpg   
    OPTIONAL { ?item wdt:P2860 ?cited .
               ?cited wdt:P921 wd:Q1643932} 
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  }
Try it!



Game mechanics (Q1751513)

edit

All items with Instance/Part/Subclass = Q1751513

edit
SELECT DISTINCT ?item ?itemLabel ?instanceof ?partof ?subclassof
WHERE 
{
  ?item (wdt:P31|wdt:P361|wdt:P279) wd:Q1751513.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  OPTIONAL { ?item wdt:P31 ?instanceof. }
  OPTIONAL { ?item wdt:P361 ?partof. }
  OPTIONAL { ?item wdt:P279 ?subclassof. }  
}
Try it!

Subclasses of Q1751513 as graph

edit
#defaultView:Graph
SELECT DISTINCT ?item ?itemLabel ?linkTo
WHERE 
{
  ?item wdt:P279* wd:Q1751513.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  OPTIONAL { ?item wdt:P279 ?linkTo. }  
}
Try it!


Subclasses of Q1751513 as graph (only for TTRPG)

edit
#defaultView:Graph
SELECT DISTINCT ?item ?itemLabel ?linkTo
WHERE 
{
  ?item wdt:P136 wd:Q1643932. 
  ?item wdt:P279* wd:Q1751513.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  OPTIONAL { ?item wdt:P279 ?linkTo. }  
}
Try it!

All Q1751513 currently used, and by what

edit
SELECT ?game_mechanic ?game_mechanicLabel ?item ?itemLabel 
WHERE 
{
  ?item wdt:P4151 ?game_mechanic
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
}
ORDER BY ?game_mechanic
Try it!

Gameplay (Q1331296)

edit

All items with Instance/Part/Subclass = Q1331296

edit
SELECT DISTINCT ?item ?itemLabel ?instanceof ?partof ?subclassof
WHERE 
{
  ?item (wdt:P31|wdt:P361|wdt:P279) wd:Q1331296.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  OPTIONAL { ?item wdt:P31 ?instanceof. }
  OPTIONAL { ?item wdt:P361 ?partof. }
  OPTIONAL { ?item wdt:P279 ?subclassof. }  
}
Try it!

all Subclasses of Gameplay

edit
SELECT DISTINCT ?item ?itemLabel 
WHERE 
{
  {?item p:P31/ps:P31/wdt:P279*  wd:Q1331296.}
  UNION
  {?item p:P31/ps:P31/wdt:P279*  wd:Q66467327.}
  UNION
  {?item wdt:P279*  wd:Q66467327.}
  UNION
  {?item wdt:P279*  wd:Q1331296.}
  ?item wdt:P136 wd:Q1643932.
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". } 

}
Try it!

RPG designers

edit

All Q54845077 (RPG designers) with RPGGeek ID or not

edit
SELECT ?role_playing_game ?role_playing_gameLabel ?RPGGeek_ID ?role_playing_gameDescription WHERE {
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  ?role_playing_game wdt:P106 wd:Q54845077.
  OPTIONAL { ?role_playing_game wdt:P7226 ?RPGGeek_ID. }
}
Try it!


All works by an author

edit

Use the full name AND the item Q of the designer

SELECT DISTINCT  ?author ?authorLabel ?book ?date_de_publication WHERE {
 {?author ?label "Greg Stafford". #enter the full name here
  ?book ((wdt:P170)|(wdt:P50)|(wdt:P287)|(wdt:P123)|(wdt:P61)|(wdt:P86)|(wdt:P178)|(wdt:P943)|(wdt:P112)|(wdt:P193)|(wdt:P676)|(wdt:P175)|(wdt:P84)|(wdt:P110)|(wdt:P1779)|(wdt:P6338))  ?author .}
  UNION
 {?author ((wdt:P170)|(wdt:P50)|(wdt:P287)|(wdt:P123)|(wdt:P61)|(wdt:P86)|(wdt:P178)|(wdt:P943)|(wdt:P112)|(wdt:P193)|(wdt:P676)|(wdt:P175)|(wdt:P84)|(wdt:P110)|(wdt:P1779)|(wdt:P6338)) wd:Q2246520.} #enter the item Q of the author here
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
   OPTIONAL { ?author wdt:P577 ?date_de_publication. }
}
Try it!

RPG publishers

edit
SELECT ?pub ?pubLabel ?loc_adm ?loc ?loc_formation ?hq WHERE {
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
  ?pub wdt:P31 wd:Q100271038.
  OPTIONAL { ?pub wdt:P131 ?loc_adm. }
  OPTIONAL { ?pub wdt:P276 ?loc. }
  OPTIONAL { ?pub wdt:P740 ?loc_formation. }
  OPTIONAL { ?pub wdt:P159 ?hq. }
}
ORDER BY ?loc_adm ?loc ?loc_formation ?hq
Try it!

RPG publishers on a map

edit

Do not use P131 (administrative location) because it can't be precisely mapped.

#defaultView:Map

SELECT DISTINCT ?item ?anotherItemLabel ?loc WHERE {
  ?item wdt:P31 wd:Q100271038 .
  {
      {?item wdt:P740* ?anotherItem} 
      UNION
      {?item wdt:P276* ?anotherItem}
      UNION
      {?item wdt:P159* ?anotherItem}      
    }.
  ?anotherItem wdt:P625 ?loc .
  SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }
}
# more Wikidata for TTRPG at https://www.wikidata.org/wiki/User:Pmartinolli
Try it!

Requêtes à faire

edit

Recenser tous les jeux avec le qualifier First of its kind dans :

  • instance
  • game mechanics
  • genre

Index de notoriété :

  • Tous les jeux
  • +1 par édition
  • +1 par First of its kind
  • +1 par citation
  • +1 par seuil de nb d'unités vendues

Timelines

edit

With HistroPedia

edit

Not very interesting because it's a series of points, without time band.

Copy-Paste this query in http://histropedia.com/showcase/wikidata-viewer.html :

SELECT DISTINCT ?item ?itemLabel ?typeLabel ?inception ?dissolve 
WHERE {
  {{?item wdt:P31 wd:Q1002697}           # periodical
  UNION  {?item wdt:P31 wd:Q41298}       # magazine
  UNION  {?item wdt:P31 wd:Q24634210}    # podcast
  UNION  {?item wdt:P31 wd:Q8513}        # bdd
  UNION  {?item wdt:P31 wd:Q181298}}     # fanzine

  ?item wdt:P407 wd:Q150.                  # in French             

  {{?item wdt:P921 wd:Q1643932}           # main subject
  UNION  {?item wdt:P136 wd:Q1643932}}       # OR genre = ttrpg    

  OPTIONAL {?item wdt:P571 ?inception}
  OPTIONAL {?item wdt:P576 ?dissolve}
  OPTIONAL {?item wdt:P31 ?type}
  SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
  }
Try it!

Options: Start date = inception / end date = dissolve / color and filter by : typeLabel

More interesting than Histropedia, simple but impossible to improve the layout.

Magazines & misc paper serials

edit

WDQ syntax for TTRPG periodicals in French. Copy-paste the following line in the Query field :

claim[136:1643932,921:1643932] AND claim[31:1002697,31:41298,31:181298] AND claim[407:150,17:142] AND noclaim[407:1860,747]
Try it!
  • 921(main subject) OR 136(genre) : 1643932(TTRPG)
  • 31(instance): 1002697(periodical) 41298(magazine) 181298(fanzine)
  • noclaim : remove the generic item of Casus Belli (ie all items that have edition P747) to keep all 4 editions instead.

Web serials (podcast, database, blog,...)

edit

WDQ syntax for TTRPG web serials in French. Copy-paste the following line in the Query field :

claim[136:1643932,921:1643932] AND claim[31:24634210,31:8513,31:35127,31:14346334] AND claim[407:150,17:142] AND noclaim[407:1860]
Try it!
  • 31(instance): 24634210(podcast) 8513(bdd) 35127(website) 14346334(webtv)

With Graphviz

edit

Export data in R or Python to generate a GV file in dot language, to compile in PS-PDF or in PNG.

Ongoing