glam/schemas/20251121/linkml/modules/classes/LanguageProficiency.yaml
kempersc 767fb8ca80 feat(schema): Add LinkedIn profile and person modeling schema
Person Identity Classes:
- PersonName: Full name modeling with components (given_name, surname_prefix,
  base_surname, patronym, initials) following Dutch naming conventions
- PersonConnection: Professional network connections with heritage relevance scoring
- ConnectionNetwork: Network-level analysis and statistics

LinkedIn Profile Schema:
- LinkedInProfile: Complete professional profile structure
- WorkExperience: Employment history with heritage institution detection
- EducationCredential: Academic background and qualifications
- LanguageProficiency: Language skills with ISO 639-1 codes

Supporting Classes:
- ExtractionMetadata: Provenance tracking for extracted profile data
- HeritageRelevance: GLAMORCUBESFIXPHDNT type scoring and classification

Slots (17 person-related slots):
- Name components: given_name, base_surname, surname_prefix, patronym, initials
- Identity: age, birth_date, birth_place, death_place, gender_identity, pronouns
- Professional: occupation, religion
- References: literal_name, name_specification, has_person_name, extraction_metadata

Enums:
- HeritageTypeEnum: GLAMORCUBESFIXPHDNT type codes for heritage relevance
2025-12-16 20:04:59 +01:00

164 lines
4.5 KiB
YAML

# Language Proficiency Class
# Language skills with proficiency level
id: https://nde.nl/ontology/hc/class/LanguageProficiency
name: language_proficiency_class
title: Language Proficiency Class
version: 1.0.0
prefixes:
linkml: https://w3id.org/linkml/
hc: https://nde.nl/ontology/hc/
schema: http://schema.org/
dct: http://purl.org/dc/terms/
imports:
- linkml:types
- ../metadata
default_range: string
classes:
LanguageProficiency:
class_uri: schema:knowsLanguage
description: |
A language skill with proficiency level.
Models language abilities as extracted from LinkedIn profiles,
with both raw string and parsed components.
**Schema.org Alignment**:
- Represents schema:knowsLanguage relation
- Language is schema:Language
**Use Cases**:
- LinkedIn profile language sections
- Multilingual staff identification
- Heritage institution language capabilities
**Example JSON Values**:
```json
[
"English - Native or bilingual",
"Dutch - Native or bilingual",
"French - Professional working proficiency"
]
```
**LinkedIn Proficiency Levels**:
- Native or bilingual proficiency
- Full professional proficiency
- Professional working proficiency
- Limited working proficiency
- Elementary proficiency
exact_mappings:
- schema:knowsLanguage
close_mappings:
- dct:language
slots:
- language_raw
- language_name
- language_code
- proficiency_level
slot_usage:
language_raw:
description: |
Raw language string as extracted from LinkedIn.
Format: "Language - Proficiency level"
Preserved for provenance.
slot_uri: schema:description
range: string
examples:
- value: "English - Native or bilingual"
description: "Native English speaker"
- value: "Dutch - Professional working proficiency"
description: "Professional Dutch"
language_name:
description: |
Language name (parsed from raw string).
slot_uri: schema:name
range: string
examples:
- value: "English"
- value: "Dutch"
- value: "French"
language_code:
description: |
ISO 639-1 two-letter language code.
Derived from language_name lookup.
slot_uri: dct:language
range: string
pattern: "^[a-z]{2}$"
examples:
- value: "en"
description: "English"
- value: "nl"
description: "Dutch"
- value: "fr"
description: "French"
proficiency_level:
description: |
Proficiency level as parsed from LinkedIn.
Uses LanguageProficiencyEnum values.
slot_uri: schema:proficiencyLevel
range: LanguageProficiencyEnum
examples:
- value: "NATIVE_BILINGUAL"
description: "Native or bilingual proficiency"
comments:
- "Inlined in LinkedInProfile.languages[] as multivalued list"
- "Preserves raw LinkedIn format for provenance"
- "ISO 639-1 codes enable language-based filtering"
see_also:
- "https://schema.org/knowsLanguage"
- "https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes"
enums:
LanguageProficiencyEnum:
description: |
LinkedIn language proficiency levels.
Based on LinkedIn's standard proficiency descriptions.
permissible_values:
NATIVE_BILINGUAL:
description: "Native or bilingual proficiency"
meaning: schema:Expert
FULL_PROFESSIONAL:
description: "Full professional proficiency"
meaning: schema:Advanced
PROFESSIONAL_WORKING:
description: "Professional working proficiency"
meaning: schema:Intermediate
LIMITED_WORKING:
description: "Limited working proficiency"
meaning: schema:Intermediate
ELEMENTARY:
description: "Elementary proficiency"
meaning: schema:Beginner
UNKNOWN:
description: "Proficiency level not specified"
slots:
language_raw:
description: "Raw language string as extracted"
range: string
language_name:
description: "Language name"
range: string
language_code:
description: "ISO 639-1 language code"
range: string
proficiency_level:
description: "Proficiency level"
range: LanguageProficiencyEnum