Acting as EngineerC3Accept
Extraction schema
The envelope the extraction model must fill. It is generated from the pinned ontology version rather than written by hand, so a schema and the claims produced under it always agree about which attributes and values existed.
SRS section 8.4, structural enforcement
Ontology version
lv-panel/1.3.0
Attributes in schema
6
Toggle below to see the schema change.
Abstention tokens
6
A closed enumeration, not a prompt instruction.
Claims that abstained
4
Countable precisely because abstention is a value rather than free text.
Three things are enforced structurally rather than asked for in a prompt. The abstention vocabulary is a schema enum, so a model that cannot find a value has exactly one legal way to say so. The document context is tool free, so nothing can be fetched mid-extraction and presented as if it came from the document. And the extraction context is separate from the reasoning context, so a model cannot quietly reuse its own earlier output as evidence.
Abstention vocabulary
Six ways to decline, each with a defined meaning and a defined consequence.
| Token | Meaning | Acceptable as a value | Raises an open item | Seen in this project |
|---|---|---|---|---|
| UNKNOWN | The attribute was searched for and no statement about it exists in the source. | no | yes | 1 |
| CLARIFICATION REQUIRED | A statement exists but is ambiguous enough that two readings would produce different engineering. | no | yes | 1 |
| CONFLICT DETECTED | Two or more source statements assert incompatible values for the same attribute. | no | yes | 0 |
| EVIDENCE NOT FOUND | A value was proposed but no source anchor could be resolved for it. Never acceptable. | no | yes | 1 |
| MANUAL CHECK REQUIRED | A value was extracted but fell outside its plausibility envelope or failed unit normalisation. | no | yes | 1 |
| ENGINEERING APPROVAL REQUIRED | The value is a deviation from standard practice and needs a named engineering decision. | no | yes | 0 |
Attributes to include
The schema below is regenerated as you toggle. Nothing outside the selection may appear in the response.
Generated JSON Schema
Every attribute requires a value, the value as written, a unit, a confidence and an anchor. An extraction with no anchor cannot be represented at all.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "urn:gspe:aiceed:extraction:lv-panel/1.3.0",
"title": "AICEED extraction envelope, ontology lv-panel/1.3.0",
"type": "object",
"additionalProperties": false,
"required": [
"ontology_version",
"attributes"
],
"properties": {
"ontology_version": {
"const": "lv-panel/1.3.0"
},
"attributes": {
"type": "object",
"additionalProperties": false,
"properties": {
"RatedVoltage": {
"type": "object",
"additionalProperties": false,
"required": [
"value",
"value_as_written",
"unit",
"anchor",
"confidence"
],
"properties": {
"value": {
"anyOf": [
{
"type": "number",
"minimum": 100,
"maximum": 1000
},
{
"enum": [
"UNKNOWN",
"CLARIFICATION REQUIRED",
"CONFLICT DETECTED",
"EVIDENCE NOT FOUND",
"MANUAL CHECK REQUIRED",
"ENGINEERING APPROVAL REQUIRED"
]
}
]
},
"value_as_written": {
"type": "string"
},
"unit": {
"const": "V"
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"anchor": {
"type": "object",
"additionalProperties": false,
"required": [
"start",
"end",
"quote"
],
"properties": {
"start": {
"type": "integer",
"minimum": 0
},
"end": {
"type": "integer",
"minimum": 0
},
"quote": {
"type": "string",
"minLength": 1
}
}
}
}
},
"RatedCurrentMain": {
"type": "object",
"additionalProperties": false,
"required": [
"value",
"value_as_written",
"unit",
"anchor",
"confidence"
],
"properties": {
"value": {
"anyOf": [
{
"type": "number",
"minimum": 63,
"maximum": 6300
},
{
"enum": [
"UNKNOWN",
"CLARIFICATION REQUIRED",
"CONFLICT DETECTED",
"EVIDENCE NOT FOUND",
"MANUAL CHECK REQUIRED",
"ENGINEERING APPROVAL REQUIRED"
]
}
]
},
"value_as_written": {
"type": "string"
},
"unit": {
"const": "A"
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"anchor": {
"type": "object",
"additionalProperties": false,
"required": [
"start",
"end",
"quote"
],
"properties": {
"start": {
"type": "integer",
"minimum": 0
},
"end": {
"type": "integer",
"minimum": 0
},
"quote": {
"type": "string",
"minLength": 1
}
}
}
}
},
"ShortCircuitWithstandIcw": {
"type": "object",
"additionalProperties": false,
"required": [
"value",
"value_as_written",
"unit",
"anchor",
"confidence"
],
"properties": {
"value": {
"anyOf": [
{
"type": "number",
"minimum": 10,
"maximum": 100
},
{
"enum": [
"UNKNOWN",
"CLARIFICATION REQUIRED",
"CONFLICT DETECTED",
"EVIDENCE NOT FOUND",
"MANUAL CHECK REQUIRED",
"ENGINEERING APPROVAL REQUIRED"
]
}
]
},
"value_as_written": {
"type": "string"
},
"unit": {
"const": "kA"
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"anchor": {
"type": "object",
"additionalProperties": false,
"required": [
"start",
"end",
"quote"
],
"properties": {
"start": {
"type": "integer",
"minimum": 0
},
"end": {
"type": "integer",
"minimum": 0
},
"quote": {
"type": "string",
"minLength": 1
}
}
}
}
},
"ShortCircuitDuration": {
"type": "object",
"additionalProperties": false,
"required": [
"value",
"value_as_written",
"unit",
"anchor",
"confidence"
],
"properties": {
"value": {
"anyOf": [
{
"type": "number",
"minimum": 0.2,
"maximum": 3
},
{
"enum": [
"UNKNOWN",
"CLARIFICATION REQUIRED",
"CONFLICT DETECTED",
"EVIDENCE NOT FOUND",
"MANUAL CHECK REQUIRED",
"ENGINEERING APPROVAL REQUIRED"
]
}
]
},
"value_as_written": {
"type": "string"
},
"unit": {
"const": "s"
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"anchor": {
"type": "object",
"additionalProperties": false,
"required": [
"start",
"end",
"quote"
],
"properties": {
"start": {
"type": "integer",
"minimum": 0
},
"end": {
"type": "integer",
"minimum": 0
},
"quote": {
"type": "string",
"minLength": 1
}
}
}
}
},
"PeakWithstandIpk": {
"type": "object",
"additionalProperties": false,
"required": [
"value",
"value_as_written",
"unit",
"anchor",
"confidence"
],
"properties": {
"value": {
"anyOf": [
{
"type": "number",
"minimum": 20,
"maximum": 250
},
{
"enum": [
"UNKNOWN",
"CLARIFICATION REQUIRED",
"CONFLICT DETECTED",
"EVIDENCE NOT FOUND",
"MANUAL CHECK REQUIRED",
"ENGINEERING APPROVAL REQUIRED"
]
}
]
},
"value_as_written": {
"type": "string"
},
"unit": {
"const": "kA"
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"anchor": {
"type": "object",
"additionalProperties": false,
"required": [
"start",
"end",
"quote"
],
"properties": {
"start": {
"type": "integer",
"minimum": 0
},
"end": {
"type": "integer",
"minimum": 0
},
"quote": {
"type": "string",
"minLength": 1
}
}
}
}
},
"IPRating": {
"type": "object",
"additionalProperties": false,
"required": [
"value",
"value_as_written",
"unit",
"anchor",
"confidence"
],
"properties": {
"value": {
"enum": [
"IP31",
"IP41",
"IP42",
"IP54",
"IP55",
"IP65",
"IP66",
"UNKNOWN",
"CLARIFICATION REQUIRED",
"CONFLICT DETECTED",
"EVIDENCE NOT FOUND",
"MANUAL CHECK REQUIRED",
"ENGINEERING APPROVAL REQUIRED"
]
},
"value_as_written": {
"type": "string"
},
"unit": {
"type": "null"
},
"confidence": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"anchor": {
"type": "object",
"additionalProperties": false,
"required": [
"start",
"end",
"quote"
],
"properties": {
"start": {
"type": "integer",
"minimum": 0
},
"end": {
"type": "integer",
"minimum": 0
},
"quote": {
"type": "string",
"minLength": 1
}
}
}
}
}
}
}
}
}Request shape
What the sandbox sends to an OpenAI-compatible endpoint. Note the absence of a tools array: the zero-tool document context is a property of the request, not an instruction inside it.
{
"model": "${MODEL}",
"messages": [
{
"role": "system",
"content": "You extract engineering attributes from the supplied document. You may only use the document text provided."
},
{
"role": "user",
"content": "<document revision text>"
}
],
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "aiceed_extraction",
"strict": true,
"schema": "<the schema above>"
}
},
"temperature": 0
}