===== Interface Definition Language (IDL) ===== [[ddsf:public:guidebook:06_append:glossary:start| Return to Glossary ]] The Interface Definition Language (IDL) specifies only the [[ddsf:public:guidebook:06_append:glossary:s:syntax|syntax]] used to define the data types and interfaces. It is normally used in connection with other specifications that further define how these types/interfaces are utilized in specific contexts and platforms: * Separate “language mapping” specifications define how the IDL-defined constructs map to specific [[ddsf:public:guidebook:06_append:glossary:p:programlang|programming languages]], such as, C/C++, Java, C#, etc. * Separate “[[ddsf:public:guidebook:06_append:glossary:s:serialize|serialization]]” specifications define how data objects and method invocations are serialized into a format suitable for network transmission. * Separate “[[ddsf:public:guidebook:06_append:glossary:m:midware|middleware]]” specifications, such as, [[ddsf:public:guidebook:06_append:glossary:d:data_distribution_service_dds]] or [[ddsf:public:guidebook:06_append:glossary:c:corba|CORBA]] leverage the IDL to define data-types, services, and interfaces. The description of IDL grammar uses a syntax notation that is similar to Extended Backus-Naur Format (EBNF). Source: [[ddsf:public:guidebook:06_append:01_family_of_standards:01_core:interface_definitions_language_idl| Interface Definition Language (IDL) ]]