Skip to content
advancedtext

PDTB 2.0 - Discourse Relations Tree Annotation

Discourse relation annotation with tree structure, based on the Penn Discourse TreeBank 2.0 (Prasad et al., LREC 2008). Annotators identify discourse connectives, mark argument spans, and build hierarchical discourse trees representing how text segments relate to each other.

About this dataset

The Penn Discourse Treebank (PDTB) 2.0 annotates how clauses and sentences connect — the discourse relations that hold a text together. Prasad and colleagues released it at LREC 2008 over the Wall Street Journal portion of the Penn Treebank.

Each relation links two arguments, usually through a connective such as 'because', 'but', or 'then'. Annotators identified the connective, marked its two argument spans, and assigned a sense from a three-level hierarchy of class, type, and subtype.

The corpus covers about 40,600 relations across a one-million-word corpus. Relations are typed as Explicit, Implicit, AltLex, EntRel, or NoRel, and the four top-level senses are Temporal, Contingency, Comparison, and Expansion. Attribution — who a relation is attributed to — is also marked.

The Potato config below reproduces the task with a span scheme for the arguments plus a tree scheme for the sense hierarchy, so you can annotate discourse relations and their senses. Use it to extend PDTB-style annotation to a new genre or language.

Released
LREC 2008
Corpus
WSJ / Penn Treebank (~1M words)
Relations
~40,600
Relation types
Explicit, Implicit, AltLex, EntRel, NoRel
Top-level senses
Temporal, Contingency, Comparison, Expansion
Sense hierarchy
3 levels (class → type → subtype)
Rate responses and select best pathBest path

Configuration Fileconfig.yaml

This Potato config reproduces the annotation task. Save it as config.yaml and run potato start config.yaml to try it.

yaml
# PDTB 2.0 - Discourse Relations Tree Annotation
# Based on Prasad et al., LREC 2008
# Paper: https://aclanthology.org/L08-1093/
# Dataset: https://catalog.ldc.upenn.edu/LDC2008T05
#
# This task involves two complementary annotation layers:
# 1. Span annotation: Mark discourse connectives and their argument spans
#    - Connective: The explicit discourse connective (e.g., "because", "however")
#    - Arg1: The first argument of the discourse relation
#    - Arg2: The second argument (syntactically bound to the connective)
#
# 2. Tree annotation: Build hierarchical discourse structure showing
#    how text segments relate to each other through:
#    - Temporal: before, after, simultaneous
#    - Contingency: cause, condition
#    - Comparison: contrast, concession
#    - Expansion: conjunction, restatement, alternative
#
# Guidelines:
# - Arg2 is always the argument syntactically bound to the connective
# - Arg1 is the other argument in the relation
# - Implicit relations exist between adjacent sentences without connectives

annotation_task_name: "PDTB 2.0: Discourse Relations Tree Annotation"
task_dir: "."

data_files:
  - sample-data.json

item_properties:
  id_key: "id"
  text_key: "text"

output_annotation_dir: "annotation_output/"
output_annotation_format: "json"

port: 8000
server_name: localhost

annotation_schemes:
  - annotation_type: span
    name: discourse_spans
    description: "Mark discourse connectives and their argument spans (Arg1, Arg2)"
    labels:
      - "Connective"
      - "Arg1"
      - "Arg2"
    tooltips:
      "Connective": "The explicit discourse connective word or phrase (e.g., because, however, although)"
      "Arg1": "The first argument of the discourse relation"
      "Arg2": "The second argument, syntactically bound to the connective"

  - annotation_type: tree_annotation
    name: discourse_tree
    description: "Build a hierarchical discourse tree showing how text segments relate through temporal, causal, comparative, and expansive relations"

annotation_instructions: |
  Annotate discourse relations in the text:
  1. Identify explicit discourse connectives (e.g., "because", "however", "although", "and").
  2. Mark the connective span, then mark Arg1 and Arg2 for each relation.
  3. Arg2 is always the argument syntactically bound to the connective.
  4. Build the discourse tree to show hierarchical relations between segments.
  5. Relation types: Temporal, Contingency, Comparison, Expansion.

html_layout: |
  <div style="padding: 15px; max-width: 800px; margin: auto;">
    <div style="background: #faf5ff; border: 1px solid #e9d5ff; border-radius: 8px; padding: 16px; margin-bottom: 16px;">
      <strong style="color: #7c3aed;">Text:</strong>
      <p style="font-size: 16px; line-height: 1.9; margin: 8px 0 0 0;">{{text}}</p>
    </div>
    <div style="background: #fefce8; border: 1px solid #fde68a; border-radius: 8px; padding: 12px;">
      <p style="font-size: 13px; color: #713f12; margin: 0;"><strong>Instructions:</strong> Highlight connectives and argument spans, then build the discourse tree structure.</p>
    </div>
  </div>

allow_all_users: true
instances_per_annotator: 50
annotation_per_instance: 2
allow_skip: true
skip_reason_required: false

Sample Datasample-data.json

json
[
  {
    "id": "pdtb_001",
    "text": "The company reported strong quarterly earnings. However, its stock price declined because investors were concerned about slowing growth in the Asian market. As a result, several analysts downgraded their recommendations."
  },
  {
    "id": "pdtb_002",
    "text": "Although the experiment yielded promising results, the sample size was too small to draw definitive conclusions. The researchers plan to replicate the study with a larger cohort. In addition, they will employ more rigorous statistical methods to account for potential confounds."
  }
]

// ... and 8 more items

Get This Design

View on GitHub

Clone or download from the repository

Quick start:

git clone https://github.com/davidjurgens/potato-showcase.git
cd potato-showcase/text/discourse/pdtb-discourse-relations-tree
potato start config.yaml

Dataset & paper

Prasad et al., LREC 2008

Citation (BibTeX)

bibtex
@inproceedings{prasad-etal-2008-penn,
    title = "The {P}enn {D}iscourse {T}ree{B}ank 2.0",
    author = "Prasad, Rashmi and Dinesh, Nikhil and Lee, Alan and Miltsakaki, Eleni and Robaldo, Livio and Joshi, Aravind and Webber, Bonnie",
    booktitle = "Proceedings of the Sixth International Conference on Language Resources and Evaluation ({LREC}'08)",
    month = may,
    year = "2008",
    address = "Marrakech, Morocco",
    publisher = "European Language Resources Association (ELRA)",
    url = "https://aclanthology.org/L08-1093"
}

Details

Annotation Types

tree_annotationspan

Domain

NLPLinguistics

Use Cases

Discourse AnalysisCoherenceText Structure

Tags

pdtbdiscoursetree-structureconnectivescoherencelrec2008

Found an issue or want to improve this design?

Open an Issue