triplemodel.terms.lang
Language-tagged RDF literals.
- triplemodel.terms.lang.normalize_lang_tag(lang)[source]
Normalize an RDF language tag for map keys (case-insensitive per BCP 47).
- class triplemodel.terms.lang.Lang(code, direction=None)[source]
Bases:
objectField metadata: serialize
strvalues with a fixed language tag.
- class triplemodel.terms.lang.LangString(value, lang=None, direction=None)[source]
Bases:
objectA literal string value with an optional language tag and text direction.
- class triplemodel.terms.lang.MultiLangString(mapping=None, /, **langs)[source]
Bases:
objectMultiple language-tagged literals for one predicate, keyed by language code.
Use on a single field when the graph has several
@langobjects on the same predicate (for examplerdfs:label@enandrdfs:label@fr). Export emits one triple per entry; import collects all language-tagged literals on the field.- Parameters:
mapping (Mapping[str, str | LangString | None] | None)
langs (str | LangString | None)
-
by_lang:
Mapping[str,LangString]
- __init__(mapping=None, /, **langs)[source]
- Parameters:
mapping (Mapping[str, str | LangString | None] | None)
langs (str | LangString | None)
- Return type:
None
- classmethod from_mapping(mapping)[source]
Build from a language code → value map (
Noneentries are omitted).- Return type:
- Parameters:
mapping (Mapping[str, str | LangString | None])
- get(lang, default=None)[source]
- Return type:
- Parameters:
lang (str)
default (LangString | None)