Application module: Package | ISO/TS 10303-1707:2018-11(E) © ISO |
In the following, "Application element" designates any entity data type defined in Clause 4, any of its explicit attributes and any subtype constraint. "MIM element" designates any entity data type defined in Clause 5.2 or imported with a USE FROM statement, from another EXPRESS schema, any of its attributes and any subtype constraint defined in Clause 5.2 or imported with a USE FROM statement.
This clause contains the mapping specification that defines how each application element of this part of ISO 10303 (see Clause 4) maps to one or more MIM elements (see Clause 5.2).
The mapping for each application element is specified in a separate subclause below. The mapping specification of an attribute of an ARM entity is a subclause of the clause that contains the mapping specification of this entity. Each mapping specification subclause contains up to five elements.
Title: The clause title contains:
MIM element: This section contains, depending on the considered application element:
When the mapping of an application element involves more than one MIM element, each of these MIM elements is presented on a separate line in the mapping specification, enclosed between parentheses or brackets.
Source: This section contains:
This section is omitted when the keywords PATH or IDENTICAL MAPPING or NO MAPPING EXTENSION PROVIDED are used in the MIM element section.
Rules: This section contains the name of one or more global rules that apply to the population of the MIM entity data types listed in the MIM element section or in the reference path. When no rule applies, this section is omitted.
A reference to a global rule may be followed by a reference to the subclause in which the rule is defined.
Constraint: This section contains the name of one or more subtype constraints that apply to the population of the MIM entity data types listed in the MIM element section or in the reference path. When no subtype constraint applies, this section is omitted.
A reference to a subtype constraint may be followed by a reference to the subclause in which the subtype constraint is defined.
Reference path: This section contains:
For the expression of reference paths and of the constraints between MIM elements, the following notational conventions apply:
[] | enclosed section constrains multiple MIM elements or sections of the reference path are required to satisfy an information requirement; |
() | enclosed section constrains multiple MIM elements or sections of the reference path are identified as alternatives within the mapping to satisfy an information requirement; |
{} | enclosed section constrains the reference path to satisfy an information requirement; |
<> | enclosed section constrains at one or more required reference path; |
|| | enclosed section constrains the supertype entity; |
-> | the attribute, whose name precedes the -> symbol, references the entity or select type whose name follows the -> symbol; |
<- | the entity or select type, whose name precedes the <- symbol, is referenced by the entity attribute whose name follows the <- symbol; |
[i] | the attribute, whose name precedes the [i] symbol, is an aggregate; any element of that aggregate is referred to; |
[n] | the attribute, whose name precedes the [n] symbol, is an ordered aggregate; member n of that aggregate is referred to; |
=> | the entity, whose name precedes the => symbol, is a supertype of the entity whose name follows the => symbol; |
<= | the entity, whose name precedes the <= symbol, is a subtype of the entity whose name follows the <= symbol; |
= | the string, select, or enumeration type is constrained to a choice or value; |
\ | the reference path expression continues on the next line; |
* | one or more instances of the relationship entity data type may be assembled in a relationship tree structure. The path between the relationship entity and the related entities, is enclosed with braces; |
-- | the text following is a comment or introduces a clause reference; |
*> | the select or enumeration type, whose name precedes the *> symbol, is extended into the select or enumeration type whose name follows the *> symbol; |
<* | the select or enumeration type, whose name precedes the <* symbol, is an extension of the select or enumeration type whose name follows the <* symbol; |
!{} | section enclosed by {} indicates a negative constraint placed on the mapping. |
MIM element: | shape_aspect |
Source: | ISO 10303-43 |
Reference path: | {shape_aspect shape_aspect.name = 'connection zone in part feature template definition'} |
MIM element: | PATH |
Reference path: | shape_aspect shape_aspect.of_shape -> product_definition_shape <= property_definition property_definition.definition -> characterized_definition = characterized_object => feature_definition => shape_feature_definition => part_feature_template_definition |
MIM element: | connection_zone_interface_plane_relationship |
Source: | ISO 10303-1671 |
Reference path: | {[connection_zone_interface_plane_relationship <= shape_aspect_relationship] [connection_zone_interface_plane_relationship <= shape_aspect]} |
MIM element: | shape_aspect_relationship.description |
Reference path: | connection_zone_interface_plane_relationship <= shape_aspect_relationship shape_aspect_relationship.description {(shape_aspect_relationship.description = 'area') (shape_aspect_relationship.description = 'edge')} |
MIM element: | PATH |
Reference path: | connection_zone_interface_plane_relationship <= shape_aspect <- shape_aspect_relationship.relating_shape_aspect shape_aspect_relationship {shape_aspect_relationship shape_aspect_relationship.name = 'derived zone'} shape_aspect_relationship.related_shape_aspect -> shape_aspect {shape_aspect shape_aspect.description = 'connection zone'} |
MIM element: | PATH |
Reference path: | connection_zone_interface_plane_relationship <= shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> shape_aspect => interface_plane |
MIM element: | PATH |
Reference path: | connection_zone_interface_plane_relationship <= shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> shape_aspect => seating_plane |
This application object, External_source_identification, is defined in the module external_item_identification_assignment. This mapping section extends the mapping of External_source_identification, to include assertions defined in this module.
Reference path: | applied_external_identification_assignment.items[i]-> external_identification_item external_identification_item *> pa_external_identification_item pa_external_identification_item = package |
Reference path: | applied_external_identification_assignment.items[i]-> external_identification_item external_identification_item *> pa_external_identification_item pa_external_identification_item = package_terminal_template_definition |
MIM element: | guided_wave_terminal |
Source: | ISO 10303-1707 |
Reference path: | guided_wave_terminal <= package_terminal <= placed_feature <= shape_aspect |
This application object, Material_identification, is defined in the module generic_material_aspects. This mapping section extends the mapping of Material_identification, to include assertions defined in this module.
MIM element: | PATH |
Reference path: | material_designation.definitions[i] -> characterized_definition characterized_definition characterized_definition = shape_definition shape_definition shape_definition = shape_aspect shape_aspect => package_body |
MIM element: | PATH |
Reference path: | material_designation.definitions[i] -> characterized_definition characterized_definition characterized_definition = characterized_object characterized_object => feature_definition => shape_feature_definition => part_feature_template_definition => package_terminal_template_definition |
MIM element: | package |
Source: | ISO 10303-1707 |
Reference path: | package <= physical_unit <= product_definition |
MIM element: | property_definition.description |
Source: | ISO 10303-41 |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'mounting technology'} {(property_definition.description = 'surface mount') (property_definition.description = 'through hole')} property_definition.description |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition property_definition <- {property_definition.name = 'least lead length below seating plane'} property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item => measure_representation_item <= measure_with_unit => length_measure_with_unit |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'maximum body height above seating plane'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item => measure_representation_item <= measure_with_unit => length_measure_with_unit |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'maximum body height below seating plane'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item => measure_representation_item <= measure_with_unit => length_measure_with_unit |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'maximum lead length below seating plane'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item => measure_representation_item <= measure_with_unit => length_measure_with_unit |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'maximum seating plane installation offset'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item => measure_representation_item <= measure_with_unit => length_measure_with_unit |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'nominal mounting lead pitch'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item => measure_representation_item <= measure_with_unit => length_measure_with_unit |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'nominal mounting lead pitch'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item => measure_representation_item <= measure_with_unit => length_measure_with_unit |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'body clearance above seating plane'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation |
MIM element: | PATH |
Reference path: | package <= physical_unit <= product_definition characterized_product_definition = product_definition characterized_product_definition characterized_definition = characterized_product_definition characterized_definition <- property_definition.definition {property_definition.name = 'body clearance below seating plane'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation |
MIM element: | package_body |
Source: | ISO 10303-1707 |
Reference path: | package_body <= shape_aspect |
MIM element: | PATH |
Reference path: | package_body <= shape_aspect shape_aspect.of_shape -> product_definition_shape => physical_unit => package |
MIM element: | package_body_bottom_surface |
Source: | ISO 10303-1707 |
Reference path: | package_body_bottom_surface <= package_body_surface <= shape_aspect |
MIM element: | package_body_edge_segment_surface |
Source: | ISO 10303-1707 |
Reference path: | package_body_edge_segment_surface <= [shape_aspect_relationship] [shape_aspect] |
MIM element: | PATH |
Reference path: | package_body_edge_segment_surface <= shape_aspect_relationship shape_aspect_relationship.related_shape_aspect -> shape_aspect shape_aspect => edge_segment_vertex |
MIM element: | PATH |
Reference path: | package_body_edge_segment_surface <= shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> shape_aspect shape_aspect => edge_segment_vertex |
MIM element: | PATH |
Reference path: | package_body_edge_segment_surface <= shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'composed surface'} shape_aspect_relationship.relating_shape_aspect -> shape_aspect => package_body_surface => package_body_edge_surface |
MIM element: | package_body_edge_surface |
Source: | ISO 10303-1707 |
Reference path: | package_body_edge_surface <= package_body_surface <= shape_aspect |
MIM element: | package_body_surface |
Source: | ISO 10303-1707 |
Reference path: | package_body_surface <= shape_aspect |
MIM element: | PATH |
Reference path: | package_body_surface <= shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'associated definition'} shape_aspect_relationship.relating_shape_aspect -> shape_aspect => package_body |
MIM element: | package_body_top_surface |
Source: | ISO 10303-1707 |
Reference path: | package_body_top_surface <= package_body_surface <= shape_aspect |
MIM element: | (primary_orientation_feature)(secondary_orientation_feature)(tertiary_orientation_feature) |
Source: | ISO 10303-1707 1707 1707 |
Reference path: | (primary_orientation_feature <= shape_aspect) (secondary_orientation_feature <= shape_aspect) (tertiary_orientation_feature <= shape_aspect) |
MIM element: | PATH |
Reference path: | (primary_orientation_feature <= shape_aspect) (secondary_orientation_feature <= shape_aspect) (tertiary_orientation_feature <= shape_aspect) shape_aspect shape_aspect.of_shape -> product_definition_shape => physical_unit => package |
MIM element: | PATH |
Reference path: | (primary_orientation_feature <= shape_aspect) (secondary_orientation_feature <= shape_aspect) (tertiary_orientation_feature <= shape_aspect) shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'associated body vertical extent'} shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> (shape_aspect => package_body_surface => package_body_top_surface) (shape_aspect => package_body_surface => package_body_bottom_surface) |
MIM element: | package_terminal |
Source: | ISO 10303-1707 |
Reference path: | package_terminal <= placed_feature <= shape_aspect |
MIM element: | PATH |
Reference path: | package_terminal <= placed_feature <= shape_aspect shape_aspect.of_shape -> product_definition_shape => physical_unit => package |
MIM element: | PATH |
Reference path: | package_terminal <= placed_feature <= shape_aspect shape_definition = shape_aspect characterized_definition = shape_definition characterized_definition <- property_definition.definition property_definition <- property_definition_relationship.related_property_definition {property_definition_relationship.name = 'definition'} property_definition_relationship.relating_property_definition -> property_definition property_definition.definition -> characterized_definition = characterized_object characterized_object => feature_definition => shape_feature_definition => part_feature_template_definition => package_terminal_template_definition |
MIM element: | shape_aspect_relationship |
Source: | ISO 10303-41 |
Reference path: | {shape_aspect_relationship shape_aspect_relationship.name = 'package terminal surface constituent relationship'} |
MIM element: | PATH |
Reference path: | shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> shape_aspect => package_body_surface |
MIM element: | PATH |
Reference path: | shape_aspect_relationship shape_aspect_relationship.related_shape_aspect -> shape_aspect => placed_feature => package_terminal |
MIM element: | package_terminal_template_definition |
Source: | ISO 10303-1707 |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'seating plane intersection'} {(property_definition.description = 'surface intersection') (property_definition.description = 'through intersection') (property_definition.description = 'does not intersect')} property_definition.description |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'terminal characteristic'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item {representation_item groupable_item = representation_item groupable_item <- applied_group_assignment.items[i] applied_group_assignment <= group_assignment group_assignment.assigned_group -> group => characteristic_type} |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition property_definition => product_definition_shape <- shape_aspect.of_shape shape_aspect {shape_aspect shape_aspect.description = 'connection zone'} |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition property_definition => product_definition_shape <- shape_aspect.of_shape shape_aspect <- shape_aspect_relationship.relating_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'internal connection zone'} shape_aspect_relationship shape_aspect_relationship.related_shape_aspect -> shape_aspect {shape_aspect shape_aspect.description = 'connection zone'} |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition property_definition => product_definition_shape <- shape_aspect.of_shape shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'seating plane zone'} shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> shape_aspect => connection_zone_interface_plane_relationship |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'terminal diametrical extent'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'terminal characteristic'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item representation_item => measure_representation_item |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'predefined lead form'} {(property_definition.description = 'gull wing') (property_definition.description = 'j lead') (property_definition.description = 'reversed j lead') (property_definition.description = 'integral terminal') (property_definition.description = 'ball') (property_definition.description = 'undefined') (property_definition.description = 'straight')} property_definition.description |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'terminal characteristic'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item representation_item => descriptive_representation_item |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'terminal characteristic'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item representation_item => compound_representation_item |
MIM element: | PATH |
Reference path: | package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'terminal characteristic'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation representation.items[i] -> representation_item representation_item => compound_representation_item |
This application object, Part_feature, is defined in the module physical_unit_usage_view. This mapping section extends the mapping of Part_feature, to include assertions defined in this module.
MIM element: | (/SUBTYPE(Visual_orientation_feature)/) (/SUBTYPE(Package_body)/) (/SUBTYPE(Package_body_surface)/) (/SUBTYPE(Package_orientation_feature)/) (/SUBTYPE(Package_terminal)/) (/SUBTYPE(Polarity_indication_feature)/) |
MIM element: | shape_aspect |
Source: | ISO 10303-41 |
Reference path: | shape_aspect {shape_aspect.description = 'polarity indication feature'} |
MIM element: | PATH |
Reference path: | shape_aspect shape_aspect.of_shape -> product_definition_shape => physical_unit => package |
MIM element: | PATH |
Reference path: | shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'associated body vertical extent'} shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> (shape_aspect => package_body_surface => package_body_top_surface) (shape_aspect => package_body_surface => package_body_bottom_surface) |
MIM element: | PATH |
Reference path: | shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'associated terminal'} shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> shape_aspect => placed_feature => package_terminal |
MIM element: | primary_orientation_feature |
Source: | ISO 10303-1707 |
Reference path: | primary_orientation_feature <= shape_aspect |
MIM element: | primary_reference_terminal |
Source: | ISO 10303-1707 |
Reference path: | primary_reference_terminal <= package_terminal <= placed_feature <= shape_aspect |
MIM element: | secondary_orientation_feature |
Source: | ISO 10303-1707 |
Reference path: | secondary_orientation_feature <= shape_aspect |
MIM element: | tertiary_orientation_feature |
Source: | ISO 10303-1707 |
Reference path: | tertiary_orientation_feature <= shape_aspect |
MIM element: | visual_orientation_feature |
Source: | ISO 10303-1707 |
Reference path: | visual_orientation_feature <= shape_aspect |
MIM element: | PATH |
Reference path: | visual_orientation_feature <= shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'associated body vertical extent'} shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> (shape_aspect => package_body_surface => package_body_top_surface) (shape_aspect => package_body_surface => package_body_bottom_surface) |
MIM element: | PATH |
Reference path: | visual_orientation_feature <= shape_aspect <- shape_aspect_relationship.related_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'associated terminal'} shape_aspect_relationship shape_aspect_relationship.relating_shape_aspect -> shape_aspect => placed_feature => package_terminal |
MIM element: | wire_terminal |
Source: | ISO 10303-1707 |
Reference path: | wire_terminal <= package_terminal <= placed_feature <= shape_aspect |
MIM element: | wire_terminal_template_definition |
Source: | ISO 10303-1707 |
Reference path: | wire_terminal_template_definition <= package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object |
MIM element: | PATH |
Reference path: | wire_terminal_template_definition <= package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition property_definition => product_definition_shape <- shape_aspect.of_shape shape_aspect <- shape_aspect_relationship.relating_shape_aspect {shape_aspect_relationship shape_aspect_relationship.name = 'internal connection zone'} shape_aspect_relationship shape_aspect_relationship.related_shape_aspect -> shape_aspect {shape_aspect shape_aspect.description = 'connection zone'} |
MIM element: | PATH |
Reference path: | wire_terminal_template_definition <= package_terminal_template_definition <= part_feature_template_definition <= shape_feature_definition <= feature_definition <= characterized_object characterized_definition = characterized_object characterized_definition <- property_definition.definition {property_definition.name = 'wire terminal length'} property_definition <- property_definition_representation.definition property_definition_representation property_definition_representation.used_representation -> representation |
Constraint: | package_part_feature_subtypes |
© ISO 2018 — All rights reserved