Overview Schemas Index

AP210_ELECTRONIC_ASSEMBLY_INTERCONNECT_AND_PACKAGING_DESIGN_MIM (jsdai.SAp210_electronic_assembly_interconnect_and_packaging_design_mim)


RULE cartesian_coordinate_system_constraint FOR (global_unit_assigned_context, geometric_representation_context);
LOCAL
   guac_inst : SET OF global_unit_assigned_context :=
               QUERY ( guac <* global_unit_assigned_context |
             ('GEOMETRY_SCHEMA.' +
              'GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF (guac)));
END_LOCAL;
WHERE
          wr1: SIZEOF (QUERY (guac <* guac_inst |
        NOT (SIZEOF (guac.units) <= 3))) = 0;
          wr2: SIZEOF (QUERY (guac <* guac_inst | (NOT (
        (SIZEOF (QUERY (u <* guac.units |
        ('MEASURE_SCHEMA.LENGTH_UNIT'
        IN  TYPEOF  (u)))) = 1)
        AND
        (SIZEOF (QUERY (u <* guac.units |
     ('MEASURE_SCHEMA.' +
         'PLANE_ANGLE_UNIT'
        IN  TYPEOF  (u)))) = 1)
        AND
        (SIZEOF (QUERY (u <* guac.units |
    ('MEASURE_SCHEMA.' +
         'SOLID_ANGLE_UNIT'
        IN TYPEOF (u)) )) <= 1)
        )))) = 0;
          wr3: SIZEOF( QUERY( grc <* guac_inst |
        NOT( (grc.coordinate_space_dimension = 2) OR
        (grc.coordinate_space_dimension = 3)))) = 0;
          wr4: SIZEOF (QUERY (guac <* guac_inst |
        NOT (SIZEOF (QUERY (u <* guac.units |NOT(
    NOT((
     'MEASURE_SCHEMA.' +
     'PLANE_ANGLE_UNIT' IN  TYPEOF(u)) AND
    ('MEASURE_SCHEMA.' +
     'CONVERSION_BASED_UNIT' IN  TYPEOF(u)) AND
     (u\conversion_based_unit.name = 'degree'))
   OR
       ((abs(u\conversion_based_unit.
           conversion_factor\measure_with_unit.value_component -
               0.0174532925) <= 0.001) AND
        ('MEASURE_SCHEMA.' +
         'PLANE_ANGLE_MEASURE_WITH_UNIT'
        IN TYPEOF(u\conversion_based_unit.conversion_factor)))
   ))) = 0)
   )) = 0;
END_RULE; -- cartesian_coordinate_system_constraint

public class RCartesian_coordinate_system_constraint
          public int rWr4(SdaiContext _context)
          public int rWr3(SdaiContext _context)
          public int rWr2(SdaiContext _context)
          public int rWr1(SdaiContext _context)
          public int run(SdaiContext _context, A_string violations)