Application module: Layered interconnect simple template ISO/TS 10303-1718:2018-11(E)
© ISO

Cover page
Table of contents
Copyright
Foreword
Introduction
1 Scope
2 Normative references
3 Terms, definitions and abbreviated terms
    3.1 Terms and definitions
    3.2 Abbreviated terms

4 Information requirements
   4.1 Required AM ARMs
   4.2 ARM type definitions
   4.3 ARM entity definitions
   4.4 ARM subtype constraint definitions
   4.5 ARM function definition
   4.6 ARM rule definition
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing
     5.2.1 MIM type definition
     5.2.2 MIM entity definitions
     5.2.3 MIM subtype constraint definition

A MIM short names
B Information object registration
C ARM EXPRESS-G   EXPRESS-G
D MIM EXPRESS-G   EXPRESS-G
E Computer interpretable listings
F Change history
Bibliography
Index

4 Information requirements

This clause specifies the information requirements for the Layered interconnect simple template application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.

NOTE 1  A graphical representation of the information requirements is given in Annex C.

NOTE 2  The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.

This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following begins the Layered_interconnect_simple_template_arm schema and identifies the necessary external references.

EXPRESS specification:

*)
SCHEMA Layered_interconnect_simple_template_arm;
(*

4.1 Required AM ARMs

The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.

EXPRESS specification:

*)
USE FROM Layered_2d_shape_arm;    --  ISO/TS 10303-1693

USE FROM Fill_area_style_arm;    --  ISO/TS 10303-1672

USE FROM Fabrication_technology_arm;    --  ISO/TS 10303-1670

USE FROM Text_representation_arm;    --  ISO/TS 10303-1750

USE FROM Part_template_shape_with_parameters_arm;    --  ISO/TS 10303-1720

REFERENCE FROM Requirement_decomposition_arm    --  ISO/TS 10303-1740
  (get_rvd);

REFERENCE FROM Support_resource_arm    --  ISO/TS 10303-1800
  (bag_to_set);
(*

NOTE 1   The schemas referenced above are specified in the following part of ISO 10303:

Layered_2d_shape_arm ISO/TS 10303-1693
Fill_area_style_arm ISO/TS 10303-1672
Fabrication_technology_arm ISO/TS 10303-1670
Text_representation_arm ISO/TS 10303-1750
Part_template_shape_with_parameters_arm ISO/TS 10303-1720
Requirement_decomposition_arm ISO/TS 10303-1740
Support_resource_arm ISO/TS 10303-1800

NOTE 2   See Annex C, Figures C.1, C.2, C.3, C.4and C.5 for a graphical representation of this schema.

4.2 ARM type definitions

This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.

4.2.1 land_connection_zone_class   EXPRESS-G

A land_connection_zone_class lists the possible classes of the land connection zone.

EXPRESS specification:

*)
TYPE land_connection_zone_class = ENUMERATION OF
   (surface_point_class,
    edge_area_class,
    edge_curve_class,
    edge_point_class,
    surface_area_class);
END_TYPE;
(*

Enumerated item definitions:

surface_point_class: specifies that the connection zone is a point on a top or bottom surface of a stratum;

edge_area_class: specifies that the connection zone is an area on an edge of a stratum;

edge_curve_class: specifies that the connection zone is a curve on an edge of a stratum that is at the intersection of the edge with the top or bottom surface of a stratum;

edge_point_class: specifies that the connection zone is a point on an edge of a stratum;

surface_area_class: specifies that the connection zone is a area on a top or bottom surface of a stratum.

NOTE    The default class is a surface_point_class as that is the commonly understood paradigm in 2D layout CAD systems. The other classes are provided for specialized applications, including microwave design.

4.2.2 land_template_terminal_class   EXPRESS-G

A land_template_terminal_class lists the possible classes of the land template terminal.

EXPRESS specification:

*)
TYPE land_template_terminal_class = ENUMERATION OF
   (surface_point_class,
    edge_area_class,
    edge_curve_class,
    edge_point_class,
    surface_area_class);
END_TYPE;
(*

Enumerated item definitions:

surface_point_class: specifies that the terminal is a point on a top or bottom surface of a stratum;

edge_area_class: specifies that the connection zone is an area on an edge of a stratum;

edge_curve_class: specifies that the terminal is a curve on an edge of a stratum that is at the intersection of the edge with the top or bottom surface of a stratum;

edge_point_class: specifies that the terminal is a point on an edge of a stratum;

surface_area_class: specifies that the terminal is a area on a top or bottom surface of a stratum.

NOTE    The default class is a surface_point_class as that is the commonly understood paradigm in 2D layout CAD systems. The other classes are provided for specialized applications, including microwave design.

4.2.3 list_external_identification_item   EXPRESS-G

The list_external_identification_item type is an extension of the external_identification_item type. It adds the data type Land_physical_template to the list of alternate data types.

EXPRESS specification:

*)
TYPE list_external_identification_item = SELECT BASED_ON external_identification_item WITH
   (Land_physical_template);
END_TYPE;
(*

4.2.4 list_requirement_assignment_item   EXPRESS-G

The list_requirement_assignment_item type is an extension of the requirement_assignment_item type. It adds the data type Electrical_isolation_removal_template to the list of alternate data types.

EXPRESS specification:

*)
TYPE list_requirement_assignment_item = SELECT BASED_ON requirement_assignment_item WITH
   (Electrical_isolation_removal_template);
END_TYPE;
(*

4.2.5 list_usage_concept   EXPRESS-G

The list_usage_concept type is an extension of the usage_concept type. It adds the data type Land_template_terminal to the list of alternate data types.

EXPRESS specification:

*)
TYPE list_usage_concept = SELECT BASED_ON usage_concept WITH
   (Land_template_terminal);
END_TYPE;
(*

4.2.6 measure_orientation   EXPRESS-G

A measure_orientation lists the values of the measure orientation.

EXPRESS specification:

*)
TYPE measure_orientation = ENUMERATION OF
   (reversed,
    normal);
END_TYPE;
(*

Enumerated item definitions:

reversed: specifies that a value is reversed;

normal: specifies that a value is normal;

4.2.7 ptswp_ptsm_definition   EXPRESS-G

The ptswp_ptsm_definition type allows for the designation of the data types Via_template, and Component_termination_passage_template.

EXPRESS specification:

*)
TYPE ptswp_ptsm_definition = SELECT
   (Via_template,
    Component_termination_passage_template);
END_TYPE;
(*

4.2.8 ptswp_template_shape_model_context   EXPRESS-G

A ptswp_template_shape_model_context lists the possible source contexts for a Plated_passage_template_shape_model.

EXPRESS specification:

*)
TYPE ptswp_template_shape_model_context = ENUMERATION OF
   (drilled_passage_context,
    finished_passage_context,
    unknown_context);
END_TYPE;
(*

Enumerated item definitions:

drilled_passage_context: specifies that the source system context is 'as drilled';

NOTE 1   'as drilled' in additive processing indicates the value does not include plating steps effects.

finished_passage_context: specifies that the source system context is 'as finished';

NOTE 2   'as finished' in additive processing indicates the value does include plating effects.

unknown_context: specifies that the source system does not export the context for the passage model.

4.3 ARM entity definitions

This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.

4.3.1 Blind_passage_template   EXPRESS-GMapping table

A Blind_passage_template is a type of Unsupported_passage_template. The Blind_passage_template includes sufficient data to determine feature properties for passages that do not penetrate the complete substrate.

EXPRESS specification:

*)
ENTITY Blind_passage_template
  SUBTYPE OF (Unsupported_passage_template);
  bottom_distance_from_datum_reference : Dimensional_location;
  datum_reference_layer : Stratum_technology_occurrence;
  datum_reference_side : Stratum_technology_occurrence_link;
  of_measure_orientation : measure_orientation;
END_ENTITY;
(*

Attribute definitions:

bottom_distance_from_datum_reference: specifies the role of the Dimensional_location for the Blind_passage_template.

datum_reference_layer: specifies the role of the Stratum_technology_occurrence for the Blind_passage_template.

datum_reference_side: specifies the role of the Stratum_technology_occurrence_link for the Blind_passage_template.

of_measure_orientation: specifies normal or reversed as the measure_orientation for the Blind_passage_template. Normal specifies that the orientation is parallel to the normal of the reference surface. Reversed specifies that the orientation is anti-parallel to the normal of the reference surface.

4.3.2 Closed_path_area_with_parameters   EXPRESS-GMapping table

A Closed_path_area_with_parameters is a type of Path_area_with_parameters.

EXPRESS specification:

*)
ENTITY Closed_path_area_with_parameters
  SUBTYPE OF (Path_area_with_parameters);
  SELF\Path_area_with_parameters.centreline : closed_curve;
  SELF\Path_area_with_parameters.parameters : Closed_curve_style_parameters;
