big tings

This commit is contained in:
Max Richter
2025-08-17 15:16:17 +02:00
parent 40b9be887d
commit c687eff53d
958 changed files with 32279 additions and 704 deletions

View File

@@ -0,0 +1,49 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "schema:ProductModel",
"title": "ProductModel",
"description": "A datasheet or vendor specification of a product (in the sense of a prototypical description).",
"type": "object",
"allOf": [
{
"description": "Any offered product or service. For example: a pair of shoes; a concert ticket; the rental of a car; a haircut; or an episode of a TV show streamed online.",
"$ref": "schema:Product"
}
],
"properties": {
"isVariantOf": {
"description": "Indicates the kind of product that this is a variant of. In the case of [[ProductModel]], this is a pointer (from a ProductModel) to a base product from which this product is a variant. It is safe to infer that the variant inherits all product features from the base model, unless defined locally. This is not transitive. In the case of a [[ProductGroup]], the group description also serves as a template, representing a set of Products that vary on explicitly defined, specific dimensions only (so it defines both a set of variants, as well as which values distinguish amongst those variants). When used with [[ProductGroup]], this property can apply to any [[Product]] included in the group.",
"oneOf": [
{
"anyOf": [
{ "$ref": "schema:ProductGroup" },
{ "$ref": "schema:ProductModel" }
]
},
{
"type": "array",
"items": {
"anyOf": [
{ "$ref": "schema:ProductGroup" },
{ "$ref": "schema:ProductModel" }
]
}
}
]
},
"predecessorOf": {
"description": "A pointer from a previous, often discontinued variant of the product to its newer variant.",
"oneOf": [
{ "$ref": "schema:ProductModel" },
{ "type": "array", "items": { "$ref": "schema:ProductModel" } }
]
},
"successorOf": {
"description": "A pointer from a newer variant of a product to its previous, often discontinued predecessor.",
"oneOf": [
{ "$ref": "schema:ProductModel" },
{ "type": "array", "items": { "$ref": "schema:ProductModel" } }
]
}
}
}