ReCAM - Reading Comprehension of Abstract Meaning
Multiple-choice cloze-style reading comprehension requiring understanding of abstract concepts, based on SemEval-2021 Task 4 (Zheng et al.). Annotators select the best word to fill a blank in a passage from five abstract-concept options.
Configuration Fileconfig.yaml
This Potato config reproduces the annotation task. Save it as config.yaml and run potato start config.yaml to try it.
# ReCAM - Reading Comprehension of Abstract Meaning
# Based on Zheng et al., SemEval 2021
# Paper: https://aclanthology.org/2021.semeval-1.4/
# Dataset: https://github.com/boyuanzheng010/SemEval2021-Reading-Comprehension-of-Abstract-Meaning
#
# Annotators read a passage with a blank and select the best word from
# five options to fill the blank. Options are abstract concepts that
# require understanding beyond surface-level reading.
annotation_task_name: "ReCAM - Reading Comprehension of Abstract Meaning"
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: radio
name: answer_choice
description: "Select the best word to fill the blank in the passage."
labels:
- "A"
- "B"
- "C"
- "D"
- "E"
keyboard_shortcuts:
"A": "1"
"B": "2"
"C": "3"
"D": "4"
"E": "5"
tooltips:
"A": "Select option A"
"B": "Select option B"
"C": "Select option C"
"D": "Select option D"
"E": "Select option E"
annotation_instructions: |
You will see a passage with a blank (marked as _____). Your task is to select
the best word from five options (A-E) to fill the blank.
1. Read the entire passage carefully.
2. Consider the meaning of each option in the context of the passage.
3. Select the option that best completes the passage.
Note: The correct answers are typically abstract concepts (e.g., emotions, ideas,
qualities) rather than concrete nouns. Pay attention to the overall meaning and
tone of the passage.
html_layout: |
<div style="padding: 15px; max-width: 800px; margin: auto;">
<div style="background: #f0f9ff; border: 1px solid #bae6fd; border-radius: 8px; padding: 16px; margin-bottom: 16px;">
<strong style="color: #0369a1;">Passage:</strong>
<p style="font-size: 16px; line-height: 1.7; margin: 8px 0 0 0;">{{text}}</p>
</div>
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 16px;">
<div style="background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 12px;">
<strong style="color: #475569;">A:</strong> {{option_a}}
</div>
<div style="background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 12px;">
<strong style="color: #475569;">B:</strong> {{option_b}}
</div>
<div style="background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 12px;">
<strong style="color: #475569;">C:</strong> {{option_c}}
</div>
<div style="background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 12px;">
<strong style="color: #475569;">D:</strong> {{option_d}}
</div>
<div style="background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: 12px;">
<strong style="color: #475569;">E:</strong> {{option_e}}
</div>
</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
[
{
"id": "recam_001",
"text": "The community came together after the natural disaster, showing remarkable _____ in the face of adversity. Neighbors helped rebuild homes and shared resources freely.",
"option_a": "resilience",
"option_b": "confusion",
"option_c": "hostility",
"option_d": "indifference",
"option_e": "fragility"
},
{
"id": "recam_002",
"text": "Despite years of _____ between the two nations, the leaders finally agreed to sit down for peace negotiations. Both sides acknowledged that continued conflict served no one.",
"option_a": "harmony",
"option_b": "cooperation",
"option_c": "animosity",
"option_d": "friendship",
"option_e": "prosperity"
}
]
// ... and 8 more itemsGet This Design
Clone or download from the repository
Quick start:
git clone https://github.com/davidjurgens/potato-showcase.git cd potato-showcase/semeval/2021/task04-recam-abstract-meaning potato start config.yaml
Dataset & paper
Zheng et al., SemEval 2021
Citation (BibTeX)
@inproceedings{zheng-etal-2021-semeval,
title = "{S}em{E}val-2021 {T}ask 4: {R}eading {C}omprehension of {A}bstract {M}eaning",
author = "Zheng, Boyuan and Yang, Xiaoyu and Ruan, Yu-Ping and Ling, Zhenhua and Liu, Quan and Wei, Si and Zhu, Xiaodan",
booktitle = "Proceedings of the 15th International Workshop on Semantic Evaluation (SemEval-2021)",
month = aug,
year = "2021",
publisher = "Association for Computational Linguistics",
pages = "37--50",
doi = "10.18653/v1/2021.semeval-1.4",
url = "https://aclanthology.org/2021.semeval-1.4/"
}Details
Annotation Types
Domain
Use Cases
Tags
Found an issue or want to improve this design?
Open an IssueRelated Designs
AdMIRe - Advancing Multimodal Idiomaticity Representation
Multimodal idiomaticity task (SemEval-2025 Task 1, Subtask A): given a potentially idiomatic nominal compound in a context sentence, annotators rank five candidate images by how well each represents the sense in which the compound is used.
AfriSenti - African Language Sentiment
Sentiment analysis for tweets in African languages, classifying text as positive, negative, or neutral. Covers 14 African languages including Amharic, Hausa, Igbo, Yoruba, and Swahili. Based on SemEval-2023 Task 12 (Muhammad et al.).
Argument Reasoning in Civil Procedure
Legal argument reasoning task from SemEval-2024 Task 5. Given a short introduction to a U.S. civil procedure topic, a question, and a candidate answer (a possible solution argument), annotators perform binary classification: judge whether the answer candidate is correct (True) or incorrect (False). Questions and answers are drawn from a civil procedure textbook widely used in U.S. law schools.