Skip to content
Showcase/Chemical-Disease Relation Extraction (BC5CDR)
advancedtext

Chemical-Disease Relation Extraction (BC5CDR)

Extract chemical-disease relations from biomedical literature. Based on BioCreative V CDR task. Identify chemical and disease entities, then annotate causal relationships between them (chemical induces disease).

PERORGLOCPERORGLOCDATESelect text to annotate

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
# Chemical-Disease Relation Extraction (BC5CDR)
# Based on BioCreative V CDR Task
# Guidelines: https://biocreative.bioinformatics.udel.edu/
#
# This task identifies chemical-induced disease (CID) relations from
# biomedical abstracts. A CID relation exists when a chemical is
# reported to cause or induce a disease.
#
# Entity Definitions:
# - Chemical: Drugs, small molecules, elements, chemical compounds
# - Disease: Diseases, disorders, symptoms, adverse effects
#
# Relation Types:
# - CID (Chemical-Induced Disease): The chemical causes or induces the disease
# - No Relation: Entities are mentioned but no causal relationship
#
# Annotation Guidelines:
# 1. First identify all chemical and disease mentions
# 2. For each chemical-disease pair, determine if a CID relation exists
# 3. CID requires evidence of causation (not just co-occurrence)
# 4. Include: adverse effects, side effects, toxicity
# 5. Exclude: treatments (chemical treats disease), preventions
# 6. Hypothetical or negated relations should not be annotated
#
# Evidence Patterns for CID:
# - "X causes Y", "X-induced Y", "X leads to Y"
# - "Side effects of X include Y"
# - "Y was observed in patients taking X"

annotation_task_name: "Chemical-Disease Relation Extraction"
task_dir: "."

data_files:
  - sample-data.json
item_properties:
  id_key: "id"
  text_key: "text"

output_annotation_dir: "annotation_output/"
output_annotation_format: "json"

annotation_schemes:
  # Step 1: Mark chemical entities
  - annotation_type: span
    name: chemicals
    description: "Highlight all CHEMICAL mentions (drugs, compounds, elements)"
    labels:
      - "Chemical"
    label_colors:
      "Chemical": "#3b82f6"
    tooltips:
      "Chemical": "Drugs, medications, chemical compounds, elements, or small molecules"
    allow_overlapping: false

  # Step 2: Mark disease entities
  - annotation_type: span
    name: diseases
    description: "Highlight all DISEASE mentions (diseases, disorders, symptoms, adverse effects)"
    labels:
      - "Disease"
    label_colors:
      "Disease": "#ef4444"
    tooltips:
      "Disease": "Diseases, disorders, medical conditions, symptoms, or adverse effects"
    allow_overlapping: false

  # Step 3: Identify CID relations
  - annotation_type: radio
    name: cid_relation
    description: "Is there a Chemical-Induced Disease (CID) relation in this text?"
    labels:
      - "Yes - CID relation present"
      - "No - No causal relation"
      - "Uncertain"
    tooltips:
      "Yes - CID relation present": "The text states or implies that a chemical causes/induces a disease"
      "No - No causal relation": "Chemicals and diseases are mentioned but no causation is stated"
      "Uncertain": "The relationship is ambiguous or hypothetical"

  # Step 4: Relation evidence
  - annotation_type: span
    name: evidence
    description: "Highlight the text that indicates the CID relationship (if present)"
    labels:
      - "CID Evidence"
    label_colors:
      "CID Evidence": "#22c55e"
    tooltips:
      "CID Evidence": "Words or phrases that indicate the chemical causes the disease"
    allow_overlapping: true

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": "cdr_001",
    "text": "Amiodarone-induced thyroid dysfunction is a well-recognized complication. In this study, we report three cases of amiodarone-induced thyrotoxicosis requiring thyroidectomy."
  },
  {
    "id": "cdr_002",
    "text": "Metformin is an effective treatment for type 2 diabetes. Common side effects include gastrointestinal symptoms such as nausea and diarrhea."
  }
]

// ... and 8 more items

Try it live — no install

Boot the real Potato server in your browser (WebAssembly) and annotate with this exact config. Nothing leaves your machine.

▶ Run live in your browser

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/information-extraction/chemical-disease-relations
potato start config.yaml

Dataset & paper

Li et al., Database 2016

Citation (BibTeX)

bibtex
@article{li2016biocreative,
    title = "{BioCreative V CDR} task corpus: a resource for chemical disease relation extraction",
    author = "Li, Jiao  and Sun, Yueping  and Johnson, Robin J  and Sciaky, Daniela  and Wei, Chih-Hsuan  and Leaman, Robert  and Davis, Allan Peter  and Mattingly, Carolyn J  and Wiegers, Thomas C  and Lu, Zhiyong",
    journal = "Database",
    volume = "2016",
    year = "2016",
    publisher = "Oxford University Press",
    url = "https://academic.oup.com/database/article/doi/10.1093/database/baw068/2630414"
}

Details

Annotation Types

spanradio

Domain

BiomedicalPharmacovigilanceHealthcare

Use Cases

Relation ExtractionDrug SafetyBiomedical Text Mining

Tags

biomedicalrelation-extractionchemicalsdiseasesbc5cdrpharmacovigilance

Found an issue or want to improve this design?

Open an Issue