Maathis-com/ohada-ccja-corpus
收藏资源简介:
--- language: - fr license: cc-by-4.0 size_categories: - 1K-10K task_categories: - text-classification - summarization - token-classification - text-generation tags: - legal - african-nlp - ohada - court-decisions - francophone-africa - legal-nlp - low-resource pretty_name: OHADA CCJA Court Decisions Corpus dataset_info: features: - name: case_id dtype: string - name: case_number dtype: string - name: date dtype: date32 - name: year dtype: int32 - name: legal_domain dtype: string - name: case_type dtype: string - name: jurisdiction dtype: string - name: formation dtype: string - name: plaintiff dtype: string - name: defendant dtype: string - name: articles_cited dtype: string - name: dispute_summary dtype: string - name: reasoning dtype: string - name: ruling dtype: string - name: full_text dtype: string - name: source dtype: string splits: - name: train num_examples: 2841 - name: validation num_examples: 609 - name: test num_examples: 609 --- # OHADA-CCJA Court Decisions Corpus ## Dataset Description A curated corpus of **4,059 court decisions** from the **Cour Commune de Justice et d'Arbitrage (CCJA)**, the supranational court of the Organisation pour l'Harmonisation en Afrique du Droit des Affaires (OHADA). OHADA harmonizes business law across **17 African member states**: Benin, Burkina Faso, Cameroon, Central African Republic, Chad, Comoros, Democratic Republic of Congo, Republic of Congo, Côte d'Ivoire, Equatorial Guinea, Gabon, Guinea, Guinea-Bissau, Mali, Niger, Senegal, and Togo. This dataset provides structured access to CCJA jurisprudence spanning over two decades (1997–2023), making it a unique resource for African legal NLP research. ### Why This Dataset Matters Legal NLP is a rapidly growing field, yet virtually all existing benchmarks and datasets focus on Common Law (US, UK) or EU/Continental European legal systems. African legal systems — and in particular pan-African harmonized law — are entirely absent from the research landscape. This dataset addresses that gap by providing: - **The first structured, ML-ready corpus of OHADA CCJA decisions** in any language - **Rich annotation layers** — not just full text, but separately extracted dispute summaries, judicial reasoning, rulings, legal domain labels, and cited articles - **Pan-African geographic coverage** — cases involving parties and disputes from all 17 OHADA member states - **Temporal depth** — decisions spanning from 1997 to 2023, enabling longitudinal legal analysis ### Supported Tasks | Task | Input | Target | Metric | |------|-------|--------|--------| | **Legal domain classification** | `full_text` or `dispute_summary` | `legal_domain` (16 classes) | F1-macro | | **Legal judgment summarization** | `full_text` | `ruling` or `dispute_summary` | ROUGE-L | | **Legal reasoning extraction** | `dispute_summary` + `ruling` | `reasoning` | ROUGE-L, BERTScore | | **Legal NER** | `full_text` | Parties, jurisdictions, legal articles | Entity-level F1 | | **Cited article prediction** | `full_text` or `dispute_summary` | `articles_cited` | Recall@k | ### Languages French (fr) — the working language of the OHADA CCJA. ## Dataset Structure ### Data Fields | Field | Type | Description | Completeness | |-------|------|-------------|--------------| | `case_id` | string | Unique identifier (e.g., `OHADA-CCJA-00001`) | 100% | | `case_number` | string | Official case number (Numéro d'arrêt) | 94.8% | | `date` | date | Date of the decision (ISO 8601) | 95.3% | | `year` | int | Year extracted from date | 95.3% | | `legal_domain` | string | Area of OHADA law | 99.8% | | `case_type` | string | Subject matter (e.g., Saisie immobilière) | 90.5% | | `jurisdiction` | string | Court (CCJA) | 100% | | `formation` | string | Chamber (Première/Deuxième/Troisième chambre) | 1.0% | | `plaintiff` | string | Name(s) of the plaintiff(s) | 86.9% | | `defendant` | string | Name(s) of the defendant(s) | 85.6% | | `articles_cited` | string | Legal articles referenced in the decision | 85.4% | | `dispute_summary` | string | Summary of the dispute (Exposé du litige) | 99.8% | | `reasoning` | string | Court's reasoning (Motif) | 27.1% | | `ruling` | string | Final ruling (Dispositif) | 99.8% | | `full_text` | string | Complete text of the decision | 100% | | `source` | string | Provenance: `file1`, `file2`, or `both` | 100% | **Note on field completeness:** This dataset was compiled from two complementary sources with different annotation depths. The "reasoning" field (court's motif) is available for approximately 1,100 cases from Source 1. The "articles_cited", "plaintiff", and "defendant" fields are primarily available from Source 2 (approximately 3,500 cases). The "source" column indicates provenance, allowing researchers to filter for task-specific subsets. See "Source Data" below. ### Data Splits | Split | Cases | Purpose | |-------|-------|---------| | `train` | 2,841 | Model training | | `validation` | 609 | Hyperparameter tuning | | `test` | 609 | Final evaluation | Splits are stratified by `legal_domain` to preserve class proportions across all splits. ### Legal Domain Distribution The `legal_domain` field covers **16 categories** across the major branches of OHADA harmonized law: | Legal Domain | Count | % | |---|---|---| | Droit des voies d'exécution (Enforcement law) | 2,144 | 52.8% | | Droit des sociétés commerciales et GIE (Commercial companies) | 479 | 11.8% | | Droit commercial général (General commercial law) | 428 | 10.5% | | Droit des procédures collectives (Insolvency) | 256 | 6.3% | | Droit des sûretés (Securities law) | 195 | 4.8% | | Règlement de procédure de la CCJA (CCJA procedural rules) | 188 | 4.6% | | Droit des sociétés coopératives (Cooperative law) | 155 | 3.8% | | Droit de l'arbitrage (Arbitration law) | 136 | 3.4% | | Droit des contrats de transport par route (Road transport contracts) | 41 | 1.0% | | Droit des contrats (Contract law) | 13 | 0.3% | | Droit des assurances (Insurance law) | 8 | 0.2% | | Other rare categories | 16 | 0.4% | ## Dataset Creation ### Source Data The corpus was compiled from two complementary sources of publicly available CCJA decisions: - **Source 1** (1,115 unique cases after deduplication): Decisions with extracted judicial reasoning (`reasoning`/motif), dispute summaries, and rulings. These are typically original court decision texts scraped from OHADA legal databases. - **Source 2** (3,642 unique cases after deduplication from 10,410 raw records): Decisions with cited legal articles (`articles_cited`), detailed party names (`plaintiff`/`defendant`), and descriptive case type labels (`case_type`). These include annotated case analyses with structured metadata. **548 cases were present in both sources** and were merged to combine the richest available annotations. The final dataset contains 4,059 unique cases. **Field availability by source:** | Field | Source 1 only (`file1`) | Source 2 only (`file2`) | Merged (`both`) | |-------|------------------------|------------------------|------------------| | `reasoning` | ✅ | ❌ | ✅ | | `articles_cited` | ❌ | ✅ | ✅ | | `plaintiff` / `defendant` | Sparse (~3%) | ✅ (~95%) | ✅ | | `case_type` (descriptive) | Generic | ✅ Descriptive | ✅ Descriptive | | `dispute_summary` | ✅ | ✅ | ✅ (best of both) | | `ruling` | ✅ | ✅ | ✅ (best of both) | ### Preprocessing 1. **Deduplication**: Content-hash-based deduplication removed 6,768 duplicates from Source 2 and 33 from Source 1, plus 3 cross-source duplicates 2. **Label normalization**: Spelling and accent variants in `legal_domain` were harmonized (e.g., "suretés" → "sûretés"), reducing from 18 raw labels to 16 clean categories 3. **Date parsing**: Dates converted from mixed formats (dd/mm/yyyy and French text like "27 avril 2015") to ISO 8601. A small number of implausible dates (pre-1995 or post-2024) resulting from parsing errors were set to null 4. **Schema unification**: Columns standardized to English names with consistent types 5. **Cross-source merge**: For the 548 overlapping cases, the most complete value for each field was retained using a coalesce strategy (e.g., `reasoning` from Source 1, `articles_cited` from Source 2, `plaintiff`/`defendant` preferring Source 2 where populated) ### Ethical Considerations - **Public records**: All CCJA decisions are matters of public record, publicly accessible through official OHADA channels - **Party names**: Names of litigants appear as published in official court records. Researchers working with this data should consider whether their downstream applications require further anonymization - **Jurisdictional scope**: OHADA law governs business disputes; this corpus does not contain criminal cases or cases involving minors - **Class imbalance**: The corpus reflects the CCJA's actual caseload, which skews toward enforcement law (~53%) and commercial disputes. This distribution mirrors real litigation patterns but may not represent the full breadth of legal issues in OHADA member states. Researchers should account for this imbalance in model training and evaluation ### Licensing This dataset is released under **CC-BY-4.0**. OHADA court decisions are public legal documents. The added value of this dataset lies in its structuring, cleaning, annotation, and packaging for ML research. ## Usage ### Loading with HuggingFace Datasets ```python from datasets import load_dataset dataset = load_dataset("Maathis-com/ohada-ccja-corpus") # Access splits train = dataset["train"] print(f"Training examples: {len(train)}") print(train[0]) ``` ### Example: Legal Domain Classification ```python from datasets import load_dataset dataset = load_dataset("Maathis-com/ohada-ccja-corpus") # Use dispute_summary as input, legal_domain as label train_texts = dataset["train"]["dispute_summary"] train_labels = dataset["train"]["legal_domain"] ``` ### Example: Filter for Cases with Court Reasoning ```python # ~1,100 cases have the court's reasoning (motif) reasoning_subset = dataset["train"].filter(lambda x: x["reasoning"] is not None) print(f"Cases with reasoning: {len(reasoning_subset)}") ``` ### Example: Filter for Cases with Cited Articles ```python # ~3,500 cases have cited legal articles articles_subset = dataset["train"].filter(lambda x: x["articles_cited"] is not None) print(f"Cases with cited articles: {len(articles_subset)}") ``` ### Example: Full-Feature Subset (Merged Cases) ```python # 546 cases have ALL fields populated (from both sources) full_subset = dataset["train"].filter(lambda x: x["source"] == "both") print(f"Cases with all fields: {len(full_subset)}") ``` ## Citation If you use this dataset in your research, please cite: ```bibtex @dataset{ohada_ccja_corpus_2026, title={OHADA-CCJA Court Decisions Corpus: A Dataset for African Legal NLP}, author={Foutse Yuehgoh, Priyanka N, Patrick NGUETCHOUESSI}, year={2026}, url={https://huggingface.co/datasets/Maathis-com/ohada-ccja-corpus}, note={Submitted at Deep Learning Indaba 2026, Nigeria} } ``` ## Contact For questions about this dataset, please contact the dataset creator or open an issue on the [HuggingFace repository](https://huggingface.co/datasets/Maathis-com/ohada-ccja-corpus/discussions).
语言: - 法语 许可证:CC-BY-4.0 规模类别: - 1K-10K 任务类别: - 文本分类 - 摘要生成 - Token分类 - 文本生成 标签: - 法律 - 非洲NLP - OHADA(Organisation pour l'Harmonisation en Afrique du Droit des Affaires) - 法院判决 - 法语非洲 - 法律NLP - 低资源 美观名称:OHADA CCJA(Cour Commune de Justice et d'Arbitrage,共同司法与仲裁法院)法院判决语料库 数据集信息: 特征: - 名称:case_id,数据类型:string - 名称:case_number,数据类型:string - 名称:date,数据类型:date32 - 名称:year,数据类型:int32 - 名称:legal_domain,数据类型:string - 名称:case_type,数据类型:string - 名称:jurisdiction,数据类型:string - 名称:formation,数据类型:string - 名称:plaintiff,数据类型:string - 名称:defendant,数据类型:string - 名称:articles_cited,数据类型:string - 名称:dispute_summary,数据类型:string - 名称:reasoning,数据类型:string - 名称:ruling,数据类型:string - 名称:full_text,数据类型:string - 名称:source,数据类型:string 拆分: - 名称:train,样本数量:2841 - 名称:validation,样本数量:609 - 名称:test,样本数量:609 # OHADA-CCJA 法院判决语料库 ## 数据集概述 本数据集为非洲商法协调组织(OHADA,Organisation pour l'Harmonisation en Afrique du Droit des Affaires)下属超国家法院——共同司法与仲裁法院(CCJA,Cour Commune de Justice et d'Arbitrage)的**4059份法院判决精选语料库**。OHADA在17个非洲成员国中协调商事法律体系,成员国包括:贝宁、布基纳法索、喀麦隆、中非共和国、乍得、科摩罗、刚果民主共和国、刚果共和国、科特迪瓦、赤道几内亚、加蓬、几内亚、几内亚比绍、马里、尼日尔、塞内加尔及多哥。 本数据集为1997年至2023年二十余年间的CCJA司法判例提供了结构化访问渠道,是非洲法律自然语言处理(NLP)研究的独特资源。 ### 数据集价值 法律NLP领域发展迅速,但现有基准测试与数据集大多聚焦普通法系(美国、英国)或欧盟/欧洲大陆法律体系,非洲法律体系——尤其是泛非洲协调商法——在研究领域完全处于空白。本数据集填补了这一空白,提供如下优势: - **全球首个多语言可用的OHADA CCJA判决结构化机器学习语料库** - **丰富的注释层级**:不仅包含完整判决文本,还单独提取了纠纷摘要、司法推理、最终判决结果、法律领域标签及引用法条 - **泛非洲地理覆盖**:涵盖所有17个OHADA成员国的当事方与纠纷案件 - **长期时间跨度**:判决时间覆盖1997至2023年,支持纵向法律分析 ### 支持任务 | 任务类型 | 输入数据 | 目标输出 | 评价指标 | |------|-------|--------|--------| | **法律领域分类** | `full_text` 或 `dispute_summary` | `legal_domain`(共16个类别) | 宏平均F1值(F1-macro) | | **法律判决摘要生成** | `full_text` | `ruling` 或 `dispute_summary` | ROUGE-L指标 | | **法律推理提取** | `dispute_summary` + `ruling` | `reasoning` | ROUGE-L、BERTScore指标 | | **法律命名实体识别(Legal NER)** | `full_text` | 当事方、管辖法院、法律条文 | 实体级F1值 | | **引用法条预测** | `full_text` 或 `dispute_summary` | `articles_cited` | Recall@k指标 | ### 语言支持 法语(fr)——OHADA CCJA的官方工作语言。 ## 数据集结构 ### 数据字段 | 字段名 | 数据类型 | 字段说明 | 完整率 | |-------|------|-------------|--------------| | `case_id` | string | 唯一标识符(例如:`OHADA-CCJA-00001`) | 100% | | `case_number` | string | 官方案号(Numéro d'arrêt) | 94.8% | | `date` | date | 判决日期(ISO 8601格式) | 95.3% | | `year` | int | 从判决日期提取的年份 | 95.3% | | `legal_domain` | string | 所属OHADA法律领域 | 99.8% | | `case_type` | string | 案件案由(例如:Saisie immobilière) | 90.5% | | `jurisdiction` | string | 管辖法院(CCJA) | 100% | | `formation` | string | 审判庭(第一/第二/第三审判庭) | 100% | | `plaintiff` | string | 原告姓名 | 86.9% | | `defendant` | string | 被告姓名 | 85.6% | | `articles_cited` | string | 判决中引用的法律条文 | 85.4% | | `dispute_summary` | string | 纠纷摘要(Exposé du litige) | 99.8% | | `reasoning` | string | 法院推理(Motif) | 27.1% | | `ruling` | string | 最终判决结果(Dispositif) | 99.8% | | `full_text` | string | 判决完整文本 | 100% | | `source` | string | 数据来源:`file1`、`file2`或`both` | 100% | **字段完整率说明**:本数据集来自两个互补的数据源,二者的注释深度存在差异。`reasoning`字段(法院推理)仅在来源1的约1100个案例中可用;`articles_cited`、`plaintiff`及`defendant`字段主要在来源2的约3500个案例中可用。`source`列标注了数据来源,方便研究者筛选适配特定任务的子集,详见“源数据”章节。 ### 数据拆分 | 拆分名称 | 样本数量 | 用途 | |-------|-------|---------| | `train` | 2841 | 模型训练 | | `validation` | 609 | 超参数调优 | | `test` | 609 | 最终模型评估 | 所有拆分均按`legal_domain`进行分层采样,以保留各拆分中的类别分布比例。 ### 法律领域分布 `legal_domain`字段覆盖OHADA协调商事法律的16个主要类别: | 法律领域 | 样本数量 | 占比 | |---|---|---| | 执行法(Droit des voies d'exécution) | 2144 | 52.8% | | 商事公司与经济利益集团法(Droit des sociétés commerciales et GIE) | 479 | 11.8% | | 一般商事法(Droit commercial général) | 428 | 10.5% | | 破产法(Droit des procédures collectives) | 256 | 6.3% | | 担保法(Droit des sûretés) | 195 | 4.8% | | CCJA程序规则(Règlement de procédure de la CCJA) | 188 | 4.6% | | 合作社法(Droit des sociétés coopératives) | 155 | 3.8% | | 仲裁法(Droit de l'arbitrage) | 136 | 3.4% | | 公路运输合同相关法律(Droit des contrats de transport par route) | 41 | 1.0% | | 合同法(Droit des contrats) | 13 | 0.3% | | 保险法(Droit des assurances) | 8 | 0.2% | | 其他稀有类别 | 16 | 0.4% | ## 数据集创建 ### 源数据 本语料库来自两个公开可用的CCJA判决互补数据源: - **来源1**(去重后共1115个独特案例):包含已提取的司法推理(`reasoning`/Motif)、纠纷摘要及判决结果,通常为从OHADA法律数据库爬取的原始法院判决文本。 - **来源2**(从10410条原始记录去重后共3642个独特案例):包含已标注的引用法条(`articles_cited`)、详细当事方姓名(`plaintiff`/`defendant`)及描述性案由标签(`case_type`),涵盖带结构化元数据的注释化案例分析。 共有548个案例同时出现在两个数据源中,经合并后获得了最丰富的注释信息。最终数据集共包含4059个独特案例。 **按数据源划分的字段可用性**: | 字段 | 仅来源1(`file1`) | 仅来源2(`file2`) | 跨源合并(`both`) | |-------|------------------------|------------------------|------------------| | `reasoning` | ✅ | ❌ | ✅ | | `articles_cited` | ❌ | ✅ | ✅ | | `plaintiff` / `defendant` | 稀疏(约3%) | ✅(约95%) | ✅ | | `case_type`(描述性) | 通用类型 | ✅ 详细描述类型 | ✅ 详细描述类型 | | `dispute_summary` | ✅ | ✅ | ✅(取二者最优版本) | | `ruling` | ✅ | ✅ | ✅(取二者最优版本) | ### 预处理流程 1. **去重**:基于内容哈希的去重操作移除了来源2的6768条重复记录、来源1的33条重复记录,以及3条跨源重复记录 2. **标签标准化**:统一`legal_domain`字段中的拼写与重音变体(例如将“suretés”统一为“sûretés”),将原始18个标签精简为16个规范类别 3. **日期解析**:将混合格式(dd/mm/yyyy及法语文本如“27 avril 2015”)的判决日期转换为ISO 8601格式;少量因解析错误产生的不合理日期(早于1995年或晚于2024年)被设为空值 4. **Schema统一**:将所有列标准化为英文名称并使用统一的数据类型 5. **跨源合并**:对于548个重叠案例,采用合并策略保留每个字段最完整的值(例如`reasoning`取自来源1,`articles_cited`取自来源2,`plaintiff`/`defendant`优先使用来源2中已填充的内容) ### 伦理考量 - **公开记录**:所有CCJA判决均为公开法律记录,可通过OHADA官方渠道公开获取 - **当事方姓名**:诉讼参与人姓名均来自官方法院记录的公开内容,使用本数据集的研究者应考虑下游应用是否需要进一步匿名化处理 - **管辖范围**:OHADA法律仅管辖商事纠纷,本语料库不包含刑事案件或涉及未成年人的案件 - **类别不平衡**:语料库反映了CCJA实际的案件负荷,整体偏向执行法(约53%)与商事纠纷,该分布匹配真实诉讼模式,但可能无法完整代表OHADA成员国的全部法律问题范畴,研究者应在模型训练与评估中考虑这一不平衡性 ### 许可证 本数据集采用**CC-BY-4.0**协议发布。OHADA法院判决均为公开法律文件,本数据集的附加价值在于其结构化、清洗、注释及面向机器学习研究的打包处理。 ## 使用方法 ### 使用HuggingFace Datasets库加载 python from datasets import load_dataset dataset = load_dataset("Maathis-com/ohada-ccja-corpus") # 访问拆分数据集 train = dataset["train"] print(f"训练集样本数量: {len(train)}") print(train[0]) ### 示例:法律领域分类任务 python from datasets import load_dataset dataset = load_dataset("Maathis-com/ohada-ccja-corpus") # 使用dispute_summary作为输入,legal_domain作为标签 train_texts = dataset["train"]["dispute_summary"] train_labels = dataset["train"]["legal_domain"] ### 示例:筛选包含法院推理的案例子集 python # 约1100个案例包含法院推理(Motif) reasoning_subset = dataset["train"].filter(lambda x: x["reasoning"] is not None) print(f"包含法院推理的案例数量: {len(reasoning_subset)}") ### 示例:筛选包含引用法条的案例子集 python # 约3500个案例包含已标注的引用法条 articles_subset = dataset["train"].filter(lambda x: x["articles_cited"] is not None) print(f"包含引用法条的案例数量: {len(articles_subset)}") ### 示例:全字段完整案例子集(跨源合并案例) python # 共546个案例包含所有字段(来自两个数据源的重叠部分) full_subset = dataset["train"].filter(lambda x: x["source"] == "both") print(f"包含所有字段的案例数量: {len(full_subset)}") ## 引用声明 若您在研究中使用本数据集,请引用如下文献: bibtex @dataset{ohada_ccja_corpus_2026, title={OHADA-CCJA Court Decisions Corpus: A Dataset for African Legal NLP}, author={Foutse Yuehgoh, Priyanka N, Patrick NGUETCHOUESSI}, year={2026}, url={https://huggingface.co/datasets/Maathis-com/ohada-ccja-corpus}, note={Submitted at Deep Learning Indaba 2026, Nigeria} } ## 联系方式 如有关于本数据集的疑问,请联系数据集创建者或在[HuggingFace仓库讨论区](https://huggingface.co/datasets/Maathis-com/ohada-ccja-corpus/discussions)提交issue。