END_ENTITY;
(*

Attribute definitions:

centreline: an attribute inherited from the Path_area_with_parameters shall be redeclared as the closed_curve for the Closed_path_area_with_parameters.

parameters: an attribute inherited from the Path_area_with_parameters shall be redeclared as the Closed_curve_style_parameters for the Closed_path_area_with_parameters.

4.3.3 Component_termination_passage_template   EXPRESS-GMapping table

A Component_termination_passage_template is a type of Continuous_template and a type of Inter_stratum_feature_template. The Component_termination_passage_template defines all shape data for the associated Component_termination_passage (for which it is the derived_from ), and also where the connection (dependency) on passage technology is established for the properties.

NOTE    Properties other than shape are to be found in the of_passage_technology.

EXPRESS specification:

*)
ENTITY Component_termination_passage_template
  SUBTYPE OF (Continuous_template, Inter_stratum_feature_template);
  SELF\Inter_stratum_feature_template.of_passage_technology : Default_component_termination_passage_definition;
INVERSE
  access_mechanisms : SET[2:?] OF Component_termination_passage_template_terminal FOR associated_definition;
END_ENTITY;
(*

Attribute definitions:

of_passage_technology: an attribute inherited from the Inter_stratum_feature_template shall be redeclared to be Default_component_termination_passage_definition for the Component_termination_passage_template.

access_mechanisms: specifies an inverse relationship that specifies that the existence of the Component_termination_passage_template is dependent on the existence of the Component_termination_passage_template_terminal that specifies the Component_termination_passage_template as its associated_definition. There shall be two or more Component_termination_passage_template_terminals for the Component_termination_passage_template.

4.3.4 Component_termination_passage_template_interface_terminal   EXPRESS-GMapping table

A Component_termination_passage_template_interface_terminal is a type of Component_termination_passage_template_terminal, an occurrence of which provides an interface capability to the next level of assembly.

EXPRESS specification:

*)
ENTITY Component_termination_passage_template_interface_terminal
  SUBTYPE OF (Component_termination_passage_template_terminal);
END_ENTITY;
(*

4.3.5 Component_termination_passage_template_join_terminal   EXPRESS-GMapping table

A Component_termination_passage_template_join_terminal is a type of Component_termination_passage_template_terminal, an occurrence of which provides a fabrication join capability, within an optionally constrained set of Stratum.

EXPRESS specification:

*)
ENTITY Component_termination_passage_template_join_terminal
  SUBTYPE OF (Component_termination_passage_template_terminal);
  disallowed_inter_stratum_extent : OPTIONAL SET[1:?] OF Stratum_technology_occurrence_link;
END_ENTITY;
(*

Attribute definitions:

disallowed_inter_stratum_extent: specifies the Stratum_technology_occurrence_link for which a connection to the Component_termination_passage_template_join_terminal is disallowed. The value of this attribute need not be specified. There may be more than one Stratum_technology_occurrence_link for the Component_termination_passage_template_join_terminal.

4.3.6 Component_termination_passage_template_terminal   EXPRESS-GMapping table

A Component_termination_passage_template_terminal is a type of Shape_element. A Component_termination_passage_template_terminal is either a Component_termination_passage_template_interface_terminal or a Component_termination_passage_template_join_terminal.

EXPRESS specification:

*)
ENTITY Component_termination_passage_template_terminal
  ABSTRACT SUPERTYPE OF (ONEOF (Component_termination_passage_template_interface_terminal,
                                Component_termination_passage_template_join_terminal))
  SUBTYPE OF (General_part_feature);
  SELF\Shape_element.associated_definition : Component_termination_passage_template;
  connection_area : OPTIONAL SET[1:?] OF Connection_zone_in_layout_template;
UNIQUE
  UR1: SELF\Shape_element.element_name, associated_definition;
WHERE
  WR1: NOT EXISTS(SELF\Shape_element.description);
END_ENTITY;
(*

Attribute definitions:

associated_definition: specifies the role of the Component_termination_passage_template for the Component_termination_passage_template_terminal.

connection_area: specifies the Connection_zone_in_layout_template for the Component_termination_passage_template_terminal. There shall be one or more Connection_zone_in_layout_templates for each connection_area. The value of this attribute need not be specified. If the data is available in the source system, it shall be supplied.

Formal propositions:

UR1: The combination of associated_definition and element_name inherited from Shape_element shall be unique within a population of Component_termination_passage_template_terminal.

WR1: The description shall not be populated.

4.3.7 Connection_zone_in_layout_template   EXPRESS-GMapping table

A Connection_zone_in_layout_template is a type of Connection_zone and a type of Instanced_feature. A Connection_zone_in_layout_template is included in a template definition to provide an explicit geometric model of the limited areas in the domain of a terminal that are allowed for a valid connection. If the template definition contains no limitations on the connection area of the terminals associated with the template this Application Object shall not be provided.

NOTE 1   Industry practice for templates is to ensure that the entire point domain for features designated as terminals is available for connection and the Connection_zone_in_layout_template is redundant.

NOTE 2   In the case where the connection area is necessary, the application shall be carefully reviewed to determine the necessity for design instances of the connection area as in most cases, simply using the connection area as a constraint on the allowed location of a joint is sufficient.

EXPRESS specification:

*)
ENTITY Connection_zone_in_layout_template
  SUBTYPE OF (Connection_zone, Instanced_feature);
  SELF\Shape_element.associated_definition : Template_definition;
  connection_zone_category : OPTIONAL SET[1:?] OF land_connection_zone_class;
END_ENTITY;
(*

Attribute definitions:

associated_definition: an attribute inherited from the Shape_element shall be redeclared as the Template_definition for the Connection_zone_in_layout_template.

connection_zone_category: specifies the role of the land_connection_zone_class for the Connection_zone_in_layout_template. There shall exist one or more land_connection_zone_classes for the Connection_zone_in_layout_template. The value of this attribute need not be specified.

4.3.8 Continuous_template   EXPRESS-GMapping table

A Continuous_template is a type of Geometric_template. All the points that make up the domain of the Continuous_template shall be connected, that is any point in the domain of the Continuous_template shall be reachable starting at any other point in the domain.

NOTE    Supported representations of Continuous_template are standard implementations of common industrial practice of filled figure and path figure.

EXPRESS specification:

*)
ENTITY Continuous_template
  SUBTYPE OF (Geometric_template);
WHERE
  WR1: SIZEOF(QUERY(s <* SELF\Geometric_template.shapes | NOT (SIZEOF(['CONSTRUCTIVE_SOLID_GEOMETRY_2D_ARM.SINGLE_AREA_CSG_2D_MODEL'] * TYPEOF(s)) = 1) )) = 0;
END_ENTITY;
(*

Formal propositions:

WR1: All shapes of Continuous_template shall be of type Single_area_csg_2d_model.

4.3.9 Counterbore_passage_template   EXPRESS-GMapping table

A Counterbore_passage_template is a type of Unsupported_passage_template. A Counterbore_passage_template is a combination of two round coaxial passages. The first passage is either a through-hole or a blind hole, and the orientation of the second passage (the counterbore) is the same as that of the first passage. The first passage is smaller than the second passage, which has a blind bottom condition that mates with the top of the first passage.

EXPRESS specification:

*)
ENTITY Counterbore_passage_template
  SUBTYPE OF (Unsupported_passage_template);
  smaller_passage : Unsupported_passage_template;
  larger_passage : Blind_passage_template;
END_ENTITY;
(*

Attribute definitions:

smaller_passage: specifies the role of the Unsupported_passage_template for the Counterbore_passage_template. The smaller_passage specifies the data that is associated with the smaller opening of the Counterbore.

larger_passage: specifies the role of the Blind_passage_template for the Counterbore_passage_template. The larger_passage specifies the data that is associated with the larger opening of the Counterbore.

4.3.10 Countersunk_passage_template   EXPRESS-GMapping table

A Countersunk_passage_template is a type of Unsupported_passage_template. A Countersunk_passage_template is a combination of two round coaxial passages, one cylindrical and one tapered. The initial diameter of the tapered passage will be larger than the diameter of the cylindrical passage, and will linearly taper to be the same diameter as the cylindrical passage where the two passages meet.

EXPRESS specification:

*)
ENTITY Countersunk_passage_template
  SUBTYPE OF (Unsupported_passage_template);
  constant_diameter_passage : Unsupported_passage_template;
  tapered_passage : Blind_passage_template;
