Hi!
This is my workflow about setting up a smoothish transition from getting a PDF into Zotero, annotating it, extracting annotations, and pushing those into Tinderbox for further analysis. The last part is based on Discourse Graph concept, which in turn draws on Toulmin’s Structure of Arguments.
It’s been written for beginner TBX users in mind, in the hope that it will help them take the first few steps in their Tinderbox adventure. I have found projects/examples/workflows shared by other community members to be very helpful. Those Tinderbox recipes helped me not only to ‘have job done’, but also, by experimenting through tweaking parts of pre-set action code to my own preferences, to learn how Tinderbox works. I strongly believe that problem-based learning is the key for understanding complex apps like TBX (‘having the steep learning curve’ kind).
This whole workflow falls into the category of “work in progress”, so I will try to update it based on your feedback and ideas, and/or (hopefully) my future insights into the knowledge synthesis process. I find the concept of Discourse Graph and its usage in literature review intriguing - I’m not an expert by any means, just someone who likes to learn about new things.
I hope someone will find this guide helpful.
1. Useful apps
1.1 Zotero
- Install Zotero → https://www.zotero.org
- Instal ZotFile plugin for Zotero (optional, Zotfile can manage your PDFs, rename them, and store them wherever you want) → http://zotfile.com
- Instal the Better BibTeX plugin for
Zotero (amazing citekey manager) → Installation :: Better BibTeX for Zotero- Unzip and paste ‘RIS with citation key’ file into ’ ~/Zotero/translators/ ’ directory. (All credits go to @satikusala, check his video “Working with Tinderbox and Zotero”)
- RIS-citekey.js.zip (33.7 KB)
- In Zotero’s export preferences, set Item Format to ‘RIS with citation key’:
- Unzip and paste ‘RIS with citation key’ file into ’ ~/Zotero/translators/ ’ directory. (All credits go to @satikusala, check his video “Working with Tinderbox and Zotero”)
1.2 Zotero PDF Reader
Zotero 6.0 allow annotating PDF inside their own PDF reader. You can add annotations to notes in various ways + annotations added to notes will automatically include links back to the PDF page as well as citations.
- Zotero annotations template configuration (we’re going to let Tinderbox know what colour we’ve used in annotations. You can find more info about templates here)
- Go to Zotero Preferences → Advanced → Config Editor → Click ‘I accept the risk’ → Search for ‘extensions.zotero.annotations.noteTemplates.highlight’ → Double-click on its value → Copy-paste code below and confirm by clicking ‘Ok’ button:
{{if color == '#ff6666'}} <p>||RED|| {{highlight quotes='true'}} {{citation}} {{comment}}</p>
{{elseif color == '#2ea8e5'}} <p>||BLUE||  {{highlight quotes='true'}} {{citation}} {{comment}}</p>
{{elseif color == '#5fb236'}} <p>||GREEN|| {{highlight quotes='true'}} {{citation}} {{comment}}</p>
{{elseif color == '#ffd400'}} <p>||YELLOW|| {{highlight quotes='true'}} {{citation}} {{comment}}</p>
{{elseif color == '#a28ae5'}} <p>||PURPLE|| {{highlight quotes='true'}} {{citation}} {{comment}}</p>
{{else}} <p>{{highlight quotes='true'}} {{citation}} {{comment}}</p> {{endif}}
1.3 Images in Tinderbox
With version Tinderbox 9.5 comes a much better support for images, so no need for workarounds anymore!
1.4 Pandoc integration
- Install Pandoc from the official website.
- Export your Zotero library: click on ‘File’ and select ‘Export library …’ . Select ‘Better BibTex’ as the format. By checking “Keep updated”, BetterBibTex will ensure every change in Zotero will automatically update your file.
- Download your preferred citation style (CSL file can be found here)
- Go to ‘TBXConfig’ note and change value inside $HTMLPreviewCommand attribute to:
X -f markdown -t html -C --bibliography=Y --csl=Z
where:
X - folder location of Pandoc on your machine (usually something like /usr/local/bin/pandoc)
Y - exported Zotero Library location path
Z - CSL file location path
It should look something like this:
/usr/local/bin/pandoc -f markdown -t html -C --bibliography=/Users/sjh/TBXConfig/Library.bib --csl=/Users/sjh/TBXConfig/apa.csl
- Results:
2. Literature Synthesis in Tinderbox
Download TBX file (at the bottom of this post).
2.1 Zotero → Tinderbox
- To move bibliographical data to Zotero, drag and drop Zotero item into Tinderbox ‘Inbox’ or ‘Research’ container. The name of the note will automatically change to its Citekey.
- To pull annotations from PDF, right-click on Zotero item and choose ‘Add note from Annotations’. Then move them into Tinderbox under corresponding Reference.
- Select ‘#Annotations’ note, and choose ‘Explode…’ option from Note menu bar.
- In the explode menu make sure to select ‘Break at delimiter option’ and on the right side write
\n\n
. Click ‘Explode’ button.
- Select notes which contain your highlights and annotations. Right-click them, go to ‘Stamps’ and choose ‘ZoteroParse’. All of your excerpts will be moved to the new container. You can now delete ‘#Annotations’ container.
2.2 Discourse Graph
- What’s that:
Discourse graphs are an information model for bodies of knowledge that emphasize discourse moves (such as questions, claims, and evidence), and relations (such as support or opposition), rather than papers or sources as the main units.
To give an intuition for what it is, here is a figure of a visual representation of a simple discourse graph for a body of literature on bans and antisocial behaviour in online forums. You may recognize similarities to things like argument maps.
This information model (theoretically!) has high potential for augmenting individual and collective “research-grade” synthesis (e.g., lit reviews for a dissertation or grant proposal). Source
- How does it work:
When doing literature review, a researcher is looking for literature in some way connected to his Research Question. What he will find are theories, models, perspectives, frameworks etc. of various authors, written in the forms of Claims. Such claims are often supported by other Claims, which in turn are supported by Evidences. Authors of competing theories, trying to prove the correctness of their own theory (or ‘trying to get closer to the truth’), will present counterarguments. Mapping the relationships between competing Claims may be helpful for finding “points of disagreement” and new meaningful relationships between ideas, which can be later turned into a new article.
2.3 Literature Review process with Discourse Graph
-
Create a new note under ‘Synthesis Page’ container, name it with your Research Question, and change its prototype to pQuestion. You can add some context inside note’s $Text. We will come back to Synthesis Page later.
-
In the ‘Excerpts from Zotero’ you can find few kinds of notes: having Red square as a badge are Claims, Blue square are Evidences, Green square are Questions. There are also notes having Quote badge and the rest, common notes. Notes with the square badges have them assigned depending on the colour of highlight used in Zotero PDF Reader. Notes with Quote badge are quotes. Notes without assigned prototype are those highlighted in Zotero using yellow or purple colour. You can change their prototype if you like. As you can see, part of those have funny names like ‘Annotation of a linked quote ID …’, rename them to be more understandable.
Important: You don’t need to import annotations from Zotero to make Claim, Evidence or Question notes, simply create a new note under Reference note and change its prototype.
- Claim, Evidence and Question notes have $CitationKey of their grandparent note (Reference Note).
- Quote notes contain metadata information like quote page number, link to Zotero item library, link to the PDF page and citationkey. In the $Text we can see previously highlighted text inside quotes and citationkey in the brackets.
- All Quote notes are linked to theirs annotations, so you will never lose your sources. To see ‘Link panel’, go to Window tab and choose Links ([CMD+7])
- Claim, Evidence and Question notes have $CitationKey of their grandparent note (Reference Note).
-
It’s time to link! Evidence/Claim can support/oppose (Link type: ‘Supports’,‘Opposes’) Claims, and Claims can inform(Link type: ‘Informs’) Research Question. You should link not only inside the reference container, but even more importantly, between other sources’ notes. Claim note’s badge change from red square to red dot when linked to Question note with ‘Informs’ link type.
- If you feel a need to give your link some more context, rather than merely link it with above-mentioned link types, you can do it through ‘Browse Links’ option in right-click menu list. Choose the link you want to describe, and you should see a blank space at the bottom of the box where you can write your thoughts.
- If you feel a need to give your link some more context, rather than merely link it with above-mentioned link types, you can do it through ‘Browse Links’ option in right-click menu list. Choose the link you want to describe, and you should see a blank space at the bottom of the box where you can write your thoughts.
-
Synthesis Map gives you an overview of your Discourse Graph. Choose a Research Question under investigation in the $ResearchQuestion. $NeighborsBetween is a number of links between the designated note (Research Question) and last node of your graph. You can start with 10 and experiment later with other values. $AgentOn turns on and off agent. To summarize: Choose Research Question from the list, enter the number, and insert a tick mark next to AgentOn. Update agents twice (hit [Cmd]+[Ctrl]+[=] twice), and turn off AgentOn. Synthesis Map agent should find all notes linked to your Research Question.
-
Go to ‘Map: Synthesis Map’ tab.
-
Select all notes ([CMD+A]) and chose ‘Expand Proportionately’
-
Our Synthesis Map is still pretty messy, let’s clean it a little. Go to View menu tab → Arrange → Dance.
- Synthesis Map serves only a preview purpose. You can edit a note’s attributes, but any linking done inside an agent won’t ‘sync’ with notes outside an agent.
-
-
In the third tab, you can see your notes in the hyperbolic view. Compared to Synthesis Map view, hyperbolic view shows also Link Types other than “Supports”,“Opposes” and “Informs”. Usage of too many Link Types may affect this view and make it difficult to see (discourse graph) connections between notes. You also can’t move your notes the way you can in the Map View. There is an advantage of using this view over Synthesis Map view - you can freely link notes.
-
‘Outline: Synthesis Map’ tab shows us number of overall Inbound links, as well as ‘Supports’ and ‘Opposes’ inbound link types.
-
Last four tabs i.e. ‘Outline: Claims’, ‘Outline: Evidences’, ‘Outline: Questions’ and ‘Outline: References’ help to track all Claims, Evidences, Questions and References we have in our document.
2.4 Synthesis Page
-
‘Synthesis Page’ is a final destination of your Claim and Evidence notes that are connected to your Research Question. You should arrange them in hierarchical form, where:
- The first child of ‘Synthesis Page’ should be your Research Question.
- Children of your Research Question are notes linked to it with link type ‘Informs’.
- Children of those are linked to them with link type ‘Supports’ or Opposes’.
- and so on, and so on.
- Important: If there’s a note that supports or opposes the other note in more than one place, you need to make an alias (right-click on the note → Make Alias) and link it to that note.
-
Our work is almost done. Now we go to ‘Synthesis Page’ note and chose our $HTMLExportTemplate. There our two templates written for ‘Synthesis Page’: ‘/Templates/Synthesis Outline’ and ‘/Templates/Synthesis Diagram’. Choose which serves you better and switch to Preview pane.
The results will be as follows:-
for ‘/Templates/Synthesis Outline’
-
for ‘/Templates/Synthesis Diagram’
-
-
You can export your Preview using Tinderbox built-in export: Select ‘Synthesis Page’ note → File → Export Selected Note
2.5 Other things worth mentioning
- Prototypes pClaim, pEvidence and pQuestion use Markdown (CommonMark) in their $Text.
- Questions inside Reference notes are there to guide reading and critical engagement with the material.
- Notes used in this TBX file come from here.
TBX file:
Discourse_Graph_v.0.1.tbx (6.8 MB)
Discourse_Graph_v.0.2.tbx (7.0 MB)
Discourse_Graph_v.0.2.5.tbx (7.1 MB)
Discourse_Graph_v.0.3.tbx (7.0 MB)
Discourse_Graph_v.0.3.1.tbx (7.1 MB)
Discourse_Graph_v.0.3.2.tbx (522.3 KB)
Discourse_Graph_v.0.3.3.tbx (503.5 KB)
Discourse_Graph_v.0.4.tbx (525.4 KB)
That’s all. I hope this guide will be of use for someone. English is not my mother tongue, so excuse me for errors I’ve made in the text. If you have any questions, or problems with understanding because something is not written clear enough, please ask!
Thanks!
Arek
05/05/2022 Update:
- Most of action code has been moved to functions for clarity and better code editing experience.
- Bugfixes:
- $ResearchQuestion has been changed from string to list type.
- Fixed a logic gap in fClaimEdict. Now badge go back to red square if not linked with ‘Informs’ link type.
05/05/2022 23:35 Update:
- With @mwra help even more and better written action code has been moved to functions.
- Bugfixes:
- $ResearchQuestion has been changed from list to string type back again.
- Known issues:
- Synthesis Map not working as intended.
06/05/2022 Update:
- Bugfixes:
- Synthesis Map works as intended.
- Known issues:
- Synthesis Map $ResearchQuestion dropdown not cleaning out old Questions.
07/05/2022 Update:
- Added:
- Added
^value($CitationKey)^
in ‘Synthesis Outline item’ template to show $CitationKey between square brackets, just after relationship description. - fSynthesisMapAction now also change container notes’ $TitleHeight and $Width to make $Name more readable.
- Added
- Known issues:
- Synthesis Map $ResearchQuestion dropdown not cleaning out old Questions.
09/05/2022 Update - v. 0.3.2
- Fixes:
- The file size has been reduced. ‘Readme’ note inside TBX document instead of having text with images, now contains a link to this thread.
- Small query action code fixes.
10/05/2022 Update - v. 0.3.3
- Fixes:
- $ResearchQuestion has been changed from string to list type to help with cleaning old Questions in $ResearchQuestion attribute value dropdown.
27/05/2022 Update- v. 0.4
- Added:
- Instruction how to use Pandoc inside Tinderbox for showing bibliographic references in the Preview pane.
15/12/2022 Update- v. 0.4.0.1
Deleted paragraph 1.3 about working with images in Tinderbox.
I’ve lately changed my workflow substantially. I’m planning to update this topic as soon as I can.