Все текущие реализации языка MUMPS имеют возможность указывать программы MUMPS, которые отвечают на соединение TCP / IP. Собственная база данных MUMPS структурирована в виде иерархии упорядоченных пар многоключей и значений, по сути, является расширенным набором парадигмы NoSQL.
KB / SQL - это группа программ, которые отвечают на запросы SQL / ODBC, переводят их в эти «глобальные» запросы данных MUMPS, извлекают и объединяют результаты из MUMPS, а затем отправляют данные обратно в форме, в которой SQL / Протокол ODBC ожидает.
Если у вас есть разрешения / полномочия безопасности для вашей реализации, которые позволяют вам создавать и запускать программы MUMPS (называемые «подпрограммами»), то вы можете ответить на любой протокол, который вы пожелаете от этих программ. Системы MUMPS могут выдавать текстовые или двоичные результаты на порт TCP / IP или файл операционной системы хоста. Многие поставщики прямо запрещают вам делать это в своих контрактах для предоставления медицинских и финансовых решений.
Насколько мне известно, синтаксис LINQ является проприетарным продуктом Microsoft, хотя, безусловно, существуют LINQ-подобные проекты с открытым исходным кодом. Я не видел никакого формального определения линейного протокола для LINQ, но если он есть, можно написать подпрограмму MUMPS для связи с использованием этого протокола. Однако это должно было бы сделать что-то похожее на KB / SQL, поскольку ни синтаксис LINQ, ни синтаксис SQL не очень близки к собственному синтаксису MUMPS.
Механизм структурирования и хранения данных MUMPS можно механически преобразовать в синтаксис XML. Это может потребовать значительных усилий, поскольку маловероятно, что поставщик вашей системы предоставит DTD, определенный для этого механически созданного синтаксиса XML, и вам все равно придется иметь дело с закодированными значениями и ссылками, которые хранятся в системе на основе MUMPS. в необработанном виде.