END_ENTITY;
(*

Attribute definitions:

constant_diameter_passage: specifies the role of the Unsupported_passage_template for the Countersunk_passage_template. The constant_diameter_passage specifies the data that is associated with the constant diameter opening of the Countersunk passage.

tapered_passage: specifies the role of the Blind_passage_template for the Countersunk_passage_template. The tapered_passage specifies the data that is associated with the tapered area of the Countersunk passage.

4.3.11 Default_attachment_size_based_land_physical_template   EXPRESS-GMapping table

A Default_attachment_size_based_land_physical_template is a type of Shape_element and a type of Land_physical_template. This template shape depends on the shape of the Part_terminal used as its mate.

EXPRESS specification:

*)
ENTITY Default_attachment_size_based_land_physical_template
  SUBTYPE OF (Land_physical_template, Shape_element);
DERIVE
  SELF\Shape_element.associated_definition : Default_attachment_size_based_land_physical_template := SELF;
  SELF\Shape_element.element_name : STRING := '';
  SELF\Shape_element.product_definitional : BOOLEAN := TRUE;
INVERSE
  interface_access_mechanisms : SET[1:?] OF Land_template_interface_terminal FOR associated_definition;
WHERE
  WR1: NOT (SIZEOF(interface_access_mechanisms[1].connection_area) > 0) OR ('minimum attachment region size' IN list_get_zone_name(interface_access_mechanisms[1].connection_area));
  WR2: NOT (SIZEOF(interface_access_mechanisms[1].connection_area) > 1) OR (SIZEOF(['maximum attachment region size','heel area', 'toe area'] * list_get_zone_name(interface_access_mechanisms[1].connection_area)) = 1);
  WR3: NOT (SIZEOF(interface_access_mechanisms[1].connection_area) > 2) OR (SIZEOF(['maximum attachment region size','heel area', 'toe area'] * list_get_zone_name(interface_access_mechanisms[1].connection_area)) = 2);
  WR4: NOT (SIZEOF(interface_access_mechanisms[1].connection_area) > 3) OR (SIZEOF(['maximum attachment region size','heel area', 'toe area'] * list_get_zone_name(interface_access_mechanisms[1].connection_area)) = 3);
  WR5: SIZEOF(interface_access_mechanisms) = 1;
END_ENTITY;
(*

Attribute definitions:

associated_definition: specifies the role of the Default_attachment_size_based_land_physical_template for the Default_attachment_size_based_land_physical_template.

element_name: the name of the Default_attachment_size_based_land_physical_template. It shall be ' '.

product_definitional: the Default_attachment_size_based_land_physical_template shall be definitional.

interface_access_mechanisms: specifies an inverse relationship that specifies that the existence of the Default_attachment_size_based_land_physical_template is dependent on the existence of the Land_template_interface_terminal that specifies the Default_attachment_size_based_land_physical_template as its associated_definition. Fabrication and assembly tolerances define the required shapes and variances for the terminal shapes.

Formal propositions:

WR1: If there is one or more connection area the name 'minimum attachment region size' shall be included in the set of strings.

WR2: If there are two or more connection areas one of the names shall be one of 'maximum attachment region size','heel area', 'toe area'.

WR3: If there are three or more connection areas two of the names shall be include 'maximum attachment region size','heel area', 'toe area' but the name shall not be repeated.

WR4: If there are four connection areas each of the names 'maximum attachment region size','heel area', 'toe area' shall be used but the names shall not be repeated.

WR5: There shall be exactly one member of interface_access_mechanisms.

4.3.12 Default_passage_based_land_physical_template   EXPRESS-GMapping table

A Default_passage_based_land_physical_template is a type of Land_physical_template. A Default_passage_based_land_physical_template is either a Default_plated_passage_based_land_physical_template, or a Default_unsupported_passage_based_land_physical_template. The shape of a Land based on this template is dependent on the shape of the passage with which it is associated.

NOTE    The usual domain technical reference is ANSI/IPC D-275.

EXPRESS specification:

*)
ENTITY Default_passage_based_land_physical_template
  ABSTRACT SUPERTYPE OF (ONEOF (Default_plated_passage_based_land_physical_template,
                                Default_unsupported_passage_based_land_physical_template))
  SUBTYPE OF (Land_physical_template);
  of_passage_technology : Passage_technology;
END_ENTITY;
(*

Attribute definitions:

of_passage_technology: specifies the role of the Passage_technology for the Default_passage_based_land_physical_template. Minimum shape requirements for the Default_passage_based_land_physical_template for a specific fabrication capability are found in Passage_technology. This is the passage for which this template is the default.

4.3.13 Default_plated_passage_based_land_physical_template   EXPRESS-GMapping table

A Default_plated_passage_based_land_physical_template is a type of Default_passage_based_land_physical_template where the passage type is plated.

EXPRESS specification:

*)
ENTITY Default_plated_passage_based_land_physical_template
  SUBTYPE OF (Default_passage_based_land_physical_template);
WHERE
  WR1: SELF\Default_passage_based_land_physical_template.of_passage_technology.plated_passage = TRUE;
  WR2: NOT('FABRICATION_TECHNOLOGY_ARM.DEFAULT_VIA_DEFINITION' IN TYPEOF(SELF\Default_passage_based_land_physical_template.of_passage_technology)) OR (SIZEOF(QUERY(ltjt <* SELF\Land_physical_template.access_mechanisms | NOT('LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.LAND_TEMPLATE_JOIN_TERMINAL' IN TYPEOF(ltjt)))) = 0);
END_ENTITY;
(*

Formal propositions:

WR1: The Passage_technology specified by of_passage_technology shall be plated.

WR2: If a Default_via_definition is the associated passage technology, then there shall only be Land_template_join_terminals that reference the Default_plated_passage_based_land_physical_template.

4.3.14 Default_trace_template   EXPRESS-GMapping table

A Default_trace_template is a type of Trace_template. The Default_trace_template is associated with a particular Stratum_technology, to allow verification that the design of the trace template meets the relevant minimum and maximum guidelines of that Stratum_technology.

EXPRESS specification:

*)
ENTITY Default_trace_template
  SUBTYPE OF (Trace_template);
  of_stratum_technology : Stratum_technology;
END_ENTITY;
(*

Attribute definitions:

of_stratum_technology: specifies the role of the Stratum_technology for the Default_trace_template.

4.3.15 Default_unsupported_passage_based_land_physical_template   EXPRESS-GMapping table

A Default_unsupported_passage_based_land_physical_template is a type of Default_passage_based_land_physical_template where the passage type is a passage that has no metallized support.

EXPRESS specification:

*)
ENTITY Default_unsupported_passage_based_land_physical_template
  SUBTYPE OF (Default_passage_based_land_physical_template);
  SELF\Default_passage_based_land_physical_template.of_passage_technology : Default_unsupported_passage_definition;
END_ENTITY;
(*

Attribute definitions:

of_passage_technology: specifies the Default_unsupported_passage_definition for the Default_unsupported_passage_based_land_physical_template.

4.3.16 Electrical_isolation_removal_template   EXPRESS-GMapping table

An Electrical_isolation_removal_template is a type of Material_removal_feature_template that describes the shape of material to be removed from a feature in a design when that template is instantiated in the design to achieve electrical isolation. This template is a two dimensional area removal and requires a positive material template to be included in the design internal to this template instance if it is desired to include a connection in the center of the template instance. A specialization of this template is included to support that case.

EXPRESS specification:

*)
ENTITY Electrical_isolation_removal_template
  SUBTYPE OF (Material_removal_feature_template);
DERIVE
  electrical_isolation_spacing_requirement : SET[0:?] OF Requirement_view_definition := get_rvd(SELF, 'electrical requirement');
WHERE
  WR1: SIZEOF(QUERY(eisr <* electrical_isolation_spacing_requirement | NOT('INTERCONNECT_PHYSICAL_REQUIREMENT_ALLOCATION_ARM.ELECTRICAL_ISOLATION_REQUIREMENT' IN TYPEOF(eisr)) )) =0;
  WR2: SIZEOF(QUERY(s <* SELF\Geometric_template.shapes | ('LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.PLANAR_CLOSED_PATH_SHAPE_MODEL_WITH_PARAMETERS' IN TYPEOF(s)))) = 0;
  WR3: SIZEOF(QUERY(s <* SELF\Geometric_template.shapes | NOT ('CONSTRUCTIVE_SOLID_GEOMETRY_2D_ARM.SINGLE_BOUNDARY_CSG_2D_MODEL' IN TYPEOF(s)))) = 0;
