Template · infobox schema
Template:Infobox/belt
Infobox schema for belt and ring pages: the fields, their groups, labels and units, as a JSON Schema.
This page holds the JSON Schema for infobox: type: belt, used by belt and ring pages (the field list follows SCIENCE_CORPUS 3.2 Small bodies). Every page whose frontmatter names this type is validated against it on save: a schema error blocks a save by a new account or an API client and warns a trusted editor.
Values are flexible so that writers can record what the sources allow. A field may be plain text or a number, a quantity object {value, unit, min, max, error, source, note}, or a by-status mapping {observed, model, sim} when the measured, inferred and generated values differ. Fields not listed here are allowed and shown under "Other" in the infobox. The x-pax block carries display metadata: the groups in order, each group's default provenance tag, and the label and unit for every field.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://paxabyssi.com/wiki/Template:Infobox/belt",
"title": "Asteroid belt",
"description": "Infobox for belt and ring pages. Fields follow SCIENCE_CORPUS 3.2 Small bodies.",
"type": "object",
"required": [
"type",
"name"
],
"properties": {
"type": {
"const": "belt"
},
"image": {
"$ref": "#/$defs/fileTitle",
"description": "Lead image, a File: title."
},
"caption": {
"type": "string"
},
"image_caption": {
"type": "string"
},
"name": {
"type": "string"
},
"definition": {
"$ref": "#/$defs/field"
},
"location_au": {
"$ref": "#/$defs/field"
},
"structure": {
"$ref": "#/$defs/field"
},
"related_belts": {
"$ref": "#/$defs/field"
},
"around_other_stars": {
"$ref": "#/$defs/field"
},
"mass": {
"$ref": "#/$defs/field"
},
"members_over_1_km": {
"$ref": "#/$defs/field"
},
"largest_member": {
"$ref": "#/$defs/field"
},
"mean_spacing_km": {
"$ref": "#/$defs/field"
},
"spectral_classes": {
"$ref": "#/$defs/field"
},
"examples": {
"$ref": "#/$defs/field"
},
"sim_codes": {
"$ref": "#/$defs/field"
},
"sim_rule": {
"$ref": "#/$defs/field"
},
"sim_source": {
"$ref": "#/$defs/field"
},
"physics_engine": {
"$ref": "#/$defs/field"
},
"science_doc": {
"$ref": "#/$defs/field"
},
"rendered_example": {
"$ref": "#/$defs/field"
},
"last_verified": {
"$ref": "#/$defs/field"
}
},
"additionalProperties": true,
"$defs": {
"quantity": {
"type": "object",
"description": "A number or range with its unit and provenance.",
"properties": {
"value": {
"type": [
"number",
"string",
"null"
]
},
"unit": {
"type": "string"
},
"min": {
"type": [
"number",
"string"
]
},
"max": {
"type": [
"number",
"string"
]
},
"error": {
"type": [
"number",
"string"
]
},
"uncertainty": {
"type": [
"number",
"string"
]
},
"source": {
"type": "string",
"description": "observed | model | sim | catalogue | fiction, or a citation."
},
"note": {
"type": "string"
},
"as_of": {
"type": [
"string",
"number"
]
}
},
"additionalProperties": true
},
"byStatus": {
"type": "object",
"description": "The same quantity as measured (observed), inferred (model) and generated (sim).",
"properties": {
"observed": {
"$ref": "#/$defs/cell"
},
"model": {
"$ref": "#/$defs/cell"
},
"sim": {
"$ref": "#/$defs/cell"
},
"note": {
"type": "string"
}
},
"additionalProperties": true
},
"cell": {
"anyOf": [
{
"type": "string"
},
{
"type": "number"
},
{
"type": "boolean"
},
{
"type": "null"
},
{
"type": "array"
},
{
"$ref": "#/$defs/quantity"
}
]
},
"field": {
"anyOf": [
{
"$ref": "#/$defs/cell"
},
{
"$ref": "#/$defs/byStatus"
},
{
"type": "object"
}
]
},
"fileTitle": {
"type": "string",
"pattern": "^File:"
},
"status": {
"description": "One or more of observed, model, sim, speculative, fiction; or a sentence saying which parts carry which label.",
"anyOf": [
{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
}
},
"x-pax": {
"label": "Asteroid belt",
"image_field": "image",
"caption_field": "caption",
"groups": [
{
"index": "01",
"title": "Identity",
"fields": [
"name",
"definition",
"location_au",
"structure",
"related_belts",
"around_other_stars"
]
},
{
"index": "02",
"title": "Population",
"fields": [
"mass",
"members_over_1_km",
"largest_member",
"mean_spacing_km",
"spectral_classes",
"examples"
],
"provenance": "catalogue"
},
{
"index": "03",
"title": "Sim",
"fields": [
"sim_codes",
"sim_rule",
"sim_source",
"physics_engine",
"science_doc",
"rendered_example",
"last_verified"
],
"provenance": "sim"
}
],
"fields": {
"name": {
"label": "Name"
},
"definition": {
"label": "Definition"
},
"location_au": {
"label": "Location",
"unit": "AU"
},
"structure": {
"label": "Structure"
},
"related_belts": {
"label": "Related belts"
},
"around_other_stars": {
"label": "Around other stars"
},
"mass": {
"label": "Mass"
},
"members_over_1_km": {
"label": "Members over 1 km",
"unit": "km"
},
"largest_member": {
"label": "Largest member"
},
"mean_spacing_km": {
"label": "Mean spacing",
"unit": "km"
},
"spectral_classes": {
"label": "Spectral classes"
},
"examples": {
"label": "Examples"
},
"sim_codes": {
"label": "Sim codes"
},
"sim_rule": {
"label": "Sim rule"
},
"sim_source": {
"label": "Sim source"
},
"physics_engine": {
"label": "Physics engine"
},
"science_doc": {
"label": "Science document"
},
"rendered_example": {
"label": "Rendered example"
},
"last_verified": {
"label": "Last verified"
}
}
}
}
| Group | Field | Label | Unit |
|---|---|---|---|
| 01 Identity | name | Name | |
| definition | Definition | ||
| location_au | Location | AU | |
| structure | Structure | ||
| related_belts | Related belts | ||
| around_other_stars | Around other stars | ||
| 02 Population | mass | Mass | |
| members_over_1_km | Members over 1 km | km | |
| largest_member | Largest member | ||
| mean_spacing_km | Mean spacing | km | |
| spectral_classes | Spectral classes | ||
| examples | Examples | ||
| 03 Sim | sim_codes | Sim codes | |
| sim_rule | Sim rule | ||
| sim_source | Sim source | ||
| physics_engine | Physics engine | ||
| science_doc | Science document | ||
| rendered_example | Rendered example | ||
| last_verified | Last verified |