Created
July 29, 2011 23:57
-
-
Save mpictor/1114995 to your computer and use it in GitHub Desktop.
express schema that exposes fedex_plus bug
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SCHEMA SPACES_IN_FUNCTION; | |
TYPE label = STRING; END_TYPE; | |
TYPE identifier = STRING; END_TYPE; | |
TYPE text = STRING; END_TYPE; | |
TYPE transformation = STRING; END_TYPE; | |
TYPE rigid_placement = STRING; END_TYPE; | |
TYPE dimension_count = INTEGER; END_TYPE; | |
TYPE compound_item_definition = STRING; END_TYPE; | |
TYPE founded_item_select = STRING; END_TYPE; | |
TYPE id_attribute_select = STRING; END_TYPE; | |
FUNCTION dimension_of(item : geometric_representation_item) : dimension_count; END_FUNCTION; | |
FUNCTION using_representations(item : founded_item_select) : SET OF representation; END_FUNCTION; | |
FUNCTION item_in_context(item : representation_item; cntxt : representation_context) : BOOLEAN; LOCAL y : BAG OF representation_item; END_LOCAL;END_FUNCTION; | |
FUNCTION get_id_value(obj : id_attribute_select) : identifier; END_FUNCTION; | |
ENTITY representation; name : label; items : SET [1:?] OF representation_item; context_of_items : representation_context; DERIVE id : identifier := get_id_value(SELF); WHERE wr1 : SIZEOF(USEDIN(SELF, 'AUTOMOTIVE_DESIGN.ID_ATTRIBUTE.IDENTIFIED_ITEM' )) <= 1; END_ENTITY; | |
ENTITY representation_context; context_type : text; INVERSE representations_in_context : SET [1:?] OF representation FOR context_of_items ; END_ENTITY; | |
ENTITY representation_item SUPERTYPE OF (ONEOF (compound_representation_item, mapped_item)); WHERE wr1 : SIZEOF(using_representations(SELF)) > 0; END_ENTITY; | |
ENTITY mapped_item SUBTYPE OF (representation_item); mapping_source : representation_map; mapping_target : representation_item; END_ENTITY; | |
ENTITY geometric_representation_item SUBTYPE OF (representation_item); DERIVE dim : dimension_count := dimension_of(SELF); END_ENTITY; | |
ENTITY compound_representation_item SUBTYPE OF (representation_item); item_element : compound_item_definition; END_ENTITY; | |
ENTITY representation_map; mapping_origin : representation_item; mapped_representation : representation; INVERSE map_usage : SET [1:?] OF mapped_item FOR mapping_source; WHERE wr1 : item_in_context(SELF.mapping_origin, SELF.mapped_representation. context_of_items); END_ENTITY; | |
ENTITY representation_relationship; rep_1 : representation; rep_2 : representation; END_ENTITY; | |
ENTITY representation_relationship_with_transformation SUBTYPE OF (representation_relationship); transformation_operator : transformation; WHERE wr1 : SELF\representation_relationship.rep_1.context_of_items :<>: SELF\ representation_relationship.rep_2.context_of_items; END_ENTITY; | |
(********************************************************************************** | |
When fedex_plus translates the next line, spaces are inserted into a function name: | |
SdaiSPACES_IN_FUNCTION.h:550: const SdaiKinematic_frame_based_transformation_ptr representation_relationship_with_transformation_ transformation_operator_() const; | |
**********************************************************************************) | |
ENTITY kinematic_frame_based_transformation SUBTYPE OF (geometric_representation_item); transformator : rigid_placement; WHERE wr1 : SELF\geometric_representation_item.dim = 3; END_ENTITY; | |
ENTITY kinematic_frame_background_representation_association SUBTYPE OF (representation_relationship_with_transformation); SELF\representation_relationship_with_transformation.transformation_operator : kinematic_frame_based_transformation; WHERE transformation_operator\kinematic_frame_based_transformation.transformator IN SELF\representation_relationship.rep_1.items; END_ENTITY; | |
END_SCHEMA; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment