choice_set
INSTANCE choice_set#7;
extracted_from = {oneof_supertype_expression#37};
description = "supertype_expression is constrained to have at most one (optional = false) of the values {oneof_supertype_expression, and_supertype_expression, andor_supertype_expression}";
choice_set = {entity_type#252, entity_type#253, entity_type#254};
is_optional = false;
constrained_entity = entity_type#251;
END_INSTANCE;
INSTANCE choice_set#8;
extracted_from = {defined_type#61};
description = "expression is constrained to have at most one (optional = false) of the values {parameter_type, underlying_type, indeterminate_type}";
choice_set = {defined_type#60, defined_type#58, defined_type#62};
is_optional = false;
constrained_entity = entity_type#242;
attribute = explicit_attribute#378;
END_INSTANCE;
INSTANCE choice_set#9;
extracted_from = {defined_type#47};
description = "attribute is constrained to have at most one (optional = false) of the values {simple_type, aggregation_type, named_type}";
choice_set = {defined_type#48, entity_type#210, entity_type#187};
is_optional = false;
constrained_entity = entity_type#193;
attribute = explicit_attribute#323;
END_INSTANCE;
INSTANCE choice_set#10;
extracted_from = {defined_type#49};
description = "aggregation_type is constrained to have at most one (optional = false) of the values {set_type, bag_type, list_type, array_type}";
choice_set = {enumeration_symbol#109, enumeration_symbol#110, enumeration_symbol#111, enumeration_symbol#112};
is_optional = false;
constrained_entity = entity_type#210;
attribute = explicit_attribute#324;
END_INSTANCE;
INSTANCE choice_set#11;
extracted_from = {defined_type#47};
description = "aggregation_type is constrained to have at most one (optional = false) of the values {simple_type, aggregation_type, named_type}";
corresponds_to = {correspondence#42};
choice_set = {defined_type#48, entity_type#210, entity_type#187};
is_optional = false;
constrained_entity = entity_type#210;
attribute = explicit_attribute#325;
END_INSTANCE;
INSTANCE choice_set#12;
extracted_from = {oneof_supertype_expression#26};
description = "named_type is constrained to have at most one (optional = false) of the values {entity_type, defined_type}";
corresponds_to = {correspondence#43};
choice_set = {entity_type#188, entity_type#214};
is_optional = false;
constrained_entity = entity_type#187;
END_INSTANCE;
INSTANCE choice_set#13;
extracted_from = {defined_type#35};
description = "entity_type is constrained to have at most one (optional = true) of the values {entity_type, oneof_expression, and_expression, andor_expression}";
choice_set = {entity_type#188, entity_type#189, entity_type#190, entity_type#191};
is_optional = true;
constrained_entity = entity_type#188;
attribute = explicit_attribute#288;
END_INSTANCE;
INSTANCE choice_set#14;
extracted_from = {defined_type#50};
description = "defined_type is constrained to have at most one (optional = false) of the values {defined_type, simple_type, aggregation_type, select_type, enumeration_type}";
corresponds_to = {correspondence#37};
choice_set = {entity_type#214, defined_type#48, entity_type#210, defined_type#51, defined_type#52};
is_optional = false;
constrained_entity = entity_type#214;
attribute = explicit_attribute#338;
END_INSTANCE;
INSTANCE choice_set#15;
extracted_from = {defined_type#35};
description = "and_expression is constrained to have at most one (optional = false) of the values {entity_type, oneof_expression, and_expression, andor_expression}";
choice_set = {entity_type#188, entity_type#189, entity_type#190, entity_type#191};
is_optional = false;
constrained_entity = entity_type#190;
attribute = explicit_attribute#290;
END_INSTANCE;
INSTANCE choice_set#16;
extracted_from = {defined_type#35};
description = "and_expression is constrained to have at most one (optional = false) of the values {entity_type, oneof_expression, and_expression, andor_expression}";
choice_set = {entity_type#188, entity_type#189, entity_type#190, entity_type#191};
is_optional = false;
constrained_entity = entity_type#190;
attribute = explicit_attribute#291;
END_INSTANCE;
INSTANCE choice_set#17;
extracted_from = {defined_type#35};
description = "andor_expression is constrained to have at most one (optional = false) of the values {entity_type, oneof_expression, and_expression, andor_expression}";
choice_set = {entity_type#188, entity_type#189, entity_type#190, entity_type#191};
is_optional = false;
constrained_entity = entity_type#191;
attribute = explicit_attribute#292;
END_INSTANCE;
INSTANCE choice_set#18;
extracted_from = {defined_type#35};
description = "andor_expression is constrained to have at most one (optional = false) of the values {entity_type, oneof_expression, and_expression, andor_expression}";
choice_set = {entity_type#188, entity_type#189, entity_type#190, entity_type#191};
is_optional = false;
constrained_entity = entity_type#191;
attribute = explicit_attribute#293;
END_INSTANCE;
INSTANCE choice_set#19;
extracted_from = {defined_type#60};
description = "aggregation_type is constrained to have at most one (optional = false) of the values {simple_type, aggregation_type, named_type}";
corresponds_to = {correspondence#42};
choice_set = {defined_type#59, entity_type#235, entity_type#233};
is_optional = false;
constrained_entity = entity_type#235;
attribute = explicit_attribute#376;
END_INSTANCE;
INSTANCE choice_set#20;
extracted_from = {oneof_supertype_expression#28};
description = "expression is constrained to have at most one (optional = false) of the values {attribute, literal_expression, built_in_constant, unary_operation, binary_operation, query_expression, query_variable, function_call, qualifier, unresolved_reference, aggregate_initialiser}";
choice_set = {entity_type#193, entity_type#196, entity_type#197, entity_type#198, entity_type#199, entity_type#200, entity_type#201, entity_type#202, entity_type#205, entity_type#206, entity_type#207};
is_optional = false;
constrained_entity = entity_type#195;
END_INSTANCE;
INSTANCE choice_set#21;
extracted_from = {oneof_supertype_expression#27};
description = "attribute is constrained to have at most one (optional = false) of the values {explicit_attribute, derived_attribute, inverse_attribute}";
corresponds_to = {correspondence#51};
choice_set = {entity_type#192, entity_type#194, entity_type#209};
is_optional = false;
constrained_entity = entity_type#193;
END_INSTANCE;
INSTANCE choice_set#22;
extracted_from = {oneof_supertype_expression#32};
description = "aggregation_type is constrained to have at most one (optional = true) of the values {unordered_aggregation_type, ordered_aggregation_type}";
choice_set = {entity_type#236, entity_type#239};
is_optional = true;
constrained_entity = entity_type#235;
END_INSTANCE;
INSTANCE choice_set#23;
extracted_from = {defined_type#36};
description = "literal_expression is constrained to have at most one (optional = false) of the values {integer_literal, real_literal, logical_literal, string_literal, binary_literal}";
choice_set = {defined_type#37, defined_type#38, defined_type#39, defined_type#40, defined_type#41};
is_optional = false;
constrained_entity = entity_type#196;
attribute = explicit_attribute#297;
END_INSTANCE;
INSTANCE choice_set#24;
extracted_from = {defined_type#42};
description = "built_in_constant is constrained to have at most one (optional = false) of the values {e, pie, this, infinity}";
choice_set = {enumeration_symbol#43, enumeration_symbol#44, enumeration_symbol#45, enumeration_symbol#46};
is_optional = false;
constrained_entity = entity_type#197;
attribute = explicit_attribute#298;
END_INSTANCE;
INSTANCE choice_set#25;
extracted_from = {defined_type#43};
description = "unary_operation is constrained to have at most one (optional = false) of the values {not_operator, unary_minus}";
choice_set = {enumeration_symbol#47, enumeration_symbol#48};
is_optional = false;
constrained_entity = entity_type#198;
attribute = explicit_attribute#299;
END_INSTANCE;
INSTANCE choice_set#26;
extracted_from = {defined_type#44};
description = "binary_operation is constrained to have at most one (optional = false) of the values {less_than, less_than_or_equals, greater_than, greater_than_or_equals, equals, not_equals, instance_equals, instance_not_equals, in_operator, like_operator, add, subtract, or_operator, xor_operator, multiply, divide, div_operator, mod_operator, and_operator, complex_constructor, exponent}";
choice_set = {enumeration_symbol#49, enumeration_symbol#50, enumeration_symbol#51, enumeration_symbol#52, enumeration_symbol#53, enumeration_symbol#54, enumeration_symbol#55, enumeration_symbol#56, enumeration_symbol#57, enumeration_symbol#58, enumeration_symbol#59, enumeration_symbol#60, enumeration_symbol#61, enumeration_symbol#62, enumeration_symbol#63, enumeration_symbol#64, enumeration_symbol#65, enumeration_symbol#66, enumeration_symbol#67, enumeration_symbol#68, enumeration_symbol#69};
is_optional = false;
constrained_entity = entity_type#199;
attribute = explicit_attribute#301;
END_INSTANCE;
INSTANCE choice_set#27;
extracted_from = {oneof_supertype_expression#29};
description = "function_call is constrained to have at most one (optional = false) of the values {built_in_function_call, user_function_call}";
choice_set = {entity_type#203, entity_type#204};
is_optional = false;
constrained_entity = entity_type#202;
END_INSTANCE;
INSTANCE choice_set#28;
extracted_from = {defined_type#46};
description = "qualifier is constrained to have at most one (optional = false) of the values {dot, backslash, subscript}";
choice_set = {enumeration_symbol#99, enumeration_symbol#100, enumeration_symbol#101};
is_optional = false;
constrained_entity = entity_type#205;
attribute = explicit_attribute#311;
END_INSTANCE;
INSTANCE choice_set#29;
extracted_from = {oneof_supertype_expression#31};
description = "named_type is constrained to have at most one (optional = false) of the values {entity_type, defined_type}";
corresponds_to = {correspondence#43};
choice_set = {entity_type#232, entity_type#234};
is_optional = false;
constrained_entity = entity_type#233;
END_INSTANCE;
INSTANCE choice_set#30;
extracted_from = {defined_type#58};
description = "defined_type is constrained to have at most one (optional = false) of the values {defined_type, simple_type, aggregation_type, select_type, enumeration_type}";
corresponds_to = {correspondence#37};
choice_set = {entity_type#234, defined_type#59, entity_type#235, defined_type#63, defined_type#64};
is_optional = false;
constrained_entity = entity_type#234;
attribute = explicit_attribute#373;
END_INSTANCE;
INSTANCE choice_set#31;
extracted_from = {defined_type#45};
description = "built_in_function_call is constrained to have at most one (optional = false) of the values {abs_function, acos_function, asin_function, atan_function, blength_function, cos_function, exists_function, exp_function, format_function, hibound_function, hiindex_function, length_function, lobound_function, log_function, log10_function, log2_function, loindex_function, nvl_function, odd_function, rolesof_function, sin_function, sizeof_function, sqrt_function, tan_function, typeof_function, usedin_function, value_function, value_in_function, value_unique_function}";
choice_set = {enumeration_symbol#70, enumeration_symbol#71, enumeration_symbol#72, enumeration_symbol#73, enumeration_symbol#74, enumeration_symbol#75, enumeration_symbol#76, enumeration_symbol#77, enumeration_symbol#78, enumeration_symbol#79, enumeration_symbol#80, enumeration_symbol#81, enumeration_symbol#82, enumeration_symbol#83, enumeration_symbol#84, enumeration_symbol#85, enumeration_symbol#86, enumeration_symbol#87, enumeration_symbol#88, enumeration_symbol#89, enumeration_symbol#90, enumeration_symbol#91, enumeration_symbol#92, enumeration_symbol#93, enumeration_symbol#94, enumeration_symbol#95, enumeration_symbol#96, enumeration_symbol#97, enumeration_symbol#98};
is_optional = false;
constrained_entity = entity_type#203;
attribute = explicit_attribute#308;
END_INSTANCE;
INSTANCE choice_set#32;
extracted_from = {oneof_supertype_expression#33};
description = "unordered_aggregation_type is constrained to have at most one (optional = false) of the values {set_type, bag_type}";
choice_set = {entity_type#237, entity_type#238};
is_optional = false;
constrained_entity = entity_type#236;
END_INSTANCE;
INSTANCE choice_set#33;
extracted_from = {oneof_supertype_expression#34};
description = "ordered_aggregation_type is constrained to have at most one (optional = false) of the values {list_type, array_type}";
choice_set = {entity_type#240, entity_type#241};
is_optional = false;
constrained_entity = entity_type#239;
END_INSTANCE;
INSTANCE choice_set#34;
extracted_from = {oneof_supertype_expression#41};
description = "qualifier is constrained to have at most one (optional = false) of the values {attribute_qualifier, group_qualifier, index_qualifier}";
choice_set = {entity_type#300, entity_type#301, entity_type#302};
is_optional = false;
constrained_entity = entity_type#299;
END_INSTANCE;
INSTANCE choice_set#35;
extracted_from = {oneof_supertype_expression#30};
description = "local_rule is constrained to have at most one (optional = false) of the values {unique_rule, domain_rule}";
corresponds_to = {correspondence#50};
choice_set = {entity_type#211, entity_type#213};
is_optional = false;
constrained_entity = entity_type#212;
END_INSTANCE;
INSTANCE choice_set#36;
extracted_from = {defined_type#57};
description = "correspondence is constrained to have at most one (optional = false) of the values {equivalent, frame1_stronger, frame2_stronger, incomparable}";
choice_set = {enumeration_symbol#115, enumeration_symbol#116, enumeration_symbol#117, enumeration_symbol#118};
is_optional = false;
constrained_entity = entity_type#229;
attribute = explicit_attribute#370;
END_INSTANCE;
INSTANCE choice_set#37;
extracted_from = {oneof_supertype_expression#36};
description = "attribute is constrained to have at most one (optional = false) of the values {explicit_attribute, derived_attribute, inverse_attribute}";
corresponds_to = {correspondence#51};
choice_set = {entity_type#248, entity_type#249, entity_type#250};
is_optional = false;
constrained_entity = entity_type#247;
END_INSTANCE;
INSTANCE choice_set#38;
extracted_from = {defined_type#61};
description = "attribute_redeclaration is constrained to have at most one (optional = false) of the values {parameter_type, underlying_type, indeterminate_type}";
choice_set = {defined_type#60, defined_type#58, defined_type#62};
is_optional = false;
constrained_entity = entity_type#256;
attribute = explicit_attribute#407;
END_INSTANCE;
INSTANCE choice_set#39;
extracted_from = {oneof_supertype_expression#38};
description = "attribute_redeclaration is constrained to have at most one (optional = false) of the values {explicit_attribute_redeclaration, derived_attribute_redeclaration, inverse_attribute_redeclaration}";
choice_set = {entity_type#255, entity_type#257, entity_type#258};
is_optional = false;
constrained_entity = entity_type#256;
END_INSTANCE;
INSTANCE choice_set#40;
extracted_from = {oneof_supertype_expression#35};
description = "local_rule is constrained to have at most one (optional = false) of the values {unique_rule, domain_rule}";
corresponds_to = {correspondence#50};
choice_set = {entity_type#246, entity_type#244};
is_optional = false;
constrained_entity = entity_type#245;
END_INSTANCE;
INSTANCE choice_set#41;
extracted_from = {defined_type#65};
description = "built_in_constant is constrained to have at most one (optional = false) of the values {e, pi_constant, self_constant, indeterminate}";
choice_set = {enumeration_symbol#128, enumeration_symbol#129, enumeration_symbol#130, enumeration_symbol#131};
is_optional = false;
constrained_entity = entity_type#274;
attribute = explicit_attribute#440;
END_INSTANCE;
INSTANCE choice_set#42;
extracted_from = {defined_type#66};
description = "comparator is constrained to have at most one (optional = false) of the values {inclusive, exclusive}";
choice_set = {enumeration_symbol#132, enumeration_symbol#133};
is_optional = false;
constrained_entity = entity_type#279;
attribute = explicit_attribute#449;
END_INSTANCE;
INSTANCE choice_set#43;
extracted_from = {defined_type#67};
description = "comparator is constrained to have at most one (optional = false) of the values {discrete, continuous}";
choice_set = {enumeration_symbol#134, enumeration_symbol#135};
is_optional = false;
constrained_entity = entity_type#279;
attribute = explicit_attribute#450;
END_INSTANCE;
INSTANCE choice_set#44;
extracted_from = {defined_type#68};
description = "comparator is constrained to have at most one (optional = false) of the values {greater_first, lesser_first}";
choice_set = {enumeration_symbol#136, enumeration_symbol#137};
is_optional = false;
constrained_entity = entity_type#279;
attribute = explicit_attribute#451;
END_INSTANCE;
INSTANCE choice_set#45;
extracted_from = {defined_type#66};
description = "interval is constrained to have at most one (optional = false) of the values {inclusive, exclusive}";
choice_set = {enumeration_symbol#132, enumeration_symbol#133};
is_optional = false;
constrained_entity = entity_type#280;
attribute = explicit_attribute#453;
END_INSTANCE;
INSTANCE choice_set#46;
extracted_from = {defined_type#67};
description = "interval is constrained to have at most one (optional = false) of the values {discrete, continuous}";
choice_set = {enumeration_symbol#134, enumeration_symbol#135};
is_optional = false;
constrained_entity = entity_type#280;
attribute = explicit_attribute#455;
END_INSTANCE;
INSTANCE choice_set#47;
extracted_from = {defined_type#66};
description = "interval is constrained to have at most one (optional = false) of the values {inclusive, exclusive}";
choice_set = {enumeration_symbol#132, enumeration_symbol#133};
is_optional = false;
constrained_entity = entity_type#280;
attribute = explicit_attribute#456;
END_INSTANCE;
INSTANCE choice_set#48;
extracted_from = {oneof_supertype_expression#40};
description = "disjunction is constrained to have at most one (optional = false) of the values {inclusive_disjunction, exclusive_disjunction}";
choice_set = {entity_type#291, entity_type#292};
is_optional = false;
constrained_entity = entity_type#290;
END_INSTANCE;
INSTANCE choice_set#49;
extracted_from = {defined_type#61};
description = "function_definition is constrained to have at most one (optional = false) of the values {parameter_type, underlying_type, indeterminate_type}";
choice_set = {defined_type#60, defined_type#58, defined_type#62};
is_optional = false;
constrained_entity = entity_type#260;
attribute = explicit_attribute#424;
END_INSTANCE;
INSTANCE choice_set#50;
extracted_from = {oneof_supertype_expression#39};
description = "function_definition is constrained to have at most one (optional = false) of the values {built_in_function, user_defined_function}";
choice_set = {entity_type#261, entity_type#262};
is_optional = false;
constrained_entity = entity_type#260;
END_INSTANCE;
INSTANCE choice_set#51;
extracted_from = {defined_type#60};
description = "user_defined_function is constrained to have at most one (optional = false) of the values {simple_type, aggregation_type, named_type}";
choice_set = {defined_type#59, entity_type#235, entity_type#233};
is_optional = false;
constrained_entity = entity_type#262;
attribute = explicit_attribute#414;
END_INSTANCE;
INSTANCE choice_set#52;
extracted_from = {defined_type#60};
description = "formal_parameter is constrained to have at most one (optional = false) of the values {simple_type, aggregation_type, named_type}";
choice_set = {defined_type#59, entity_type#235, entity_type#233};
is_optional = false;
constrained_entity = entity_type#265;
attribute = explicit_attribute#422;
END_INSTANCE;
INSTANCE choice_set#53;
extracted_from = {defined_type#55};
description = "exactly_one is constrained to have at most one (optional = false) of the values {entity_type, attribute}";
choice_set = {unresolved_reference("entity_type"), unresolved_reference("attribute")};
is_optional = false;
constrained_entity = entity_type#217;
attribute = explicit_attribute#343;
END_INSTANCE;
INSTANCE choice_set#54;
extracted_from = {defined_type#55};
description = "at_most_one is constrained to have at most one (optional = false) of the values {entity_type, attribute}";
choice_set = {unresolved_reference("entity_type"), unresolved_reference("attribute")};
is_optional = false;
constrained_entity = entity_type#218;
attribute = explicit_attribute#345;
END_INSTANCE;
INSTANCE choice_set#55;
extracted_from = {defined_type#56};
description = "bound is constrained to have at most one (optional = false) of the values {lower, upper}";
corresponds_to = {correspondence#62};
choice_set = {enumeration_symbol#113, enumeration_symbol#114};
is_optional = false;
constrained_entity = entity_type#219;
attribute = explicit_attribute#346;
END_INSTANCE;
INSTANCE choice_set#56;
extracted_from = {defined_type#70};
description = "bound is constrained to have at most one (optional = false) of the values {lower, upper}";
corresponds_to = {correspondence#62};
choice_set = {enumeration_symbol#138, enumeration_symbol#139};
is_optional = false;
constrained_entity = entity_type#307;
attribute = explicit_attribute#494;
END_INSTANCE;
INSTANCE choice_set#57;
extracted_from = {oneof_supertype_expression#42};
description = "relationship is constrained to have at most one (optional = false) of the values {one_to_one_relationship, one_to_many_relationship, many_to_many_relationship}";
choice_set = {entity_type#316, entity_type#317, entity_type#318};
is_optional = false;
constrained_entity = entity_type#315;
END_INSTANCE;
INSTANCE choice_set#58;
extracted_from = {oneof_supertype_expression#43};
description = "quantifier is constrained to have at most one (optional = false) of the values {for_all, there_exists}";
choice_set = {entity_type#320, entity_type#321};
is_optional = false;
constrained_entity = entity_type#319;
END_INSTANCE;
INSTANCE choice_set#59;
extracted_from = {defined_type#71};
description = "case_frame is constrained to have at most one (optional = false) of the values {frame, set_of_frames}";
choice_set = {unresolved_reference("frame"), defined_type#72};
is_optional = false;
constrained_entity = entity_type#322;
attribute = explicit_attribute#522;
END_INSTANCE;
INSTANCE choice_set#60;
extracted_from = {defined_type#73};
description = "case_frame is constrained to have at most one (optional = false) of the values {express, java}";
choice_set = {enumeration_symbol#140, enumeration_symbol#141};
is_optional = false;
constrained_entity = entity_type#322;
attribute = explicit_attribute#523;
END_INSTANCE;
INSTANCE choice_set#61;
extracted_from = {oneof_supertype_expression#44};
description = "case_frame is constrained to have at most one (optional = false) of the values {extraction_case, navigation_case, pretty_print_case, subexpression_case, semantic_case}";
choice_set = {entity_type#323, entity_type#324, entity_type#325, entity_type#326, entity_type#327};
is_optional = false;
constrained_entity = entity_type#322;
END_INSTANCE;
INSTANCE choice_set#62;
extracted_from = {defined_type#75};
description = "semantic_strength_slot is constrained to have at most one (optional = false) of the values {positive, negative}";
choice_set = {enumeration_symbol#142, enumeration_symbol#143};
is_optional = false;
constrained_entity = entity_type#330;
attribute = explicit_attribute#529;
END_INSTANCE;
INSTANCE choice_set#63;
extracted_from = {defined_type#82};
description = "type_declaration is constrained to have at most one (optional = false) of the values {public, protected, private, friendly}";
choice_set = {enumeration_symbol#144, enumeration_symbol#145, enumeration_symbol#146, enumeration_symbol#147};
is_optional = false;
constrained_entity = entity_type#333;
attribute = explicit_attribute#570;
END_INSTANCE;
INSTANCE choice_set#64;
extracted_from = {oneof_supertype_expression#45};
description = "type_declaration is constrained to have at most one (optional = false) of the values {class, interface}";
choice_set = {entity_type#334, entity_type#335};
is_optional = false;
constrained_entity = entity_type#333;
END_INSTANCE;
INSTANCE choice_set#65;
extracted_from = {oneof_supertype_expression#49};
description = "nested_type_declaration is constrained to have at most one (optional = false) of the values {nested_class, nested_interface}";
choice_set = {entity_type#350, entity_type#352};
is_optional = false;
constrained_entity = entity_type#351;
END_INSTANCE;
INSTANCE choice_set#66;
extracted_from = {oneof_supertype_expression#47};
description = "local_type_declaration is constrained to have at most one (optional = false) of the values {local_class, local_interface}";
choice_set = {entity_type#344, entity_type#346};
is_optional = false;
constrained_entity = entity_type#345;
END_INSTANCE;
INSTANCE choice_set#67;
extracted_from = {defined_type#82};
description = "java_function is constrained to have at most one (optional = false) of the values {public, protected, private, friendly}";
choice_set = {enumeration_symbol#144, enumeration_symbol#145, enumeration_symbol#146, enumeration_symbol#147};
is_optional = false;
constrained_entity = entity_type#348;
attribute = explicit_attribute#565;
END_INSTANCE;
INSTANCE choice_set#68;
extracted_from = {oneof_supertype_expression#48};
description = "java_function is constrained to have at most one (optional = false) of the values {constructor, method}";
choice_set = {entity_type#347, entity_type#349};
is_optional = false;
constrained_entity = entity_type#348;
END_INSTANCE;
INSTANCE choice_set#69;
extracted_from = {defined_type#85};
description = "method is constrained to have at most one (optional = true) of the values {type_declaration, primitive_type, java_array_type}";
choice_set = {entity_type#333, defined_type#86, entity_type#343};
is_optional = true;
constrained_entity = entity_type#349;
attribute = explicit_attribute#564;
END_INSTANCE;
INSTANCE choice_set#70;
extracted_from = {defined_type#85};
description = "java_variable is constrained to have at most one (optional = false) of the values {type_declaration, primitive_type, java_array_type}";
choice_set = {entity_type#333, defined_type#86, entity_type#343};
is_optional = false;
constrained_entity = entity_type#340;
attribute = explicit_attribute#549;
END_INSTANCE;
INSTANCE choice_set#71;
extracted_from = {oneof_supertype_expression#46};
description = "java_variable is constrained to have at most one (optional = false) of the values {field, java_formal_parameter, local_variable}";
choice_set = {entity_type#341, entity_type#342, entity_type#339};
is_optional = false;
constrained_entity = entity_type#340;
END_INSTANCE;
INSTANCE choice_set#72;
extracted_from = {defined_type#82};
description = "field is constrained to have at most one (optional = false) of the values {public, protected, private, friendly}";
choice_set = {enumeration_symbol#144, enumeration_symbol#145, enumeration_symbol#146, enumeration_symbol#147};
is_optional = false;
constrained_entity = entity_type#341;
attribute = explicit_attribute#544;
END_INSTANCE;
INSTANCE choice_set#73;
extracted_from = {defined_type#83};
description = "field is constrained to have at most one (optional = true) of the values {expression, array_initialiser}";
choice_set = {unresolved_reference("expression"), defined_type#84};
is_optional = true;
constrained_entity = entity_type#341;
attribute = explicit_attribute#548;
END_INSTANCE;
INSTANCE choice_set#74;
extracted_from = {defined_type#85};
description = "java_array_type is constrained to have at most one (optional = false) of the values {type_declaration, primitive_type, java_array_type}";
choice_set = {entity_type#333, defined_type#86, entity_type#343};
is_optional = false;
constrained_entity = entity_type#343;
attribute = explicit_attribute#550;
END_INSTANCE;
INSTANCE choice_set#75;
extracted_from = {defined_type#83};
description = "local_variable is constrained to have at most one (optional = true) of the values {expression, array_initialiser}";
choice_set = {unresolved_reference("expression"), defined_type#84};
is_optional = true;
constrained_entity = entity_type#339;
attribute = explicit_attribute#553;
END_INSTANCE;
INSTANCE choice_set#76;
extracted_from = {oneof_supertype_expression#50};
description = "switch_case is constrained to have at most one (optional = false) of the values {case_switch_case, default_switch_case}";
choice_set = {entity_type#361, entity_type#362};
is_optional = false;
constrained_entity = entity_type#360;
END_INSTANCE;
INSTANCE choice_set#77;
extracted_from = {defined_type#87};
description = "for_statement is constrained to have at most one (optional = true) of the values {local_variable_declaration, expression_statement_list}";
choice_set = {entity_type#354, entity_type#367};
is_optional = true;
constrained_entity = entity_type#366;
attribute = explicit_attribute#595;
END_INSTANCE;
INSTANCE choice_set#78;
extracted_from = {oneof_supertype_expression#51};
description = "shift_right is constrained to have at most one (optional = false) of the values {shift_right_arithmetic, shift_right_logical}";
choice_set = {entity_type#384, entity_type#385};
is_optional = false;
constrained_entity = entity_type#383;
END_INSTANCE;
INSTANCE choice_set#79;
extracted_from = {oneof_supertype_expression#52};
description = "increment is constrained to have at most one (optional = false) of the values {postincrement, preincrement}";
choice_set = {entity_type#387, entity_type#388};
is_optional = false;
constrained_entity = entity_type#386;
END_INSTANCE;
INSTANCE choice_set#80;
extracted_from = {oneof_supertype_expression#53};
description = "decrement is constrained to have at most one (optional = false) of the values {postdecrement, predecrement}";
choice_set = {entity_type#390, entity_type#391};
is_optional = false;
constrained_entity = entity_type#389;
END_INSTANCE;
INSTANCE choice_set#81;
extracted_from = {defined_type#85};
description = "cast is constrained to have at most one (optional = false) of the values {type_declaration, primitive_type, java_array_type}";
choice_set = {entity_type#333, defined_type#86, entity_type#343};
is_optional = false;
constrained_entity = entity_type#392;
attribute = explicit_attribute#628;
END_INSTANCE;
INSTANCE choice_set#82;
extracted_from = {defined_type#85};
description = "allocation is constrained to have at most one (optional = false) of the values {type_declaration, primitive_type, java_array_type}";
choice_set = {entity_type#333, defined_type#86, entity_type#343};
is_optional = false;
constrained_entity = entity_type#396;
attribute = explicit_attribute#632;
END_INSTANCE;