END_ENTITY;
(*

Attribute definitions:

electrical_isolation_spacing_requirement: specifies the role of the Requirement_view_definition for the Electrical_isolation_removal_template. There shall exist one or more Requirement_view_definitions for the Electrical_isolation_removal_template.

Formal propositions:

WR1: The electrical_isolation_spacing_requirement shall be of type Electrical_isolation_requirement.

WR2: The Planar_closed_path_shape_model_with_parameters shall not be referenced by the shapes attribute inherited from the Geometric_template.

WR3: Only Single_boundary_csg_2d_model shall be referenced by the shapes attribute inherited from the Geometric_template.

4.3.17 Fill_area_template   EXPRESS-GMapping table

A Fill_area_template is a type of Parametric_template that may be solid filled, tiled, or hatch filled.

NOTE    The internal resolved geometric structure of filled areas is not explicitly represented in this part of ISO 10303 and there are therefore no explicit connectivity relationships to the internal geometric elements of filled areas. Consequently it is not possible to make explicit assertions about a connection to a filled area unless the area is solid filled. Additional design verification based on topological extraction techniques from the layout geometry may be needed if filled areas are used for circuit patterns.

EXPRESS specification:

*)
ENTITY Fill_area_template
  SUBTYPE OF (Parametric_template);
  outer_boundary_style : Closed_curve_style_parameters;
  inner_boundary_style : Closed_curve_style_parameters;
END_ENTITY;
(*

Attribute definitions:

outer_boundary_style: specifies a role of the Closed_curve_style_parameters for the Fill_area_template.

inner_boundary_style: specifies a role of the Closed_curve_style_parameters for the Fill_area_template.

4.3.18 Hatch_area_template   EXPRESS-GMapping table

A Hatch_area_template is a type of Fill_area_template.

EXPRESS specification:

*)
ENTITY Hatch_area_template
  SUBTYPE OF (Fill_area_template);
  fill_boundary_style : Curve_style_parameters_with_ends;
  hatch_pattern : SET[1:4] OF Hatch_line_element;
  min_feature : OPTIONAL Length_data_element;
END_ENTITY;
(*

Attribute definitions:

fill_boundary_style: specifies the role of the Curve_style_parameters_with_ends for the Hatch_area_template.

hatch_pattern: specifies the role of the Hatch_line_element for the Hatch_area_template. There shall exist not less than one and not more than four Hatch_line_elements for the Hatch_area_template.

min_feature: specifies a role of the Length_data_element for the Hatch_area_template. The value of this attribute need not be specified.

4.3.19 Hatch_line_element   EXPRESS-GMapping table

A Hatch_line_element is a type of Detailed_geometric_model_element.

EXPRESS specification:

*)
ENTITY Hatch_line_element
  SUBTYPE OF (Detailed_geometric_model_element);
  hatch_line : Line;
  offset : Length_data_element;
END_ENTITY;
(*

Attribute definitions:

hatch_line: specifies the role of the Line for the Hatch_line_element.

offset: specifies a role of the Length_data_element for the Hatch_line_element.

4.3.20 Inter_stratum_feature_edge_segment_template   EXPRESS-GMapping table

An Inter_stratum_feature_edge_segment_template is a type of Inter_stratum_feature_template included to support segmentation of edges in an interconnect design.

NOTE    In interconnect design, it is typical for one or more segments of the edge of the interconnect to have individually unique properties. The Inter_stratum_feature_edge_segment_template provides structural support to permit an application to explicitly assign properties to individual segments.

EXPRESS specification:

*)
ENTITY Inter_stratum_feature_edge_segment_template
  SUBTYPE OF (Inter_stratum_feature_template);
  composed_edge : Inter_stratum_feature_edge_template;
  start_vertex : Edge_segment_vertex;
  end_vertex : Edge_segment_vertex;
  reference_path : Trimmed_curve;
WHERE
  WR1: EXISTS(reference_path.start_point) AND EXISTS(reference_path.end_point);
  WR2: start_vertex :<>: end_vertex;
END_ENTITY;
(*

Attribute definitions:

composed_edge: specifies the role of the Inter_stratum_feature_edge_template the Inter_stratum_feature_edge_segment_template is helping to compose.

start_vertex: specifies one role of the Edge_segment_vertex for the Inter_stratum_feature_edge_segment_template.

end_vertex: specifies one role of the Edge_segment_vertex for the Inter_stratum_feature_edge_segment_template.

reference_path: specifies the Trimmed_curve for the Inter_stratum_feature_edge_segment_template.

Formal propositions:

WR1: Both start_point and end_point of reference_path shall exist.

WR2: The start_vertex shall not be equal to the end_vertex.

4.3.21 Inter_stratum_feature_edge_template   EXPRESS-GMapping table

An Inter_stratum_feature_edge_template is a type of Inter_stratum_feature_template included to support description of properties of the edges of features that traverse one or multiple layers of an interconnect.

EXPRESS specification:

*)
ENTITY Inter_stratum_feature_edge_template
  SUBTYPE OF (Inter_stratum_feature_template);
INVERSE
  edges : SET[2:?] OF Inter_stratum_feature_edge_segment_template FOR composed_edge;
END_ENTITY;
(*

Attribute definitions:

edges: specifies an inverse relationship that specifies that the existence of the Inter_stratum_feature_edge_template is dependent on the existence of the Inter_stratum_feature_edge_segment_template that specifies the Inter_stratum_feature_edge_template as its composed_edge. There shall be two or more Inter_stratum_feature_edge_segment_template for an Inter_stratum_feature_edge_template.

4.3.22 Inter_stratum_feature_template   EXPRESS-GMapping table

An Inter_stratum_feature_template is a type of Geometric_template. An Inter_stratum_feature_template may be either a Component_termination_passage_template, or a Via_template, or an Unsupported_passage_template, or an Inter_stratum_feature_edge_segment_template, or an Inter_stratum_feature_edge_template. An Inter_stratum_feature_template is a definitional construct that defines the cross-section shape of layered constructs.

EXPRESS specification:

*)
ENTITY Inter_stratum_feature_template
  SUPERTYPE OF (ONEOF (Component_termination_passage_template,
                       Via_template,
                       Unsupported_passage_template,
                       Inter_stratum_feature_edge_segment_template,
                       Inter_stratum_feature_edge_template))
  SUBTYPE OF (Geometric_template);
  of_passage_technology : Passage_technology;
WHERE
  WR1: NOT EXISTS(SELF\Product_view_definition.name);
END_ENTITY;
(*

Attribute definitions:

of_passage_technology: specifies the role of the Passage_technology for the Inter_stratum_feature_template. The of_passage_technology specifies the material and layered properties for the Inter_stratum_feature_template.

Formal propositions:

WR1: The name shall not be populated.

4.3.23 Land_physical_template   EXPRESS-GMapping table

A Land_physical_template is a type of Stratum_feature_template. A Land_physical_template may be either a Default_attachment_size_based_land_physical_template or a Default_passage_based_land_physical_template. If the material composing the Land_physical_template is conductive, the Land_physical_template provides the functionality of a short among its terminals. Each member of Land_physical_template that is assigned a classification shall be assigned a unique classification.

EXAMPLE 1   Figure 1 illustrates explicit geometry that represents simplified Land_physical_template.



Figure 1 —  Land_physical_template

Figure 1 —  Land_physical_template

EXPRESS specification:

*)
ENTITY Land_physical_template
  SUPERTYPE OF (ONEOF (Default_passage_based_land_physical_template,
                       Default_attachment_size_based_land_physical_template))
  SUBTYPE OF (Stratum_feature_template);
INVERSE
  access_mechanisms : SET[1:?] OF Land_template_terminal FOR associated_definition;
  pre_defined_classification_code : SET[0:1] OF External_source_identification FOR item;
WHERE
  WR1: SIZEOF(QUERY(ltjt <* access_mechanisms | ('LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.LAND_TEMPLATE_JOIN_TERMINAL' IN TYPEOF(ltjt)))) > 0;
  WR2: SIZEOF(QUERY(s <* SELF\Geometric_template.shapes | NOT ('CONSTRUCTIVE_SOLID_GEOMETRY_2D_ARM.SINGLE_AREA_CSG_2D_MODEL' IN TYPEOF(s)))) = 0;
  WR3: SIZEOF(SELF\Geometric_template.shapes) > 0;
