269 lines
10 KiB
JSON
269 lines
10 KiB
JSON
{
|
|
"schema": "mechanical_semantic_graph_v1",
|
|
"model_identity": {
|
|
"name": "string",
|
|
"source_assembly_path": "string",
|
|
"likely_equipment_type": "string",
|
|
"confidence": 0,
|
|
"evidence": [
|
|
"component/edge/region/relation ids"
|
|
]
|
|
},
|
|
"nodes": [
|
|
{
|
|
"id": "node_id",
|
|
"type": "part|feature|face_region|interface|process_role|functional_role|missing_or_uncertain",
|
|
"semantic_type": "cast_housing|end_cover|machined_register|local_machined_face|surrounding_unmachined_surface|raised_boss|tool_gap|ejector_port|unknown",
|
|
"name": "human readable Chinese name",
|
|
"source_refs": [
|
|
"component names, edge ids, region ids, patch ids, face ids"
|
|
],
|
|
"confidence": 0,
|
|
"evidence": "short explanation grounded in B-rep facts"
|
|
}
|
|
],
|
|
"edges": [
|
|
{
|
|
"id": "edge_id",
|
|
"type": "contacts|fits_with|coaxial_with|contains|adjacent_to|outside_accessible|supports|locates|is_machined_candidate_of|is_cast_candidate_of|has_boundary_step|missing_required_relation",
|
|
"from": "node_id",
|
|
"to": "node_id",
|
|
"source_refs": [
|
|
"relation ids or edge/face refs"
|
|
],
|
|
"confidence": 0,
|
|
"evidence": "short explanation grounded in B-rep facts"
|
|
}
|
|
],
|
|
"measurements": [
|
|
{
|
|
"id": "measurement_id",
|
|
"type": "radius|diameter|axial_span|radial_margin|gap_width|step_height|area_ratio|unknown_threshold",
|
|
"value": "number or null",
|
|
"units": "mm|model_units|unitless|unknown",
|
|
"source_refs": [
|
|
"dimension ids, cylinder faces, edges, patches"
|
|
],
|
|
"confidence": 0
|
|
}
|
|
],
|
|
"local_subgraphs": [
|
|
{
|
|
"id": "subgraph_id",
|
|
"pattern_type": "casting_boss_register_interface|machined_unmachined_surface_boundary|sleeve_removal_access|bearing_support|other",
|
|
"primary_view": "assembly_contact_fit|disassembly_maintenance_access|drawing_annotation_requirement|feature_pattern|load_strength_stiffness|locating_limit_datum|motion_interference_dof|operation_safety_environment|part_local_shape|surface_role_boundary|system_function_condition|transmission_standard_parameters",
|
|
"secondary_views": [
|
|
"optional diagnostic view ids"
|
|
],
|
|
"retrieval_sentence": "neutral Chinese fact sentence for knowledge retrieval; no rule id and no fault judgement words",
|
|
"inferred_functions": [
|
|
"assembly, locating, support, sealing, machining, maintenance, or motion functions inferred from evidence"
|
|
],
|
|
"inferred_attributes": [
|
|
{
|
|
"name": "machined_surface_candidate|unmachined_surface_candidate|locating_face_candidate|contact_face_candidate|tool_access_limited|other",
|
|
"value": true,
|
|
"confidence": 0,
|
|
"reason": "short evidence-grounded reason; no final fault judgement",
|
|
"source_image_names": [
|
|
"exact image names used for this inference"
|
|
],
|
|
"source_brep_refs": [
|
|
"face/feature/component refs used for this inference"
|
|
],
|
|
"source_relation_refs": [
|
|
"contact/mate/relation refs used for this inference"
|
|
]
|
|
}
|
|
],
|
|
"retrieval_fact_tags": [
|
|
"stable model-side fact tags aligned with knowledge required_model_facts; no rule ids"
|
|
],
|
|
"retrieval_relations": [
|
|
"human-readable local relations used for retrieval"
|
|
],
|
|
"image_evidence_names": [
|
|
"exact image names or image plan ids that support this local subgraph"
|
|
],
|
|
"image_observations": [
|
|
{
|
|
"image_name": "component_contexts/component_13/isometric",
|
|
"observation": "what this image shows",
|
|
"supports": [
|
|
"role or inferred attribute name"
|
|
],
|
|
"confidence": 0
|
|
}
|
|
],
|
|
"node_ids": [
|
|
"node_id"
|
|
],
|
|
"edge_ids": [
|
|
"edge_id"
|
|
],
|
|
"measurement_ids": [
|
|
"measurement_id"
|
|
],
|
|
"roles": [
|
|
"semantic roles grounded by this subgraph"
|
|
],
|
|
"retrieval_keywords": [
|
|
"Chinese and English keywords for knowledge-base retrieval"
|
|
],
|
|
"confidence": 0,
|
|
"evidence": [
|
|
"edge/region/patch/component/relation ids"
|
|
],
|
|
"reason": "why this subgraph is suitable for matching a knowledge chunk"
|
|
}
|
|
],
|
|
"local_semantic_units": [
|
|
{
|
|
"local_id": "unit_id",
|
|
"linked_subgraph_id": "subgraph_id",
|
|
"pattern_type": "casting_boss_register_interface|machined_unmachined_surface_boundary|sleeve_removal_access|bearing_support|other",
|
|
"primary_view": "same taxonomy id used by the knowledge index",
|
|
"secondary_views": [
|
|
"optional diagnostic view ids"
|
|
],
|
|
"retrieval_sentence": "one neutral Chinese fact sentence. This is the primary retrieval unit.",
|
|
"retrieval_chain": {
|
|
"geometric_fact_for_retrieval": "human-readable geometric fact generalized for retrieval; no coordinates or raw ids",
|
|
"mechanical_role": "mechanical role inferred from the geometry, such as internal machined surface, locating boss, contact pad, maintenance opening",
|
|
"process_assembly_maintenance_semantics": "manufacturing, assembly, disassembly, maintenance, strength, locating, or motion semantics used for retrieval"
|
|
},
|
|
"retrieval_semantic_roles": [
|
|
"retrieval-only semantic role labels; no raw B-rep ids"
|
|
],
|
|
"inferred_functions": [
|
|
"component or local feature functions inferred for retrieval"
|
|
],
|
|
"inferred_attributes": [
|
|
{
|
|
"name": "machined_surface_candidate|unmachined_surface_candidate|locating_face_candidate|contact_face_candidate|tool_access_limited|other",
|
|
"value": true,
|
|
"confidence": 0,
|
|
"reason": "short evidence-grounded reason; no final fault judgement",
|
|
"source_image_names": [
|
|
"exact image names used for this inference"
|
|
],
|
|
"source_brep_refs": [
|
|
"face/feature/component refs used for this inference"
|
|
],
|
|
"source_relation_refs": [
|
|
"contact/mate/relation refs used for this inference"
|
|
]
|
|
}
|
|
],
|
|
"retrieval_fact_tags": [
|
|
"through_hole_candidate, entry_face_inclined, small_local_contact_face, surrounding_large_surface, etc."
|
|
],
|
|
"retrieval_relations": [
|
|
"hole enters inclined surface, local contact face is near-coplanar with surrounding surface, etc."
|
|
],
|
|
"image_evidence_names": [
|
|
"exact image names or image plan ids that support this local semantic unit"
|
|
],
|
|
"image_observations": [
|
|
{
|
|
"image_name": "component_highlights/component_13/isometric",
|
|
"observation": "what this image supports",
|
|
"supports": [
|
|
"retrieval role, function, or inferred attribute name"
|
|
],
|
|
"confidence": 0
|
|
}
|
|
],
|
|
"normalized_measurements": [
|
|
{
|
|
"name": "axis_to_face_angle|step_height|diameter|clearance|area_ratio|other",
|
|
"value": null,
|
|
"unit": "mm|deg|unitless|unknown",
|
|
"confidence": 0
|
|
}
|
|
],
|
|
"fact_bundle": {
|
|
"geometry_description_for_judgement": "concrete geometry description used only after retrieval for verification",
|
|
"components": [
|
|
"component names or node ids"
|
|
],
|
|
"roles": [
|
|
"local semantic roles"
|
|
],
|
|
"measurements": [
|
|
"measurement ids and values if available"
|
|
],
|
|
"evidence_refs": [
|
|
"edge/region/patch/component/relation ids"
|
|
],
|
|
"uncertainties": [
|
|
"missing facts that affect final judgement"
|
|
]
|
|
},
|
|
"dedup_key": "stable key for this local unit"
|
|
}
|
|
],
|
|
"semantic_coverage_audit": {
|
|
"purpose": "machine-checkable audit proving local semantic units were split by coverage, not collapsed into a few generic descriptions",
|
|
"candidate_anchor_types": [
|
|
"part",
|
|
"feature",
|
|
"interface",
|
|
"functional_group"
|
|
],
|
|
"minimum_rules": [
|
|
"Create at least one part-level local unit for every nonstandard component instance whose review_scope is part_design_required.",
|
|
"Create feature-level local units for supported holes, hole groups, slots, bosses, ribs, steps, shafts, sleeves, pads, machining candidates, locating/contact faces, and tool-access candidates.",
|
|
"Create interface-level local units for supported contacts, fits, coaxial relations, mate relations, support/locating relations, motion pairs, and clearance/accessibility relations.",
|
|
"Create functional-group local units for each geometry-derived internal component group or connected mechanism group when evidence supports group-level judgement.",
|
|
"Do not merge separate physical locations just because they share the same feature type; do merge repeated equivalent features into one group when they share owner, role, dimensions, and relation signature."
|
|
],
|
|
"covered_part_component_ids": [
|
|
"component ids with at least one local semantic unit"
|
|
],
|
|
"covered_feature_anchor_ids": [
|
|
"feature ids or face-group ids covered by feature-level units"
|
|
],
|
|
"covered_interface_relation_ids": [
|
|
"contact/mate/relation ids covered by interface-level units"
|
|
],
|
|
"covered_functional_group_ids": [
|
|
"internal/component group ids covered by group-level units"
|
|
],
|
|
"uncovered_candidate_anchors": [
|
|
{
|
|
"anchor_type": "part|feature|interface|functional_group",
|
|
"anchor_id": "id from B-rep evidence",
|
|
"reason_not_covered": "standard/context-only component, duplicate equivalent anchor, insufficient evidence, or intentionally excluded"
|
|
}
|
|
],
|
|
"local_unit_count_by_anchor_type": {
|
|
"part": 0,
|
|
"feature": 0,
|
|
"interface": 0,
|
|
"functional_group": 0
|
|
}
|
|
},
|
|
"uncertain_roles": [
|
|
{
|
|
"role": "string",
|
|
"candidate_node_ids": [
|
|
"node_id"
|
|
],
|
|
"why_uncertain": "string",
|
|
"facts_needed": [
|
|
"specific B-rep or metadata facts"
|
|
]
|
|
}
|
|
],
|
|
"missing_facts": [
|
|
"specific missing facts that prevent reliable diagnosis"
|
|
],
|
|
"evidence_index": [
|
|
{
|
|
"ref": "edge/region/patch/component/face/relation id",
|
|
"kind": "edge|region|patch|component|face|relation|dimension",
|
|
"summary": "what this evidence supports"
|
|
}
|
|
]
|
|
} |