Overview - ISO/IEC 15851:1999 (Open MUMPS Interconnect / OMI)
ISO/IEC 15851:1999 defines the Open MUMPS Interconnect (OMI) communication protocol for network access to MUMPS databases. The standard specifies how remote clients and servers perform basic operations on the sparse, tree‑structured MUMPS database using a connection‑oriented, client‑server model. OMI covers session establishment, message formats, request/response transactions and the MUMPS database operations that must be supported for interoperable network access.
Key topics and technical requirements
- Protocol scope: Network access to MUMPS global variables and the basic MUMPS database operations (Set, Get, Kill, Merge, $Order, $Query, Lock/Unlock, Set $Piece/Extract, etc.).
- Client-server and sessions: Connection‑oriented sessions between exactly one agent and one server; sessions are asymmetric and must preserve transaction order. Implementations may multiplex multiple clients via an agent.
- OSI layers: OMI provides services at the OSI session and presentation layers (levels 5 and 6) and relies on an OSI level‑4 virtual circuit for reliable ordered message delivery.
- Message format: Messages are strings of 8‑bit characters (codes 0–255). The standard defines request/response headers, field formats and the form of global references.
- Security and robustness: Topics include privacy, data integrity, authentication, identification and authorization. The standard also addresses exception handling, session establishment errors and virtual circuit failures.
- Transactions and locking: Defines transaction semantics for OMI messages (one request + related response) and supports complex locks, lock/unlock operations and transaction coordination.
- Portability and extensions: Guidance on implementation limits, portability, OMI version negotiation, replication and standard extensions.
- Conformance and guidance: Normative and informative annexes cover implementation examples, compliance verification, network management and protocol stack considerations.
- Software implementers building MUMPS database servers or MUMPS-compatible clients that require standardized remote access.
- Integration teams needing interoperability between different MUMPS implementations or allowing non‑MUMPS applications to access a MUMPS database.
- System architects designing distributed systems that expose MUMPS data across networked nodes or for inter‑task communication on a single host.
Related standards
- ANSI/MDC X11.1 (MUMPS language/database definitions) - normative reference for database operations.
- ANSI X3.4‑1990 (character code / ASCII) and ISO/IEC 8859‑1:1998 (8‑bit character set) - referenced for character handling.
Keywords: ISO/IEC 15851, Open MUMPS Interconnect, OMI, MUMPS protocol, communication protocol, MUMPS database, client‑server, OSI session layer, network access to MUMPS.