END_ENTITY;
(*

Attribute definitions:

access_mechanisms: an inverse relationship that specifies that the existence of the Land_physical_template is dependent on the existence of the Land_template_terminal that specifies the Land_physical_template as its associated_definition. There shall be one or more Land_template_terminal for a Land_physical_template. Fabrication and assembly tolerances define the required shapes and variances for the terminal shapes.

pre_defined_classification_code: an inverse relationship that specifies that the existence of the Land_physical_template is dependent on the existence of the External_source_identification that specifies the Land_physical_template as its item. The pre_defined_classification_code need not be specified for a specific Land_physical_template.

NOTE 1   IEC 61182-1 provides a set of Land identifiers. See figure 2.



Figure 2 —  Complex land template shapes

Figure 2 —  Complex land template shapes

NOTE 2   The Land_physical_template, Usage_concept_usage_relationship, and the Geometric Dimensioning and Tolerancing capabilities of this part of ISO 10303 may be used to unambiguously exchange the shape of both predefined Land patterns that include only geometry (as from IEC 61182-1) and enterprise defined patterns. When this facility is used to create more than one equivalent Land definition, it may not be possible to maintain knowledge of the connection functionality of the Land definition. This is because Land is an atomic concept in this part of ISO 10303.

NOTE 3   The Assembly_group_component, Layered_interconnect_module_design_view, and the Geometric Dimensioning and Tolerancing capabilities of this part of ISO 10303 may be used to unambiguously exchange both the shape and connection knowledge of Land patterns that include pre-defined geometry (as from IEC 61182-1) and enterprise defined geometry that have explicit definitions of the fabrication and assembly constraints.

NOTE 4   The Land_physical_template inherit material property data from Template_definition.

When there is a member of pre_defined_classification_code provided, the source_type attribute of the member shall be the same for all members of Land_physical_template. When there is a member of pre_defined_classification_code provided, no more than one member of Land_physical_template shall reference that be assigned a specific value of the source_id attribute of External_source_identification.

EXAMPLE 2   The Land_physical_template #1235 is assigned a source_id of "Variable octagon" and a source_type of "IEC 61182-1.land type". See figure 2.

NOTE 5   A URI may be used for the source_id and source_type.

Formal propositions:

WR1: The access_mechanisms shall include at least one Land_template_join_terminal.

WR2: All shapes of Land_physical_template shall be of type Single_area_csg_2d_model.

WR3: There shall be at least one shape.

4.3.24 Land_template_interface_terminal   EXPRESS-GMapping table

A Land_template_interface_terminal is a type of Land_template_terminal that has an external access functionality. A Land_template_interface_terminal redefines the associated_definition attribute inherited from Land_template_terminal to only reference a Default_attachment_size_based_land_physical_template.

EXAMPLE    Figure 3 is a plan view that illustrates the geometry that represents the interface terminal for a Land_physical_template.



Figure 3 —  Land_template_interface_terminal

Figure 3 —  Land_template_interface_terminal

EXPRESS specification:

*)
ENTITY Land_template_interface_terminal
  SUBTYPE OF (Land_template_terminal);
  SELF\Shape_element.associated_definition : Default_attachment_size_based_land_physical_template;
END_ENTITY;
(*

Attribute definitions:

associated_definition: specifies the role of the Default_attachment_size_based_land_physical_template for the Land_template_interface_terminal.

4.3.25 Land_template_join_terminal   EXPRESS-GMapping table

A Land_template_join_terminal is a type of Land_template_terminal that has an internal access functionality.

EXAMPLE    Figure 4 is a plan view that illustrates the geometry that represents the join terminal for a Land_physical_template. In the plan view, the join terminal is on the periphery.



Figure 4 —  Land_template_join_terminal

Figure 4 —  Land_template_join_terminal

EXPRESS specification:

*)
ENTITY Land_template_join_terminal
  SUBTYPE OF (Land_template_terminal);
END_ENTITY;
(*

4.3.26 Land_template_terminal   EXPRESS-GMapping table

A Land_template_terminal is a type of Shape_element. A Land_template_terminal is either a Land_template_interface_terminal or a Land_template_join_terminal. A Land_template_terminal is an area on a Land_physical_template designated for connection in a realization of the template. The terminal_category shall not be supplied if the Connection_zone is supplied. If the Connection_zone is supplied but without classification data, a receiving application shall assume the connection is a surface area connection.

EXPRESS specification:

*)
ENTITY Land_template_terminal
  ABSTRACT SUPERTYPE OF (ONEOF (Land_template_join_terminal,
                                Land_template_interface_terminal))
  SUBTYPE OF (General_part_feature);
  SELF\Shape_element.associated_definition : Land_physical_template;
  connection_area : OPTIONAL SET[1:?] OF Connection_zone_in_layout_template;
  terminal_category : OPTIONAL land_template_terminal_class;
UNIQUE
  UR1: SELF\Shape_element.element_name, associated_definition;
WHERE
  WR1: NOT (EXISTS(connection_area)) OR NOT EXISTS(terminal_category);
  WR2: NOT EXISTS(SELF\Shape_element.description);
  WR3: SIZEOF(QUERY(ca <* connection_area | NOT(associated_definition = ca\Shape_element.associated_definition) )) = 0;
END_ENTITY;
(*

Attribute definitions:

associated_definition: specifies the role of the Land_physical_template for the Land_template_terminal.

connection_area: specifies the role of the Connection_zone_in_layout_template for the Land_template_terminal. There may be one or more Connection_zone_in_layout_template for the Land_template_terminal. The value of this attribute need not be specified. If the source system contains the data, then the connection_area shall be supplied.

terminal_category: specifies the land_template_terminal_class for the Land_template_terminal. The value of this attribute need not be specified.

Formal propositions:

UR1: The combination of associated_definition and element_name shall be unique within a population of Land_template_terminals.

WR1: The terminal_category shall not be provided if the connection_area is provided.

WR2: The description shall not be populated.

WR3: Each member of connection_area shall reference the same associated_definition with its attribute associated_definition.

Informal propositions:

IP1: The points comprising the connection_area shall reside in the shape of the electrical device being accessed.

IP2: The points comprising the connection_area shall be defined in the coordinate system of the device being accessed.

4.3.27 Material_removal_feature_template   EXPRESS-GMapping table

A Material_removal_feature_template is a type of Single_stratum_continuous_template that describes the shape of material to be removed from a feature. A Material_removal_feature_template shall not have voids either when represented by an explicit geometric model or when a parametric representation by a path figure is resolved in a receiving system.

EXAMPLE 1   Figure 5 illustrates a template and associated annotation designed for electrical isolation. For a specific template, the explicit geometry will be representative of the annotation values. The illustration includes two templates to support the parameter illustration. The outer template is the Material_removal_feature_template.



Figure 5 —  Material_removal_feature_template supports electrical isolation

Figure 5 —  Material_removal_feature_template supports electrical isolation

EXAMPLE 2   Figure 6 illustrates a structure designed for thermal isolation. For this figure, multiple Material_removal_feature_template help compose a structure to achieve the desired configuration. The figure illustrates the end result of the composition process.



Figure 6 —  Material_removal_feature_template participates in structure to support thermal isolation

Figure 6 —  Material_removal_feature_template participates in structure to support thermal isolation

EXPRESS specification:

*)
ENTITY Material_removal_feature_template
  SUBTYPE OF (Single_stratum_continuous_template);
WHERE
  WR1: NOT EXISTS(SELF\Product_view_definition.name);
  WR2: SIZEOF(SELF\Geometric_template.shapes) > 0;
END_ENTITY;
(*

Formal propositions:

WR1: The name shall not be populated.

WR2: There shall be at least one shape.

Informal propositions:

IP1: There shall be no voids in the model that represents Material_removal_feature_template.

4.3.28 Parametric_template   EXPRESS-GMapping table

A Parametric_template is a type of Template_definition. A Parametric_template is either a Fill_area_template or a Teardrop_template, or a Trace_template.

EXPRESS specification:

*)
ENTITY Parametric_template
  ABSTRACT SUPERTYPE OF (ONEOF (Fill_area_template,
                                Teardrop_template,
                                Trace_template))
  SUBTYPE OF (Template_definition);
END_ENTITY;
(*

4.3.29 Part_string_template   EXPRESS-GMapping table

A Part_string_template is a type of Template_definition that supports the definitin of a multi-character representation in a design. The Part_string_template is an incompletely modelled concept and requires other Application objects to be populated in an application.

NOTE    An application of Part_string_template would normally be in a character array and separately reference the font desired.

EXPRESS specification:

*)
ENTITY Part_string_template
  SUBTYPE OF (Template_definition);
  string_alignment : text_alignment;
