Application module: Support resource ISO/TS 10303-1800:2014-02(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 ARM type definitions
   4.2 ARM function definitions
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing

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

(*
ISO TC184/SC4/WG12 N8059 - ISO/TS 10303-1800 Support resource - EXPRESS ARM
Supersedes ISO TC184/SC4/WG12 N7472
*)



SCHEMA Support_resource_arm;


TYPE identifier = STRING;
END_TYPE;

TYPE label = STRING;
END_TYPE;

TYPE text = STRING;
END_TYPE;

FUNCTION bag_to_set
 (the_bag : BAG[0:?] OF GENERIC : intype) : SET[0:?] OF GENERIC : intype;
LOCAL the_set : SET OF GENERIC : intype := [];
  i : INTEGER;
END_LOCAL;
  IF SIZEOF(the_bag)> 0 THEN 
  	REPEAT i := 1 TO HIINDEX(the_bag);
      the_set := the_set + the_bag[i];
    END_REPEAT;
  END_IF;
  RETURN(the_set);
END_FUNCTION;

FUNCTION type_check_function
 (the_type : GENERIC; sub_names : SET[0:?] OF STRING; criterion : INTEGER) : LOGICAL;
IF((NOT EXISTS(the_type)) OR (SIZEOF(sub_names)= 0))
  THEN 
    RETURN (UNKNOWN);
  ELSE 
    CASE criterion OF 
      0: RETURN (SIZEOF(sub_names * TYPEOF(the_type))> 0);
      1: RETURN (SIZEOF(sub_names * TYPEOF(the_type))= 0);
      2: RETURN (SIZEOF(sub_names * TYPEOF(the_type))= 1);
      3: RETURN(SIZEOF(sub_names * TYPEOF(the_type))<= 1); 
      OTHERWISE : RETURN (UNKNOWN);
    END_CASE;
  END_IF;
END_FUNCTION;

END_SCHEMA;  -- Support_resource_arm


© ISO 2014 — All rights reserved