Skip to content

DiscourseGraphs/discourse-graph-obsidian

Repository files navigation

Shows project promo image in light and dark mode

Discourse Graphs for Obsidian

The Discourse Graph extension enables Obsidian users to seamlessly add additional semantic structure to their notes, including specified page types and link types that model scientific discourse, to enable more complex and structured knowledge synthesis work, such as a complex interdisciplinary literature review, and enhanced collaboration with others on this work.

For more information about Discourse Graphs, check out our website at https://discoursegraphs.com

Installation

Prerequisites

Install BRAT (Beta Reviewer's Auto-update Tester)

  1. Open Obsidian Settings
  2. Go to Community Plugins and disable Restricted Mode
  3. Click "Browse" and search for "BRAT" BRAT
  4. Install BRAT and enable it

Install DataCore via BRAT

  1. Open Obsidian Settings
  2. Go to "Community Plugins" → "BRAT"
  3. Click "Add Beta Plugin" Add plugin
  4. Enter the repository URL: https://github.com/blacksmithgu/datacore and choose "Latest version" Add datacore
  5. Check the box for "Enable after installing the plugin"
  6. Click "Add plugin"

Install Discourse Graphs

  1. Open Obsidian Settings

  2. Go to "Community Plugins" → "BRAT"

  3. Click "Add Beta Plugin" Add plugin

  4. Enter the repository URL: https://github.com/DiscourseGraphs/discourse-graph-obsidian and choose "Latest version" Add discourse graph

  5. Check the box for "Enable after installing the plugin"

  6. Click "Add Plugin"

Creating Nodes and Relationships

Configure Node and Relationship Types

  1. Open Obsidian Settings
  2. Navigate to the "Discourse Graphs" settings tab

Edit Node Types

  • Under "Node Types," click "Add Node Type"

  • Enter a name for your node type (e.g., "Claim", "Evidence", "Question")

  • Add the format for your node type. eg a claim node will have page title "CLM - {content}"

  • Template (Optional): Select a template from the dropdown to automatically apply template content when creating nodes of this type

    • Templates are sourced from Obsidian's core Templates plugin
    • Ensure you have the Templates plugin enabled and configured with a template folder
    • The dropdown will show all available template files from your configured template folder

    add node types with template

    • Click "Save Changes"
  • To create a new template:

    • Create new folder to store templates new folder

    • Specify template folder location in plugin settings menu template

    • Create new file in template folder (A) and add text to file (B) create template file

    add node types

    • Click "Save Changes"

Edit Relation Types

  • Under "Relation Types," click "Add Relationship Type"
  • A relation type is a kind of relationship that can exist between any two node types
  • Enter a name for your relationship (e.g., "supports", "contradicts")
  • Enter the complement label (e.g., "is supported by", "is contradicted by") add relation type
  • Click "Save Changes"

Define possible relations between nodes

  • Open the Discourse Relations tab in the Discourse Graph settings discourse relation
  • Choose Source Node Type, Relation Type, and Target Node Type choose relation
  • Once you see the source, relation, and target selected: final relations E.g: this means that Claim nodes can supports Questions nodes
  • Click "Save changes"

Using Discourse Graphs

Instantiate a Node

  • Select the text you want to turn into a Discourse Node select text

  • There are two ways you can create a node from here:

    1. Using command keys: Cmd + \

    - As you press these keys, the Node Menu will open up as a popup

    node menu

    • Select the node type you want to turn the text into
    • Voila, you've created a new discourse node node created
    1. Right-click menu:
    • Alternatively, you can right-click on the selected text right click menu
    • Then choose a node type from the "Turn into Discourse Node" menu

Open Discourse Context

  • Click on the telescope icon on the left bar open discourse context
  • Alternatively, you can set a hotkey to toggle the Discourse Context view or access it via the Command Palette command palette

Instantiate a Relationship

  1. Open a note that you want to create a relationship from
  2. Open the Discourse Context open discourse context
  3. Click "Add a new relation"
  4. The dropdown that shows Relationship Types will be all available relations that you have defined in the setings.
    It will also show you what node type you can link with add relation
  5. Search the nodes you want to link with by the title search
  6. Click "Confirm", now a new relationship has been created relationship created

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •