(* SCHEMA integrated_cnc_schema; *)
RULE chamfer_requires_faces_or_features FOR
(chamfer,
property_definition_representation,
feature_component_relationship);
WHERE
WR1: (0 = SIZEOF (QUERY (cf <* chamfer | NOT (
-- chamfer relates two sets of faces in AP-224 style
((1 = SIZEOF (QUERY (pdr <* property_definition_representation |
((pdr.used_representation.name = 'chamfer face') AND
(pdr.definition.definition :=: cf) AND
('INTEGRATED_CNC_SCHEMA.FACE_SHAPE_REPRESENTATION'
IN TYPEOF (pdr.used_representation)))))) AND
(1 = SIZEOF (QUERY (fcr <* feature_component_relationship |
((fcr.relating_shape_aspect :=: cf) AND
(fcr.related_shape_aspect.description = 'first offset') AND
('INTEGRATED_CNC_SCHEMA.CHAMFER_OFFSET'
IN TYPEOF (fcr.related_shape_aspect)) AND
((1 = SIZEOF (QUERY (pdr <* property_definition_representation |
((pdr.used_representation.name = 'first face shape') AND
(pdr.definition.definition :=: fcr.related_shape_aspect) AND
('INTEGRATED_CNC_SCHEMA.FACE_SHAPE_REPRESENTATION'
IN TYPEOF (pdr.used_representation)))
)))) )))) AND
(1 = SIZEOF (QUERY (fcr <* feature_component_relationship |
((fcr.relating_shape_aspect :=: cf) AND
(fcr.related_shape_aspect.description = 'second offset') AND
('INTEGRATED_CNC_SCHEMA.CHAMFER_OFFSET'
IN TYPEOF (fcr.related_shape_aspect)) AND
((1 = SIZEOF (QUERY (pdr <* property_definition_representation |
((pdr.used_representation.name = 'second face shape') AND
(pdr.definition.definition :=: fcr.related_shape_aspect) AND
('INTEGRATED_CNC_SCHEMA.FACE_SHAPE_REPRESENTATION'
IN TYPEOF (pdr.used_representation)))
)))) ))))
)
OR
-- chamfer relates two features in ISO 14649 style
((1 = SIZEOF (QUERY (fcr <* feature_component_relationship |
((fcr.name = 'first feature') AND
(fcr.relating_shape_aspect.of_shape.definition :=: cf) AND
('INTEGRATED_CNC_SCHEMA.COMPOSITE_SHAPE_ASPECT'
IN TYPEOF (fcr.relating_shape_aspect)))))) AND
(1 = SIZEOF (QUERY (fcr <* feature_component_relationship |
((fcr.name = 'second feature') AND
(fcr.relating_shape_aspect.of_shape.definition :=: cf) AND
('INTEGRATED_CNC_SCHEMA.COMPOSITE_SHAPE_ASPECT'
IN TYPEOF (fcr.relating_shape_aspect)))))))
))));
END_RULE; -- 10303-238: integrated_cnc_schema
Generated by STEP ToolsTM EXPRESS to HTML Converter
on 2010-01-12T10:42:25-02:00