@metreeca/blue - v0.12.0
    Preparing search index...

    Type Alias StringShape<V>

    StringShape: StringConstraints<V, string> & { kind: "string" }

    Describes a textual value.

    Admits the JSON strings a resource may carry, bounded by length, lexical and enumeration constraints and typed as an XSD 1.0 string or temporal datatype, so that a validated value carries the datatype the shape states rather than the one JSON leaves unsaid.

    Inheritance

    Where a resource!ResourceShape extends the shapes it lists as parents, string-valued 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
    datatype Must be strictly equal when both defined; the single defined value carries through
    pattern Must be strictly equal when both defined; the single defined value carries through
    minLength Child may only raise the minimum length
    maxLength Child may only lower the maximum length
    in Child may only drop allowed values
    hasValue Child may only add required values

    Cross-field validation

    • merged minLength must be ≤ merged maxLength
    • all merged hasValue entries must be members of the merged in set (if defined)

    Type Parameters

    • V extends string = string

      The values the shape admits, narrowed to the enumerated ones where it states an enumeration and the whole textual domain otherwise

    Type Declaration

    • Readonlykind: "string"

      Discriminator identifying this as a string shape.

      Inheritance — cannot be overridden.