glam/.opencode/rules/multilingual-support-requirements.md
2026-02-04 00:24:46 +01:00

177 lines
5.4 KiB
Markdown

# Rule: Multilingual Support Requirements
## Overview
All LinkML slot files MUST include multilingual support with translations in the following languages:
| Code | Language | Required |
|------|----------|----------|
| `nl` | Dutch | ✅ Yes |
| `de` | German | ✅ Yes |
| `fr` | French | ✅ Yes |
| `ar` | Arabic | ✅ Yes |
| `id` | Indonesian | ✅ Yes |
| `zh` | Chinese (Simplified) | ✅ Yes |
| `es` | Spanish | ✅ Yes |
---
## Required Multilingual Fields
### 1. `alt_descriptions`
Provide faithful translations of the English `description` field:
```yaml
slots:
my_slot:
description: >-
To possess a specific structural arrangement or encoding standard.
alt_descriptions:
nl: >-
Het bezitten van een specifieke structurele rangschikking of coderingsstandaard.
de: >-
Das Besitzen einer spezifischen strukturellen Anordnung oder eines Kodierungsstandards.
fr: >-
Posséder un arrangement structurel spécifique ou une norme de codage.
ar: >-
امتلاك ترتيب هيكلي محدد أو معيار ترميز.
id: >-
Memiliki susunan struktural tertentu atau standar pengkodean.
zh: >-
拥有特定的结构安排或编码标准。
es: >-
Poseer una disposición estructural específica o un estándar de codificación.
```
### 2. `structured_aliases`
Provide translated slot names/labels for each language:
```yaml
slots:
has_format:
structured_aliases:
- literal_form: heeft formaat
predicate: EXACT_SYNONYM
in_language: nl
- literal_form: hat Format
predicate: EXACT_SYNONYM
in_language: de
- literal_form: a un format
predicate: EXACT_SYNONYM
in_language: fr
- literal_form: لديه تنسيق
predicate: EXACT_SYNONYM
in_language: ar
- literal_form: memiliki format
predicate: EXACT_SYNONYM
in_language: id
- literal_form: 具有格式
predicate: EXACT_SYNONYM
in_language: zh
- literal_form: tiene formato
predicate: EXACT_SYNONYM
in_language: es
```
---
## Translation Guidelines
### DO:
- Translate the semantic meaning faithfully
- Preserve technical precision
- Use natural phrasing for each language
- Keep translations concise (similar length to English)
### DON'T:
- Paraphrase or expand beyond the original meaning
- Add information not present in the English description
- Use machine translation without review
- Skip any of the required languages
---
## Complete Example
```yaml
id: https://nde.nl/ontology/hc/slot/catalogue
name: catalogue
title: catalogue
slots:
catalogue:
slot_uri: crm:P70_documents
description: >-
To systematically record, classify, and organize items within a structured
inventory or database for the purposes of documentation and retrieval.
alt_descriptions:
nl: >-
Het systematisch vastleggen, classificeren en ordenen van items binnen een
gestructureerde inventaris of database voor documentatie en terugvinding.
de: >-
Das systematische Erfassen, Klassifizieren und Ordnen von Objekten in einem
strukturierten Inventar oder einer Datenbank für Dokumentation und Abruf.
fr: >-
Enregistrer, classer et organiser systématiquement des éléments dans un
inventaire structuré ou une base de données à des fins de documentation et de récupération.
ar: >-
تسجيل وتصنيف وتنظيم العناصر بشكل منهجي ضمن جرد منظم أو قاعدة بيانات لأغراض التوثيق والاسترجاع.
id: >-
Mencatat, mengklasifikasikan, dan mengatur item secara sistematis dalam
inventaris terstruktur atau database untuk tujuan dokumentasi dan pengambilan.
zh: >-
在结构化清单或数据库中系统地记录、分类和组织项目,以便于文档编制和检索。
es: >-
Registrar, clasificar y organizar sistemáticamente elementos dentro de un
inventario estructurado o base de datos con fines de documentación y recuperación.
structured_aliases:
- literal_form: catalogiseren
predicate: EXACT_SYNONYM
in_language: nl
- literal_form: katalogisieren
predicate: EXACT_SYNONYM
in_language: de
- literal_form: cataloguer
predicate: EXACT_SYNONYM
in_language: fr
- literal_form: فهرسة
predicate: EXACT_SYNONYM
in_language: ar
- literal_form: mengkatalogkan
predicate: EXACT_SYNONYM
in_language: id
- literal_form: 编目
predicate: EXACT_SYNONYM
in_language: zh
- literal_form: catalogar
predicate: EXACT_SYNONYM
in_language: es
```
---
## Validation Checklist
Before completing a slot file, verify:
- [ ] `alt_descriptions` provided for all 7 languages (nl, de, fr, ar, id, zh, es)
- [ ] `structured_aliases` provided for all 7 languages
- [ ] Translations are faithful to the English original
- [ ] No language is skipped or left empty
- [ ] Arabic and Chinese characters render correctly
---
## See Also
- Rule 1: Preserve Original Descriptions (LINKML_EDITING_RULES.md)
- Rule 2: Translation Accuracy (LINKML_EDITING_RULES.md)
- Rule 3: Description Field Purity (LINKML_EDITING_RULES.md)
---
**Version**: 1.0.0
**Created**: 2026-02-03
**Author**: OpenCODE