This page is for developers who want to go more into the details about the internal architecture of the EDMstandaloneClient.
The figure to the left shows the main modules of the EDMsdk. In the following, we will give a brief description of each module. When drawing system diagrams for EDMsix, a simplified block is used to represent the EDMstandaloneClient.
The EDMremoteInterface is represented by the four greyed gates. TCP, HTTP, LOCAL_DB and LOCAL_CONTEXT
EDMInterface Language Bindings
The EDMInterface Language Bindings are implemented with the EDMinterface and EDMremoteInterface APIs. The following language bindings are available; C, C++, Java, VisualBasic and .NET
EDMInterface API
This is the EDMInterface API used for EDMstandaloneClients. The API is written in C, and all the EDMInterface API function signatures are declared in the sdai.h header file. The EDMInterface API requires an EDMsdk license. Some of these EDMInterface API functions are only available when activated by your license key. E.g, you need to have the EDMsdk Advanced to compile EDMmethod schemas and the licensed extension module EDMmodelChecker is required to run global rule validations on data sets.
EDMremoteInterface API
The EDMremoteInterface API is available without an EDMsdk license. EDMthinClient applications must use this API to access the TCP and HTTP communication ports. All EDMremoteInterface API functions take the Server Context input parameter to specify the information required to connect to an EDMsixServer.
The two ports LOCAL_CONTEXT and LOCAL_DB are only available if you have an EDMsdk license on your system. It is these gates that make it possible to write EDMstandaloneClient applications with the EDMremoteInterface API. The two gates loop every call back to the local EDMdatabase that is opened by the EDMstandaloneClient
EDMSYS
EDMdatabase