ENTITY pocket SUBTYPE OF (feature_definition); WHERE wr1: (SELF\characterized_object.description IN ['closed rectangular','open rectangular', 'complex', 'circular cutout', 'complex cutout', 'recess']); wr2: (SIZEOF(QUERY ( pds <* QUERY ( pd <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)) ) | (NOT (SIZEOF(QUERY ( sa_occ <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | ((sa_occ.description = 'pocket depth occurrence') AND (SIZEOF(QUERY ( sdr <* QUERY ( sar <* USEDIN(sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | ((sar.description = 'path feature component usage') AND (sar.name = 'pocket depth') AND (('AIC_MACHINING_FEATURE.SHAPE_DEFINING_RELATIONSHIP') IN TYPEOF(sar))) ) | (('TOPOLOGY_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description ='linear')) )) = 1)) )) = 1)) )) = 0); wr3: SIZEOF(QUERY(pdr <* get_property_definition_representations (SELF) | ( 'SHAPE_ASPECT_DEFINITION_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF ( pdr.used_representation ) ) )) =1; wr4: SIZEOF( QUERY( pd <* USEDIN( SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | SIZEOF( QUERY( pdr <* USEDIN( pd, 'PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION') | ('SHAPE_ASPECT_DEFINITION_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ({1 <= SIZEOF(pdr.used_representation.items) <= 2} ) )) = 1 )) = 1; wr5: SIZEOF( QUERY( pd <* USEDIN( SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | SIZEOF( QUERY( pdr <* USEDIN( pd, 'PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION') | ('SHAPE_ASPECT_DEFINITION_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF( QUERY( srwp_i <* pdr.used_representation.items | (srwp_i.name = 'orientation') OR (srwp_i.name = 'fillet radius'))) = SIZEOF(pdr.used_representation.items)) )) = 1 )) = 1; wr6: SIZEOF (QUERY (pd <* USEDIN (SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | NOT (SIZEOF (QUERY (impl_rep <* QUERY (pdr <* USEDIN (pd, 'PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION') | 'SHAPE_ASPECT_DEFINITION_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF (pdr.used_representation)) | NOT (SIZEOF (QUERY (it <* impl_rep.used_representation.items | (SIZEOF ( ['QUALIFIED_MEASURE_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'MEASURE_SCHEMA.LENGTH_MEASURE_WITH_UNIT'] * TYPEOF (it)) = 2) AND (it.name = 'fillet radius'))) <= 1))) = 0))) = 0; wr7: ((NOT (SELF\characterized_object.description IN ['complex', 'non-circular cutout','recess'])) OR (SIZEOF(QUERY ( pds <* QUERY ( pd <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)) ) | (NOT (SIZEOF(QUERY ( sa_occ <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | ((sa_occ.description = 'boundary occurrence') AND (SIZEOF(QUERY ( sdr <* QUERY ( sar <* USEDIN(sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | ((sar.description = 'profile usage') AND (('AIC_MACHINING_FEATURE.SHAPE_DEFINING_RELATIONSHIP') IN TYPEOF(sar))) ) | ((SIZEOF([ 'AIC_MACHINING_FEATURE.CIRCULAR_CLOSED_PROFILE', 'AIC_MACHINING_FEATURE.NGON_CLOSED_PROFILE', 'AIC_MACHINING_FEATURE.RECTANGULAR_CLOSED_PROFILE', 'AIC_MACHINING_FEATURE.CLOSED_PATH_PROFILE', 'AIC_MACHINING_FEATURE.SQUARE_U_PROFILE', 'AIC_MACHINING_FEATURE.PARTIAL_CIRCULAR_PROFILE', 'AIC_MACHINING_FEATURE.ROUNDED_U_PROFILE', 'AIC_MACHINING_FEATURE.VEE_PROFILE', 'AIC_MACHINING_FEATURE.TEE_PROFILE', 'AIC_MACHINING_FEATURE.OPEN_PATH_PROFILE'] * TYPEOF(sdr.relating_shape_aspect)) = 1)) )) = 1)) )) = 1)) )) = 0)); wr8: ((NOT (SELF\characterized_object.description = 'closed rectangular')) OR (SIZEOF(QUERY ( pds <* QUERY ( pd <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)) ) | (NOT (SIZEOF(QUERY ( sa_occ <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | ((sa_occ.description = 'closed boundary occurrence') AND (SIZEOF(QUERY ( sdr <* QUERY ( sar <* USEDIN(sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | ((sar.description = 'profile usage') AND (('AIC_MACHINING_FEATURE.SHAPE_DEFINING_RELATIONSHIP') IN TYPEOF(sar))) ) | (('AIC_MACHINING_FEATURE.RECTANGULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect))) )) = 1)) )) = 1)) )) = 0)); wr9: ((NOT (SELF\characterized_object.description = 'open rectangular')) OR (SIZEOF(QUERY ( pds <* QUERY ( pd <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)) ) | (NOT (SIZEOF(QUERY ( sa_occ <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | ((sa_occ.description = 'open boundary occurrence') AND (SIZEOF(QUERY ( sdr <* QUERY ( sar <* USEDIN(sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | ((sar.description = 'profile usage') AND (('AIC_MACHINING_FEATURE.SHAPE_DEFINING_RELATIONSHIP') IN TYPEOF(sar))) ) | (('AIC_MACHINING_FEATURE.SQUARE_U_PROFILE' IN TYPEOF(sdr.relating_shape_aspect))) )) = 1)) )) = 1)) )) = 0)); wr10: (SIZEOF(QUERY ( pds <* QUERY ( pd <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)) ) | (NOT (SIZEOF(QUERY ( sa_occ <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | ((sa_occ.description = 'bottom condition occurrence') AND (SIZEOF(QUERY ( sdr <* QUERY ( sar <* USEDIN(sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | ((sar.description = 'pocket bottom usage') AND (('AIC_MACHINING_FEATURE.FEATURE_COMPONENT_RELATIONSHIP') IN TYPEOF(sar))) ) | (('AIC_MACHINING_FEATURE.POCKET_BOTTOM' IN TYPEOF(sdr.relating_shape_aspect)) AND ('AIC_MACHINING_FEATURE.POCKET' IN TYPEOF(sdr.related_shape_aspect.of_shape.definition))) )) = 1)) )) = 1)) )) = 0); wr11: ((NOT (SELF\characterized_object.description IN ['complex', 'non-circular cutout','recess'])) OR (SIZEOF(QUERY ( pds <* QUERY ( pd <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)) ) | (NOT (SIZEOF(QUERY ( sa_occ <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | ((sa_occ.description = 'change in boundary occurrence') AND (SIZEOF(QUERY ( fcr <* QUERY ( sar <* USEDIN(sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT') | ((sar.description = 'taper usage') AND (('AIC_MACHINING_FEATURE.FEATURE_COMPONENT_RELATIONSHIP') IN TYPEOF(sar))) ) | (('AIC_MACHINING_FEATURE.TAPER' IN TYPEOF(fcr.relating_shape_aspect)) AND ('AIC_MACHINING_FEATURE.POCKET' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)) AND (fcr.related_shape_aspect.description IN ['angle taper','directed taper'])) )) = 1)) )) <= 1)) )) = 0)); wr12: (NOT (SELF\characterized_object.description = 'circular cutout')) OR (SIZEOF (QUERY (pds <* QUERY (pd <* USEDIN (SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF (pd)) | NOT (SIZEOF (QUERY (sa_occ <* USEDIN (pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | (sa_occ.description = 'enclosed boundary occurrence') AND (SIZEOF (QUERY (sdr <* QUERY (sar <* USEDIN (sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | (sar.description = 'profile usage') AND ('AIC_MACHINING_FEATURE.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF (sar))) | ('AIC_MACHINING_FEATURE.CIRCULAR_CLOSED_PROFILE' IN TYPEOF (sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); wr13: (NOT (SELF\characterized_object.description IN ['circular cutout','complex cutout'])) OR (SIZEOF (QUERY (pds <* QUERY (pd <* USEDIN (SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF (pd)) | NOT (SIZEOF (QUERY (sa_occ <* USEDIN (pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | (sa_occ.description = 'bottom condition occurrence') AND (SIZEOF (QUERY (sdr <* QUERY (sar <* USEDIN (sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | (sar.description = 'pocket bottom usage') AND ('AIC_MACHINING_FEATURE.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF (sar))) | (('AIC_MACHINING_FEATURE.POCKET_BOTTOM' IN TYPEOF (sdr.relating_shape_aspect)) AND ('AIC_MACHINING_FEATURE.POCKET' IN TYPEOF (sdr.related_shape_aspect.of_shape.definition))AND (sdr.relating_shape_aspect.description = 'through') ) )) = 1))) = 1))) = 0); wr14: (NOT (SELF\characterized_object.description = 'recess')) OR (SIZEOF (QUERY (pds <* QUERY (pd <* USEDIN (SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF (pd)) | NOT (SIZEOF (QUERY (sa_occ <* USEDIN (pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | (sa_occ.description = 'bottom condition occurrence') AND (SIZEOF (QUERY (sdr <* QUERY (sar <* USEDIN (sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT') | (sar.description = 'pocket bottom usage') AND ('AIC_MACHINING_FEATURE.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF (sar))) | (('AIC_MACHINING_FEATURE.POCKET_BOTTOM' IN TYPEOF (sdr.relating_shape_aspect)) AND ('AIC_MACHINING_FEATURE.POCKET' IN TYPEOF (sdr.related_shape_aspect.of_shape.definition)) AND (sdr.relating_shape_aspect.description IN ['planar','complex']) ) )) = 1))) = 1))) = 0); wr15: SIZEOF(QUERY(pdr <* get_property_definition_representations (SELF) | ( 'AIC_MACHINING_FEATURE.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF ( pdr.used_representation ) ) AND ( pdr.used_representation.name ='maximum feature limit'))) >=0; wr16: ((NOT (SELF\characterized_object.description IN ['closed rectangular','open rectangular', 'complex', 'recess'])) OR (SIZEOF(QUERY ( pds <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | (('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY ( csa <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | (('SHAPE_ASPECT_DEFINITION_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (csa.name='uncut volume') AND (SIZEOF(QUERY ( sar <* csa.component_relationships | ((('AIC_MACHINING_FEATURE.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (SIZEOF(['AIC_MACHINING_FEATURE.BOSS','AIC_MACHINING_FEATURE.PROTRUSION'] * TYPEOF(sar.related_shape_aspect))=1) ) ))) = 1)) )) <= 1)) )) = 1)); wr17: ((NOT (SELF\characterized_object.description IN ['closed rectangular','open rectangular'])) OR (SIZEOF(QUERY ( pds <* QUERY ( pd <* USEDIN(SELF, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.PROPERTY_DEFINITION.DEFINITION') | ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)) ) | (NOT (SIZEOF(QUERY ( sa_occ <* USEDIN(pds, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT.OF_SHAPE') | ((sa_occ.description = 'change in boundary occurrence') AND (SIZEOF(QUERY ( fcr <* QUERY ( sar <* USEDIN(sa_occ, 'PRODUCT_PROPERTY_DEFINITION_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT') | ((sar.description = 'taper usage') AND (('AIC_MACHINING_FEATURE.FEATURE_COMPONENT_RELATIONSHIP') IN TYPEOF(sar))) ) | (('AIC_MACHINING_FEATURE.TAPER' IN TYPEOF(fcr.relating_shape_aspect)) AND ('AIC_MACHINING_FEATURE.POCKET' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)) AND (fcr.related_shape_aspect.description IN ['angle taper','directed taper'])) )) >= 1)) )) <=1)) )) = 0)); END_ENTITY; -- pocket |
Entity data types and their attributescharacterized_objectname: label; (OPT) description: text; feature_definition - - |
Global rules for this entity data type- |
public interface EPocket extends EFeature_definition |
public class CPocket implements EPocket |
public class APocket extends AEntitypublic EPocket getByIndex(int index)public EPocket getCurrentMember(SdaiIterator it) |