glam/schemas/20251121/linkml/modules/classes/Language.yaml
kempersc ba2c766dd0 Add new slots and update existing ones following RiC-O temporal naming conventions
- Introduced `founding_date`, `founding_date_diocese`, and `fr` slots for capturing founding dates and French language text.
- Created `collects_or_collected`, `has_or_had_objective`, `has_or_had_percentage`, `has_or_had_place`, `has_or_had_reply`, `has_or_had_web_page`, `is_or_was_acquired_by`, `is_or_was_appreciated`, `is_or_was_founded_through`, `is_or_was_part_of`, `is_or_was_part_of_total`, `start_of_the_start`, `takes_or_took_comission`, and `was_fetched_at` slots to enhance data modeling capabilities.
- Each slot includes detailed descriptions, examples, and ontology alignments to ensure clarity and usability.
- Migration notes added for slots transitioned from previous definitions to maintain historical context and facilitate understanding of changes.
2026-01-22 15:15:56 +01:00

89 lines
3.2 KiB
YAML

# Language - Language class
# Extended 2026-01-22: Added text_content attribute for language-tagged text support
# Supports migration of language-specific text slots (fr, de, en, nl) per slot_fixes.yaml
id: https://nde.nl/ontology/hc/class/Language
name: Language
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
dct: http://purl.org/dc/terms/
rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#
imports:
- linkml:types
- ../slots/has_or_had_code
classes:
Language:
class_uri: dct:LinguisticSystem
description: |
A language with ISO codes and optional text content.
**Purpose**:
Represents a language entity that can identify the language of text content.
Used for language-tagged text where the language code and content are bundled together.
**Use Cases**:
1. Language identification only (just codes, no content)
2. Language-tagged text (codes + text_content for multilingual data)
**Migration Support**:
This class supports migration from language-specific text slots (fr, de, en, nl)
to a unified `has_or_had_language` + `Language` pattern per slot_fixes.yaml.
**Ontological Alignment**:
- **Primary**: `dct:LinguisticSystem` - Dublin Core linguistic system
- **Close**: `schema:Language` - Schema.org language
exact_mappings:
- dct:LinguisticSystem
close_mappings:
- schema:Language
slots:
- has_or_had_code
attributes:
language_name:
range: string
description: |
Human-readable name of the language (e.g., "English", "Dutch", "French").
Parsed from raw string, not authoritative. Use ISO codes for formal identification.
iso_639_1:
range: string
description: ISO 639-1 two-letter code (e.g., "fr", "en", "de", "nl")
pattern: "^[a-z]{2}$"
iso_639_3:
range: string
description: ISO 639-3 three-letter code (e.g., "fra", "eng", "deu", "nld")
pattern: "^[a-z]{3}$"
text_content:
range: string
description: |
Text content in this language.
Used when bundling language identification with the actual text content.
This enables migration from language-specific slots (fr, de, en, nl) to
a unified Language-tagged pattern.
**Example**:
```yaml
has_or_had_language:
- iso_639_1: "fr"
language_name: "French"
text_content: "archives universitaires"
- iso_639_1: "en"
language_name: "English"
text_content: "university archives"
```
examples:
- value: |
iso_639_1: "fr"
language_name: "French"
text_content: "archives universitaires"
description: French language-tagged text for multilingual label
- value: |
iso_639_1: "en"
language_name: "English"
description: English language identifier (without text content)
- value: |
iso_639_1: "nl"
language_name: "Dutch"
text_content: "universitair archief"
description: Dutch language-tagged text