Creates a resource shape from property definitions.
Accepts Entry values including full Property definitions, naked Range values for concise syntax, and Id/Type markers:
name: required(string()) is equivalent to name: property(required(string()))The entries record type
The property definitions
A shape for validating resources with the specified properties
Creates a resource shape with constraints.
When constraints includes extends, the returned shape type includes inherited properties from the parent
shape(s). Otherwise, the shape type includes only the own properties.
Accepts Entry values including full Property definitions, naked Range values for concise syntax, and Id/Type markers.
When inheriting from multiple shapes, namespaces are inconsistent if some parents define a namespace while others
don't, or if parents define different namespace IRIs. In such cases, an overriding namespace must be declared.
The constraints type (used to infer inheritance)
The entries record type
Shape constraints including namespace, name, validators, and optionally extends
The property definitions
A shape for validating resources, including inherited properties if extends is specified
Creates resource shapes.