Files
cadSet/designir-pipeline/contracts/feature_tree.schema.json
T

299 lines
6.9 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://cad-agent.local/contracts/solidworks-feature-manager.schema.json",
"title": "SolidWorks FeatureManager style feature_tree.json",
"type": "object",
"required": [
"schema_version",
"tree_kind",
"model",
"source",
"feature_manager",
"rebuild_contract",
"validation"
],
"properties": {
"schema_version": {
"const": "1.0"
},
"tree_kind": {
"const": "solidworks_feature_manager"
},
"model": {
"type": "object",
"required": ["model_id", "units", "document_type"],
"properties": {
"model_id": {},
"family": {},
"units": {
"type": "string"
},
"document_type": {
"const": "part"
}
},
"additionalProperties": true
},
"source": {
"type": "object",
"required": [
"authority",
"reconstruction_mode",
"history_kind",
"claims_original_solidworks_history"
],
"properties": {
"authority": {
"const": "designir-3.0"
},
"designir_path": {},
"step_path": {},
"parameters_path": {},
"reconstruction_mode": {},
"history_kind": {
"enum": [
"authored_semantic",
"hybrid_semantic_surface",
"inferred_from_step",
"unknown"
]
},
"backend": {},
"claims_original_solidworks_history": {
"type": "boolean"
}
},
"additionalProperties": true
},
"feature_manager": {
"type": "object",
"required": ["root_id", "standard_root", "nodes"],
"properties": {
"root_id": {
"type": "string"
},
"standard_root": {
"type": "object"
},
"nodes": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "#/$defs/node"
}
}
},
"additionalProperties": false
},
"rebuild_contract": {
"type": "object",
"required": ["kind", "entrypoint"],
"properties": {
"kind": {
"enum": ["feature_manager_native", "surfaceir_imported_feature"]
},
"entrypoint": {
"type": "string"
},
"backend": {},
"payload_node": {
"type": "string"
},
"payload_encoding": {
"const": "gzip+base64+json"
},
"payload_sha256": {
"type": "string"
}
},
"additionalProperties": true
},
"validation": {
"type": "object"
}
},
"$defs": {
"node": {
"type": "object",
"required": [
"id",
"order",
"solidworks_type",
"display_name",
"english_name",
"children",
"inputs",
"parameters",
"definition",
"dimensions",
"references",
"selection_sets",
"operation_spec",
"result",
"rebuild",
"provenance",
"confidence",
"rebuildable"
],
"properties": {
"id": {
"type": "string",
"minLength": 1
},
"order": {
"type": "integer",
"minimum": 0
},
"solidworks_type": {
"enum": [
"Part",
"HistoryFolder",
"OriginProfileFeature",
"RefPlane",
"RefAxis",
"ProfileFeature",
"BossExtrude",
"CutExtrude",
"Revolve",
"RevolvedCut",
"HoleWizard",
"Fillet",
"Chamfer",
"LinearPattern",
"CircularPattern",
"MirrorPattern",
"ImportedFeature",
"UnsupportedFeature"
]
},
"display_name": {
"type": "string"
},
"english_name": {
"type": "string"
},
"children": {
"type": "array",
"items": {
"type": "string"
}
},
"inputs": {
"type": "object"
},
"parameters": {
"type": "array",
"items": {
"$ref": "#/$defs/parameter"
}
},
"definition": {
"type": "object"
},
"dimensions": {
"type": "array",
"items": {
"$ref": "#/$defs/dimension"
}
},
"references": {
"type": "object",
"properties": {
"parent": {},
"sketch": {},
"plane": {},
"parent_features": {
"type": "array",
"items": {"type": "string"}
},
"child_features": {
"type": "array",
"items": {"type": "string"}
}
},
"additionalProperties": true
},
"selection_sets": {
"type": "object",
"properties": {
"selected_faces": {"type": "array"},
"selected_edges": {"type": "array"},
"selected_contours": {"type": "array"}
},
"additionalProperties": true
},
"operation_spec": {
"type": "object"
},
"result": {
"type": "object"
},
"rebuild": {
"type": "object",
"properties": {
"suppressed": {"type": "boolean"},
"rollback_order": {"type": "integer"},
"status": {"type": "string"}
},
"additionalProperties": true
},
"provenance": {
"type": "object"
},
"confidence": {
"type": ["number", "null"]
},
"rebuildable": {
"type": "boolean"
}
},
"additionalProperties": false
},
"dimension": {
"type": "object",
"required": ["id", "name", "display_name"],
"properties": {
"id": {"type": "string"},
"name": {"type": "string"},
"display_name": {"type": "string"},
"value": {},
"default_value": {},
"unit": {},
"parameter_binding": {},
"driven": {"type": "boolean"}
},
"additionalProperties": true
},
"parameter": {
"type": "object",
"required": ["id", "name", "display_name", "binding_id"],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"display_name": {
"type": "string"
},
"value": {},
"default_value": {},
"unit": {},
"binding_id": {
"type": "string"
},
"editable": {
"type": "boolean"
},
"edit_state": {},
"source_pointer": {
"type": "string"
}
},
"additionalProperties": true
}
},
"additionalProperties": false
}