Template · infobox schema
Template:Infobox/ship_hull
Infobox schema for ship pages: the fields, their groups, labels and units, as a JSON Schema.
This page holds the JSON Schema for infobox: type: ship_hull, used by ship pages (the field list follows SCIENCE_CORPUS 3.4 K). 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/ship_hull",
"title": "Ship hull",
"description": "Infobox for ship pages. Fields follow SCIENCE_CORPUS 3.4 K.",
"type": "object",
"required": [
"type",
"name"
],
"properties": {
"type": {
"const": "ship_hull"
},
"image": {
"$ref": "#/$defs/fileTitle",
"description": "Lead image, a File: title."
},
"caption": {
"type": "string"
},
"image_caption": {
"type": "string"
},
"name": {
"type": "string"
},
"class": {
"type": "string"
},
"shipyard": {
"$ref": "#/$defs/field"
},
"factions": {
"$ref": "#/$defs/field"
},
"role": {
"$ref": "#/$defs/field"
},
"size_band": {
"$ref": "#/$defs/field"
},
"length_m": {
"$ref": "#/$defs/field"
},
"mass_t": {
"$ref": "#/$defs/field"
},
"crew": {
"$ref": "#/$defs/field"
},
"cost_denarii": {
"$ref": "#/$defs/field"
},
"impulse_max_speed_km_s": {
"$ref": "#/$defs/field"
},
"stardrive_max_c": {
"$ref": "#/$defs/field"
},
"weapons": {
"$ref": "#/$defs/field"
},
"walkable": {
"$ref": "#/$defs/field"
},
"in_ue_build": {
"$ref": "#/$defs/field"
},
"physics_note": {
"$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": "Ship hull",
"image_field": "image",
"caption_field": "caption",
"groups": [
{
"index": "01",
"title": "Identity",
"fields": [
"name",
"class",
"shipyard",
"factions",
"role",
"size_band"
],
"provenance": "fiction"
},
{
"index": "02",
"title": "Dimensions",
"fields": [
"length_m",
"mass_t",
"crew",
"cost_denarii"
],
"provenance": "sim"
},
{
"index": "03",
"title": "Performance",
"fields": [
"impulse_max_speed_km_s",
"stardrive_max_c",
"weapons",
"walkable",
"in_ue_build"
],
"provenance": "sim"
},
{
"index": "04",
"title": "Sim",
"fields": [
"physics_note",
"sim_source",
"physics_engine",
"science_doc",
"rendered_example",
"last_verified"
],
"provenance": "sim"
}
],
"fields": {
"name": {
"label": "Name"
},
"class": {
"label": "Class"
},
"shipyard": {
"label": "Shipyard"
},
"factions": {
"label": "Factions"
},
"role": {
"label": "Role"
},
"size_band": {
"label": "Size band"
},
"length_m": {
"label": "Length m"
},
"mass_t": {
"label": "Mass t"
},
"crew": {
"label": "Crew"
},
"cost_denarii": {
"label": "Cost denarii"
},
"impulse_max_speed_km_s": {
"label": "Impulse max speed",
"unit": "km/s"
},
"stardrive_max_c": {
"label": "Stardrive max c"
},
"weapons": {
"label": "Weapons"
},
"walkable": {
"label": "Walkable"
},
"in_ue_build": {
"label": "In ue build"
},
"physics_note": {
"label": "Physics note"
},
"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 | |
| class | Class | ||
| shipyard | Shipyard | ||
| factions | Factions | ||
| role | Role | ||
| size_band | Size band | ||
| 02 Dimensions | length_m | Length m | |
| mass_t | Mass t | ||
| crew | Crew | ||
| cost_denarii | Cost denarii | ||
| 03 Performance | impulse_max_speed_km_s | Impulse max speed | km/s |
| stardrive_max_c | Stardrive max c | ||
| weapons | Weapons | ||
| walkable | Walkable | ||
| in_ue_build | In ue build | ||
| 04 Sim | physics_note | Physics note | |
| sim_source | Sim source | ||
| physics_engine | Physics engine | ||
| science_doc | Science document | ||
| rendered_example | Rendered example | ||
| last_verified | Last verified |