END_ENTITY;
(*

Attribute definitions:

string_alignment: specifies the text_alignment for the Part_string_template.

4.3.30 Part_text_template   EXPRESS-GMapping table

A Part_text_template is a type of Template_definition that is the information required to support the creation of text messages in the stratum material on the Layered_interconnect_module_design_view or in a marking application.

NOTE 1   The shape of the Part_text_template provided by the of_character attribute is placed in the shape of the physical unit model by a geometric model transformation./>.

NOTE 2   The bounding box of the Part_text_template is provided by the character attribute of the Character_glyph_symbol specified by of_character.

EXPRESS specification:

*)
ENTITY Part_text_template
  SUBTYPE OF (Template_definition);
  of_character : Character_glyph_symbol;
WHERE
  WR1: SIZEOF(['CONSTRUCTIVE_SOLID_GEOMETRY_3D_ARM.CSG_MODEL', 'LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.SOLID_CHARACTER_GLYPH_2D_SYMBOL'] * TYPEOF(of_character)) = 1;
END_ENTITY;
(*

Attribute definitions:

of_character: specifies the role of the Character_glyph_symbol for the Part_text_template. The Character_glyph_symbol is the geometric model of the character.

Formal propositions:

WR1: The of_character attribute shall be a Character_glyph_symbol and one of either a Csg_model or a Solid_character_glyph_2d_symbol.

4.3.31 Planar_closed_path_shape_model_with_parameters   EXPRESS-GMapping table

A Planar_closed_path_shape_model_with_parameters is a type of Planar_path_shape_model_with_parameters. A Planar_closed_path_shape_model_with_parameters is a closed path type of Planar_path_shape_model_with_parameters.

EXPRESS specification:

*)
ENTITY Planar_closed_path_shape_model_with_parameters
  SUBTYPE OF (Planar_path_shape_model_with_parameters);
WHERE
  WR1: SIZEOF(QUERY(it <* SELF\Representation.items | ('LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.CLOSED_PATH_AREA_WITH_PARAMETERS' IN TYPEOF(it)) )) = 1;
END_ENTITY;
(*

Formal propositions:

WR1: Exactly one member of the items attribute inherited from Representation shall be a Path_area_with_parameters.

4.3.32 Planar_path_shape_model_with_parameters   EXPRESS-GMapping table

A Planar_path_shape_model_with_parameters is a type of Single_area_csg_2d_model. A Planar_path_shape_model_with_parameters provides support for certain pre-defined subset of geometric properties for a path based model. There are options on the properties as specified in the Trace_template referenced by the parameters attribute. The geometric result of applying a Planar_path_shape_model_with_parameters in a design shall be a single area geometric model whose area is a function of the path length and width. There shall be no voids in the equivalent geometric model.

NOTE    If the width parameter of the Trace_template is zero, the area will be zero and the purpose for including the model in the design is to define a boundary rather than an area. Application of the model in this manner is explicitly described in the Application Object referencing the model in this part of ISO 10303.

EXPRESS specification:

*)
ENTITY Planar_path_shape_model_with_parameters
  SUBTYPE OF (Single_area_csg_2d_model);
WHERE
  WR1: SIZEOF(QUERY(it <* SELF\Representation.items | ('EXTENDED_BASIC_GEOMETRY_ARM.AXIS_PLACEMENT_2D' IN TYPEOF(it)) )) = 1;
  WR2: SIZEOF(QUERY(it <* SELF\Representation.items | ('CONSTRUCTIVE_SOLID_GEOMETRY_2D_ARM.PATH_AREA_WITH_PARAMETERS' IN TYPEOF(it)) )) = 1;
  WR3: SIZEOF(SELF\Representation.items) = 2;
END_ENTITY;
(*

Formal propositions:

WR1: Exactly one member of the items attribute inherited from Representation shall be an Axis_placement_2d.

WR2: Exactly one member of the items attribute inherited from Representation shall be a Path_area_with_parameters.

WR3: There shall exit exactly two items.

4.3.33 Plated_passage_template_shape_model   EXPRESS-GMapping table

A Plated_passage_template_shape_model is a type of Part_template_shape_model.

EXPRESS specification:

*)
ENTITY Plated_passage_template_shape_model
  SUBTYPE OF (Part_template_shape_model);
  SELF\Part_template_shape_model.shape_characterized_definition : SET[1:?] OF ptswp_ptsm_definition;
  data_qualification : ptswp_template_shape_model_context;
DERIVE
  template : Geometric_template := shape_characterized_definition[1];
WHERE
  WR1: SIZEOF(QUERY(scd <* shape_characterized_definition | NOT(scd\Inter_stratum_feature_template.of_passage_technology\Passage_technology.plated_passage) )) = 0;
  WR2: SIZEOF(QUERY(scd <* shape_characterized_definition | NOT(TYPEOF(scd) = TYPEOF(template)) )) = 0;
END_ENTITY;
(*

Attribute definitions:

shape_characterized_definition: an attribute inherited from the Part_template_shape_model shall be redeclared as the ptswp_ptsm_definition for the Plated_passage_template_shape_model. There shall exist more than one ptswp_ptsm_definition for the Plated_passage_template_shape_model.

data_qualification: specifies the source qualification for the Plated_passage_template_shape_model shape. The shape may be for the drilled shape, for the finished shape or the context may be unknown in the source system.

template: specifies the role of a Geometric_template that is the first element in shape_characterized_definition.

Formal propositions:

WR1: Each passage referenced by Plated_passage_template_shape_model shall be a plated passage.

WR2: All templates in the shape_characterized_definition shall be of the same type.

4.3.34 Single_stratum_continuous_template   EXPRESS-GMapping table

A Single_stratum_continuous_template is a type of Continuous_template and a type of Single_stratum_template. A Single_stratum_continuous_template is either a Stratum_feature_template or a Material_removal_feature_template.

EXPRESS specification:

*)
ENTITY Single_stratum_continuous_template
  ABSTRACT SUPERTYPE OF (ONEOF (Stratum_feature_template,
                                Material_removal_feature_template))
  SUBTYPE OF (Continuous_template, Single_stratum_template);
END_ENTITY;
(*

4.3.35 Single_stratum_template   EXPRESS-GMapping table

A Single_stratum_template is a type of Template_definition included that has a constraint that the geometric extent of the template is limited to a single layer.

EXPRESS specification:

*)
ENTITY Single_stratum_template
  ABSTRACT SUPERTYPE
  SUBTYPE OF (Template_definition);
END_ENTITY;
(*

4.3.36 Snowball_template   EXPRESS-GMapping table

A Snowball_template is a type of Teardrop_template that describes the shape of material to be added to a trace termination that is parameterized by the radius of the material addition geometry. The Snowball_template edge is required to be overlapping the Laminate_component that is associated by virtue of the Fabrication_joint that references the occurrence of the Snowball_template. The parameters associated with a Snowball_template allow for one or more shapes to be instantiated with the same Fabrication_joint. The center of the circle or circles shall be on the centreline curve of the associated Conductive_interconnect_element referenced indirectly by the Fabrication_joint.

NOTE 1   The occurrence of a Snowball_template will be a Stratum_feature_template_component that is referenced by a Fabrication_joint by the auxiliary_joint_material attribute.

NOTE 2   The Conductive_interconnect_element is associated because the Conductive_interconnect_element directly referenced by Fabrication_joint references a Conductive_interconnect_element.

EXPRESS specification:

*)
ENTITY Snowball_template
  SUBTYPE OF (Teardrop_template);
  snowball_start_distance : Length_data_element;
  snowball_end_distance : OPTIONAL Length_data_element;
  snowball_initial_spacing : OPTIONAL Length_data_element;
  snowball_end_spacing : OPTIONAL Length_data_element;
  snowball_initial_radius : Length_data_element;
  snowball_end_radius : OPTIONAL Length_data_element;
  snowball_quantity_per_trace : INTEGER;
WHERE
  WR1: NOT (snowball_quantity_per_trace > 1) OR (EXISTS(snowball_initial_spacing) AND EXISTS(snowball_end_spacing) AND EXISTS(snowball_end_distance) AND EXISTS(snowball_end_radius));
  WR2: (SIZEOF(USEDIN(SELF,'PART_TEMPLATE_SHAPE_WITH_PARAMETERS_ARM.PART_TEMPLATE_SHAPE_MODEL.' + 'SHAPE_CHARACTERIZED_DEFINITION')) = 0);
  WR3: NOT EXISTS(SELF\Product_view_definition.additional_characterization);
