Admits the JSON-LD language maps a resource may carry: a map keyed
by BCP 47 language tag, holding the content the resource states in each
language, so that a property whose value varies by language is described by a single shape rather than by one member
per language. Content of undetermined language (a proper name, say) is keyed by the
und tag, and content belonging to no language at all (an identifier, a code, a
formula) by the zxx tag. Each entry is stored as a
RDF 1.1 language-tagged string.
How many strings a tag carries is fixed by uniqueLang: a unique-tagged
shape gives every tag a single string, and any other gives every tag an array. The map is a value set in its own
right, so a member carries it whole, never in an array, whatever the bounds of the enclosing value!Range
admit: those bounds count the values of the other branches of a two-natured range, which a resource carries in
place of the map and never beside it.
Negotiation
The tag-keyed map is the form a value is stored and submitted in. On retrieval a localised member is additionally
coalesced under language negotiation, at the same per-tag arity: the value may be retrieved as the negotiated
content alone (a bare string where a tag carries one, a single-element array where it carries several), and filtered
by a plain string operand (a comparison, a text search or an option) matched against the negotiated content under
ordinary textual semantics. Submission never coalesces: it accepts the tag-keyed form alone.
Inheritance
Where a resource!ResourceShape extends the shapes it lists as parents, localised members are merged
according to the following rules. The child is the extending shape; the parent is the inherited one.
Field
Override Rule
kind
Cannot be overridden
minLength
Child may only raise the minimum length
maxLength
Child may only lower the maximum length
languageIn
Child may only drop accepted ranges
uniqueLang
Child may add but not drop; an inherited constraint always carries through
Cross-field validation
merged minLength must be ≤ merged maxLength
Type Declaration
Readonlykind: "dictionary"
Discriminator identifying this as a dictionary shape.
Describes a localised textual value.
Admits the JSON-LD language maps a resource may carry: a map keyed by BCP 47 language tag, holding the content the resource states in each language, so that a property whose value varies by language is described by a single shape rather than by one member per language. Content of undetermined language (a proper name, say) is keyed by the
undtag, and content belonging to no language at all (an identifier, a code, a formula) by thezxxtag. Each entry is stored as a RDF 1.1 language-tagged string.How many strings a tag carries is fixed by uniqueLang: a unique-tagged shape gives every tag a single string, and any other gives every tag an array. The map is a value set in its own right, so a member carries it whole, never in an array, whatever the bounds of the enclosing value!Range admit: those bounds count the values of the other branches of a two-natured range, which a resource carries in place of the map and never beside it.
Negotiation
The tag-keyed map is the form a value is stored and submitted in. On retrieval a localised member is additionally coalesced under language negotiation, at the same per-tag arity: the value may be retrieved as the negotiated content alone (a bare string where a tag carries one, a single-element array where it carries several), and filtered by a plain string operand (a comparison, a text search or an option) matched against the negotiated content under ordinary textual semantics. Submission never coalesces: it accepts the tag-keyed form alone.
Inheritance
Where a resource!ResourceShape extends the shapes it lists as
parents, localised members are merged according to the following rules. The child is the extending shape; the parent is the inherited one.kindminLengthmaxLengthlanguageInuniqueLangCross-field validation
minLengthmust be ≤ mergedmaxLength