Is DMIS Part 2 a standard or an application programming interface (API) definition?
Both: DMIS Part 2 is a standard interface definition. In a nutshell, DMIS Part 2 establishes a standard interface API by which various applications can interact with a CMM or other DME using an object-oriented programming approach. The API is derived directly from DMIS – Part 1 commands have been mapped either to DMIS Part 2 objects (eg. feature and carriage definitions), or to methods on those objects (eg. machine motion). The key here is that DMIS Part 2 defines a standard INTERFACE; it does not attempt to prescribe an IMPLEMENTATION architecture. For instance, FeatAct::get_comp_points() requires the DME to return the compensated data points for a feature, unless point buffering (PTBUFF) was off. How the implementation performs this is not of interest to DMIS Part 2 – the DME may store all of the compensated data points in memory, it may cause a recalculation of the data points from the raw points at the time of the request, or it could retrieve these points from a disk file. All tha