END_ENTITY;
(*

Attribute definitions:

snowball_start_distance: specifies a role of the Length_data_element for the Snowball_template.

snowball_end_distance: specifies a role of the Length_data_element for the Snowball_template. The value of this attribute need not be specified.

snowball_initial_spacing: specifies a role of the Length_data_element for the Snowball_template. The value of this attribute need not be specified.

snowball_end_spacing: specifies a role of the Length_data_element for the Snowball_template. The value of this attribute need not be specified.

snowball_initial_radius: specifies a role of the Length_data_element for the Snowball_template.

snowball_end_radius: specifies a role of the Length_data_element for the Snowball_template. The value of this attribute need not be specified.

snowball_quantity_per_trace: specifies the integer quantity of snowballs.

Formal propositions:

WR1: If a snowball_quantity_per_trace is greater than zero, the following shall be provided: snowball_end_distance, snowball_initial_spacing, snowball_end_spacing, snowball_initial_radius, snowball_end_radius.

WR2: There shall be no Part_template_planar_shape_model refering this Snowball_template as shape_characterized_definition and no Part_template_3d_shape_model refering this Snowball_template as shape_characterized_definition and no Part_template_non_planar_2d_shape_model refering this Snowball_template as shape_characterized_definition.

WR3: The additional_characterization shall not be populated.

4.3.37 Solid_character_glyph_2d_symbol   EXPRESS-GMapping table

A Solid_character_glyph_2d_symbol is a type of Character_glyph_symbol and a type of Csg_2d_model included to be an explicit geometric model of a character in a design that may be realized in material delivered to a customer.

NOTE    A Solid_character_glyph_2d_symbol is not annotation. It is part of the product geometric model.

EXPRESS specification:

*)
ENTITY Solid_character_glyph_2d_symbol
  SUBTYPE OF (Character_glyph_symbol, Csg_2d_model);
END_ENTITY;
(*

4.3.38 Stratum_feature_template   EXPRESS-GMapping table

A Stratum_feature_template is a type of Single_stratum_continuous_template that is a definition or partial definition of a Stratum_feature. A Stratum_feature_template may be a Land_physical_template. A Stratum_feature_template defines a contiguous material shape.

EXPRESS specification:

*)
ENTITY Stratum_feature_template
  SUPERTYPE OF (Land_physical_template)
  SUBTYPE OF (Single_stratum_continuous_template);
WHERE
  WR1: NOT EXISTS(SELF\Product_view_definition.name);
END_ENTITY;
(*

Formal propositions:

WR1: The name shall not be populated.

4.3.39 Teardrop_by_angle_template   EXPRESS-GMapping table

A Teardrop_by_angle_template is a type of Teardrop_template that describes the shape of material to be added to a trace termination that is parameterized by the angle of the material addition geometry. The Teardrop_by_angle_template edge is required to be tangential to the Laminate_component that is associated by virtue of the Fabrication_joint that references the occurrence of the Teardrop_by_angle_template. The vertex of the angle shall be on the centreline of the Conductive_interconnect_element associated by the Fabrication_joint. The angle shall be less than 90 degrees.

NOTE    The occurrence of a Teardrop_by_angle_template will be a Stratum_feature_template_component that is referenced by a Fabrication_joint by the auxiliary_joint_material attribute.

EXPRESS specification:

*)
ENTITY Teardrop_by_angle_template
  SUBTYPE OF (Teardrop_template);
  teardrop_angle : Angle_data_element;
WHERE
  WR1: (SIZEOF(USEDIN(SELF,'PART_TEMPLATE_SHAPE_WITH_PARAMETERS_ARM.PART_TEMPLATE_SHAPE_MODEL.' + 'SHAPE_CHARACTERIZED_DEFINITION')) = 0);
  WR2: NOT EXISTS(SELF\Product_view_definition.additional_characterization);
END_ENTITY;
(*

Attribute definitions:

teardrop_angle: specifies the role of the Angle_data_element for the Teardrop_by_angle_template.

Formal propositions:

WR1: There shall be no Part_template_planar_shape_model refering this Teardrop_by_angle_template as shape_characterized_definition and no Part_template_3d_shape_model refering this Teardrop_by_angle_template as shape_characterized_definition and no Part_template_non_planar_2d_shape_model refering this Teardrop_by_angle_template as shape_characterized_definition.

WR2: The additional_characterization shall not be populated.

4.3.40 Teardrop_by_length_template   EXPRESS-GMapping table

A Teardrop_by_length_template is a type of Teardrop_template that describes the shape of material to be added to a design feature. The teardrop_taper_start_distance and teardrop_taper_end_distance shall be measured from the location of the Layer_connection_point of the Laminate_component referenced by the Fabrication_joint that references a Stratum_feature_template_component that is an occurrence of Teardrop_by_length_template. The centreline of the Stratum_feature_template_component that is an occurrence of the Teardrop_by_length_template shall be congruent with the centreline of the Conductive_interconnect_element it is associated with.

EXPRESS specification:

*)
ENTITY Teardrop_by_length_template
  SUBTYPE OF (Teardrop_template);
  teardrop_taper_start_distance : Length_data_element;
  teardrop_taper_end_distance : Length_data_element;
WHERE
  WR1: (SIZEOF(USEDIN(SELF,'PART_TEMPLATE_SHAPE_WITH_PARAMETERS_ARM.PART_TEMPLATE_SHAPE_MODEL.' + 'SHAPE_CHARACTERIZED_DEFINITION')) = 0);
  WR2: NOT EXISTS(SELF\Product_view_definition.additional_characterization);
END_ENTITY;
(*

Attribute definitions:

teardrop_taper_start_distance: specifies one role of the Length_data_element for the Teardrop_by_length_template.

teardrop_taper_end_distance: specifies one role of the Length_data_element for the Teardrop_by_length_template.

Formal propositions:

WR1: There shall be no Part_template_planar_shape_model refering this Teardrop_by_length_template as shape_characterized_definition and no Part_template_3d_shape_model refering this Teardrop_by_length_template as shape_characterized_definition and no Part_template_non_planar_2d_shape_model refering this Teardrop_by_length_template as shape_characterized_definition.

WR2: The additional_characterization shall not be populated.

4.3.41 Teardrop_template   EXPRESS-GMapping table

A Teardrop_template is a type of Parametric_template and a type of Single_stratum_template that supports the transition area between a trace and a land. The application of Teardrop_template in a layout increases yield due to elimination of acid traps and reduced sensitivity to process tolerances. A Teardrop_template may be either a Snowball_template or a Teardrop_by_angle_template, or a Teardrop_by_length_template.

EXPRESS specification:

*)
ENTITY Teardrop_template
  SUPERTYPE OF (ONEOF (Snowball_template,
                       Teardrop_by_angle_template,
                       Teardrop_by_length_template))
  SUBTYPE OF (Parametric_template, Single_stratum_template);
WHERE
  WR1: (SIZEOF(['LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.SNOWBALL_TEMPLATE', 'LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.TEARDROP_BY_ANGLE_TEMPLATE', 'LAYERED_INTERCONNECT_SIMPLE_TEMPLATE_ARM.TEARDROP_BY_LENGTH_TEMPLATE'] * TYPEOF(SELF)) = 1) XOR ('PRODUCT_VIEW_DEFINITION_REFERENCE_ARM.PRODUCT_VIEW_DEFINITION_REFERENCE' IN TYPEOF(SELF));
END_ENTITY;
(*

Formal propositions:

WR1: Either the Teardrop_template is one of the subtypes or it shall also be an Generic_product_view_definition_reference but it shall not be one of the supertypes and an Generic_product_view_definition_reference.

4.3.42 Tile_area_template   EXPRESS-GMapping table

A Tile_area_template is a type of Fill_area_template.

EXPRESS specification:

*)
ENTITY Tile_area_template
  SUBTYPE OF (Fill_area_template);
  fill_template : Single_stratum_template;
  start_placement : Axis_placement_2d;
  first_repeat_factor : Vector;
  second_repeat_factor : Vector;
END_ENTITY;
(*

Attribute definitions:

fill_template: specifies the role of the Single_stratum_template for the Tile_area_template.

start_placement: specifies the role of the Axis_placement_2d for the Tile_area_template.

first_repeat_factor: specifies a role of the Vector for the Tile_area_template.

second_repeat_factor: specifies a role of the Vector for the Tile_area_template.

4.3.43 Trace_template   EXPRESS-GMapping table

A Trace_template is a type of Parametric_template whose purpose is to define the width of a Conductive_interconnect_element and the style of the ends and corners of that Conductive_interconnect_element. A Trace_template may be a Default_trace_template.

EXPRESS specification:

*)
ENTITY Trace_template
  SUPERTYPE OF (Default_trace_template)
  SUBTYPE OF (Parametric_template);
  trace_style : Curve_style_parameters;
WHERE
  WR1: NOT EXISTS(SELF\Product_view_definition.name);
END_ENTITY;
(*

Attribute definitions:

trace_style: specifies the role of the Curve_style_parameters for the Trace_template.

NOTE    The Trace_template uses the parametric information in Curve_style_parameters, not the graphical presentation information.

Formal propositions:

WR1: The name shall not be populated.

4.3.44 Unsupported_passage_template   EXPRESS-GMapping table

An Unsupported_passage_template is a type of Continuous_template and a type of Inter_stratum_feature_template. An Unsupported_passage_template may be either a Counterbore_passage_template or a Countersunk_passage_template, or a Blind_passage_template.

NOTE    The Unsupported_passage_template associates shape information with the Passage_technology parametric property information. "Unsupported" carries the meaning that the passage is not mechanically or electrically supported by deposited sidewalls.

EXPRESS specification:

*)
ENTITY Unsupported_passage_template
  SUPERTYPE OF (ONEOF (Counterbore_passage_template,
                       Countersunk_passage_template,
                       Blind_passage_template))
  SUBTYPE OF (Continuous_template, Inter_stratum_feature_template);
  SELF\Inter_stratum_feature_template.of_passage_technology : Default_unsupported_passage_definition;
END_ENTITY;
(*

Attribute definitions:

of_passage_technology: specifies the role of the Default_unsupported_passage_definition for the Unsupported_passage_template.

4.3.45 Via_template   EXPRESS-GMapping table

A Via_template is a type of Continuous_template and a type of Inter_stratum_feature_template.

NOTE    A Via_template provides a template for a plated passage that supports the realization of connectivity or of mechanical support. The access_mechanisms attribute relates the Via_template to zero or more terminals, thereby capturing complete connectivity information when the terminals are populated.

EXPRESS specification:

*)
ENTITY Via_template
  SUBTYPE OF (Continuous_template, Inter_stratum_feature_template);
  SELF\Inter_stratum_feature_template.of_passage_technology : Default_via_definition;
INVERSE
  access_mechanisms : SET[0:?] OF Via_template_terminal FOR associated_definition;
END_ENTITY;
(*

Attribute definitions:

of_passage_technology: specifies the role of the Default_via_definition for the Via_template.

access_mechanisms: specifies an inverse relationship that specifies that the existence of the Via_template is dependent on the existence of the Via_template_terminal that specifies the Via_template as its associated_definition. There may be zero or more Via_template_terminals for a Via_template.

4.3.46 Via_template_terminal   EXPRESS-GMapping table

A Via_template_terminal is a type of Shape_element. A Via_template_terminal is a terminal in a Via_template. A Via_template_terminal is a terminal that is congruent with the exterior surface of the cylinder of the Via, including material covered by joined members of Land. The fabrication join capability is optionally constrained by a set of Stratum.

EXPRESS specification:

*)
ENTITY Via_template_terminal
  SUBTYPE OF (General_part_feature);
  SELF\Shape_element.associated_definition : Via_template;
  disallowed_inter_stratum_extent : OPTIONAL SET[1:?] OF Stratum_technology_occurrence_link;
  connection_area : OPTIONAL SET[1:?] OF Connection_zone_in_layout_template;
UNIQUE
  UR1: SELF\Shape_element.element_name, associated_definition;
WHERE
  WR1: NOT EXISTS(SELF\Shape_element.description);
END_ENTITY;
(*

Attribute definitions:

associated_definition: specifies the role of the Via_template for the Via_template_terminal.

disallowed_inter_stratum_extent: specifies the Stratum_technology_occurrence_link for which a connection to the Via_template_terminal is disallowed. The value of this attribute need not be specified. There may be more than one Stratum_technology_occurrence_link for a Via_template_terminal.

connection_area: specifies the role of the Connection_zone_in_layout_template for the Via_template_terminal. There may be one or more Connection_zone_in_layout_template for the Via_template_terminal. The value of this attribute need not be specified. If the data is available in the source system, the data shall be provided.

Formal propositions:

UR1: The combination of the element_name and associated_definition shall be unique within a population of Via_template_terminal.

WR1: The description shall not be populated.

4.4 ARM subtype constraint definitions

This subclause specifies the ARM subtype constraints for this module. Each subtype constraint places constraints on the possible super-type / subtype instantiations. The ARM subtype constraints and definitions are specified below.

4.4.1 list_template_definition_subtypes   EXPRESS-GMapping table

The list_template_definition_subtypes constraint specifies a constraint that applies to instances of Template_definition and enforces the rule that its subtypes Geometric_template, Parametric_template, Part_string_template, Part_text_template, Single_stratum_template and Stratum_stack_model are exclusive.

EXPRESS specification:

*)
SUBTYPE_CONSTRAINT list_template_definition_subtypes FOR Template_definition;
  ONEOF (Geometric_template,
         Parametric_template,
         Part_string_template,
         Part_text_template,
         Single_stratum_template,
         Stratum_stack_model);
END_SUBTYPE_CONSTRAINT;
(*

4.4.2 list_shape_feature_subtypes   EXPRESS-GMapping table

The list_shape_feature_subtypes constraint specifies a constraint that applies to instances of General_part_feature and enforces the rule that its subtypes Via_template_terminal, Component_termination_passage_template_terminal and Land_template_terminal are exclusive.

EXPRESS specification:

*)
SUBTYPE_CONSTRAINT list_shape_feature_subtypes FOR General_part_feature;
  ONEOF (Via_template_terminal,
         Component_termination_passage_template_terminal,
         Land_template_terminal);
END_SUBTYPE_CONSTRAINT;
(*

4.4.3 lisp_shape_element_subtypes   EXPRESS-GMapping table

The lisp_shape_element_subtypes constraint specifies a constraint that applies to instances of Shape_element and enforces the rule that its subtypes Non_feature_shape_element and Edge_segment_vertex are exclusive.

EXPRESS specification:

*)
SUBTYPE_CONSTRAINT lisp_shape_element_subtypes FOR Shape_element;
  ONEOF (Non_feature_shape_element,
         Edge_segment_vertex);
END_SUBTYPE_CONSTRAINT;
(*

4.5 ARM function definition

This subclause specifies the ARM function for this module. The ARM function and definition is specified below.

4.5.1 list_get_zone_name

The list_get_zone_name function returns a set of strings, each member of which is a name of a member of the set of Connection_zone_in_layout_template input to the function.

EXPRESS specification:

*)
FUNCTION list_get_zone_name (input : SET[0:?] OF Connection_zone_in_layout_template) : SET[0:?] OF STRING;
LOCAL
      s : SET OF STRING := [];
    END_LOCAL;
    REPEAT  i := 1 TO SIZEOF(input) BY 1;
      s := s + input[i]\Characterizable_object.name;
    END_REPEAT;
    RETURN(s);
END_FUNCTION;
(*

Argument definitions:

input: the specified set of Connection_zone_in_layout_template.

4.6 ARM rule definition

This subclause specifies the ARM rule for this module. The ARM rule and definition is specified below.

4.6.1 unique_land_physical_template

The unique_land_physical_template constrains the population of Land_physical_template such that no more than one member of Land_physical_template may be associated with the same source_id attribute of External_source_identification and all members of Land_physical_template are associated with the same source_type attribute of External_source_identification. This constraint is applied only for members of Land_physical_template for which there is a member of pre_defined_classification_code.

EXPRESS specification:

*)
RULE unique_land_physical_template FOR
(Land_physical_template);
LOCAL
      esi : BAG OF External_source_identification := [];
      iid : BAG OF String := [];
      itype : BAG OF String := [];
    END_LOCAL;
    REPEAT i := 1 to SIZEOF(Land_physical_template) by 1;
      esi  := esi + Land_physical_template[i].pre_defined_classification_code[1];
      iid := iid + Land_physical_template[i].pre_defined_classification_code[1]\External_source_identification.source_id;
      itype := itype + Land_physical_template[i].pre_defined_classification_code[1]\External_source_identification.source_type;
    END_REPEAT;
WHERE
  WR1: (SIZEOF(esi) = SIZEOF(bag_to_set(esi))) AND (SIZEOF(iid) = SIZEOF(bag_to_set(iid))) AND (1 = SIZEOF(bag_to_set(itype)));
END_RULE;
(*

Argument definitions:

Land_physical_template : the set of all instances of Land_physical_template.

Formal propositions:

WR1: For all members of Land_physical_template associated with a member of External_source_identification in the role of pre_defined_classification_code, no more than one member of Land_physical_template in that population may be associated with the same source_id attribute of External_source_identification and each member of that population shall be associated with the same source_type attribute of External_source_identification.



*)
END_SCHEMA;  -- Layered_interconnect_simple_template_arm
(*


© ISO 2018 — All rights reserved