Announcement Irène Mykhailova · Nov 20, 2025

Hi Community,

With the General Availability of the 2025.3 release of InterSystems IRIS® data platform, InterSystems IRIS® for Health™, and HealthShare® Health Connect, we are now collecting your ideas for improvement. 

If the new release inspired you or highlighted opportunities to enhance the developer experience, please share your suggestions on the InterSystems Ideas Portal - every idea is reviewed by our product teams and can influence future releases.

2
0 153
Question Timothy Leavitt · Aug 26, 2025

What are best practices for JSON transformation in IRIS interoperability? This is for a non-healthcare use case, so any tools we happen to have around FHIR might not be available. The motivating use case is trimming down a verbose and needlessly complex REST API response to feed to an LLM - trying to reduce token usage and maybe get better results from less noisy data.

Specifically, I'm imagining matching based on JSONPath expressions and simplifying structures based on the inferred type of elements rather than a full schema. This might look replacing a deeply nested object value with a strin

10
0 210
Article José Pereira · Dec 9, 2025 11m read

The previous article introduced IrisOASTestGen, a tool designed to generate REST API test code for InterSystems IRIS based on OpenAPI 2.0 specifications. It demonstrated how to scaffold test cases using the default templates bundled with OpenAPI Generator.

This follow-up focuses on the next natural step: customizing the generated test code. By extending the code generation logic with Mustache templates, it becomes possible to express richer semantics, implement CRUD-aware tests, and create more meaningful test suites.

The example in this article will modify IrisOASTestGen to generate tests for









0
0 66
Question Marco Bruni · Nov 28, 2025

Hello!
I have the following XML document obtained through a string:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<MainDocument xmlns="urn:hl7-org:v3">
<realmCode code="IT"/>
<title>kjbkjkjbkjb</title>
<effectiveTime value="20090905150716"/>
[.....other tags.....]
<versionNumber value="1"/>
<component>
<body>mhvjhjkvhj</body>
<component>
<section>content</section>
<ID>5</ID>
<title>Certificato</title>
<text/>
<entry>
<Id>5</Id>
[...other tags...]
</entry>
<entry>
<Id>6</Id>
[...other tags...]
</entry>
</component>
</component>
</ClinicalDocument>
I would like to have a way to obtain only the content of the <en

7
0 104
Article Zhong Li · Dec 9, 2025 8m read

Keywords:  Vibe coding, Windsurf, IRIS, TIE

Why not?   "Vibe coding" is never about the vibe!

Has anyone not been trying "vibe coding" so far?

Even merely 3 years ago, if anyone asked

  • "Could I do IRIS implementation for NHS TIE in English or Spanish or just Chinese ?", or
  • "Can I just instruct TIE in English to build itself an e2e route, to pick up a PDF report then turn into ORU/MDM message and submit into the PAS ?", or
  • "Could we query IRIS database in English only, and build up dashboard or ad hoc report of my own by English instructions?"

you would probably have laughed, tried no




0
1 155
Article Dmitry Maslennikov · Dec 8, 2025 8m read

Modern SQL engines are enormously complex pieces of software. Even when they appear stable and mature, subtle bugs can hide in their optimizers, type systems, predicate evaluation, or execution layers. These bugs rarely announce themselves loudly. Instead, they quietly produce incorrect results, behave inconsistently, or fail abruptly under specific combinations of SQL constructs.

This is precisely why tools like SQLancer exist. SQLancer automatically generates SQL queries and uses logical “oracles” to detect when a database behaves incorrectly. It has revealed hundreds of real bugs in widely used systems such as MySQL, PostgreSQL, SQLite, and DuckDB.

With this in mind, I attempted to bring SQLancer to InterSystems IRIS, starting with the NOREC oracle — a powerful method for detecting optimizer correctness issues. The journey, however, uncovered not just potential SQL correctness problems, but also a surprising number of driver-level and server-level failures that prevented SQLancer from running at full strength.

This article summarizes why SQLancer is important, how the NOREC oracle works, and what unexpected findings appeared while testing IRIS.

3
1 122
Question Dmitrii Baranov · Dec 9, 2025

I need to connect IRIS to a third-party FHIR server which in turn is connected to Keycloak.

For machine-to-machine communications, client credentials grants should be used. I don't know why exactly but the FHIR server requires access tokens to contain the "openid" scope, otherwise it returns 401 (unauthorized).

If the access token returned by Keycloak contains that scope, IRIS complains about ""ERROR #8859: Unsupported response to access token request: OpenID Connect is not supported for password and client credentials grant type". The error is produced by the OAuth2.Response class, line 393

2
0 72
Announcement Olga Zavrazhnova · Dec 8, 2025

Let’s spotlight the brilliant authors and contributors of our November Article Bounty! 💙
Thank you to everyone who took part and shared their knowledge with the community.

A special shout-out goes to those who created brand-new articles and contributed their expertise — each received 5,000 points 🎉

@Zion Amsalem -- "Consuming REST-APIs for dummies (beginner-friendly)"
@Robert Cemper -- "Network Debugging for Beginners - 1"
@Iryna Mykhailova -- "Connecting C# to InterSystems IRIS via ODBC"
@Vachan C Rannore -- "My experience with APIs and POS integration."
@Padmaja Konduru -- "Production Terminal Commands"

1
1 74
Article Joan-Baptista Fabregas · Dec 8, 2025 4m read

One of the newest features of .Net core 10 with C# 14 is the file-based apps. This feature allows you to execute C# code in a simple .cs file without the need to create a solution, a project, or any of the related structure.

For example you can create a script.cs file using the notepad with the content: 

Console.WriteLine(“This is a script in c#.”);

Then in the command line or the terminal you execute the command:

dotnet run script.cs

There is plenty of information about this new feature of .net 10. To work with IRIS we can make use of the option to add NuGet package references directly i

0
0 70
Announcement Larry Finlayson · Dec 8, 2025

Managing InterSystems Servers – Virtual  January 5-9, 2026

  • Configure, manage, plan, and monitor system operations of InterSystems Data Platform technology
  • This 5-day course teaches system and database administrators how to manage InterSystems® Data Platform technology which powers all of our products.
  • Learn to install, configure and secure the data platform, configure for high availability and disaster recovery, and monitor the system.
  • Students also learn troubleshooting techniques.

SELF REGISTER HERE

0
0 51
Article Ashok Kumar T · Nov 10, 2025 2m read

FastJsonSchema: High-Performance JSON Validation in IRIS

Validating JSON data against JSON Schema is a common requirement for modern applications. FastJsonSchema brings this capability natively to InterSystems IRIS, combining speed, simplicity, and full schema compliance.

Unlike traditional validation approaches, FastJsonSchema generates native ObjectScript code from your JSON Schemas and compiles it directly to iris object code, enabling idiomatic performance without relying on external libraries or runtimes.

1
0 85
Article Pietro Di Leo · Dec 8, 2025 4m read

Hello Developers! 👋
I’m excited to introduce IRIS IO Utility, my submission for the InterSystems "Bringing Ideas to Reality" Contest 2025. This VS Code extension provides you an intuitive and powerful interface for importing and exporting data without leaving your IDE. The extension implements and expand this idea submitted on the Ideas Portal turning a common developer need into a real tool: seamless IO operations with any IRIS instance directly inside VS Code.









0
0 89
Question Maikel Fradziak · Dec 6, 2025

Hello, 

I am using Object Script with Phyton to import an Excel File. 

Please see the below code. Its works fine for all text and numeric Columns. But by importing a DATE formated column in Excel (birthdate) , Iam facing the below issue as result:

22@%SYS.Python

 

My question: How can i import date formated Excel Data in Object Script?

Thanks a lot in advance

Maikel

       Set tSC = $$$OK
        Set tData = ##class(%SYS.Python).Import("openpyxl")         Try 
        {
            /// Pfad zur Excel-Datei
            Set filePath = pInput.Filename
            $$$TRACE(

7
0 71
Question Julian Matthews · Dec 5, 2025

Hey everyone.

As part of an ongoing mission to track down orphaned HL7 Messages in our integration engine, I have been digging into our environment to track down the causes.

Having looked at various posts here (including one of my own) there are a few scenarios that can create orphaned messages resulting in excessive disk space usage. These scenarios are generally:

  1. Purging an environment with the option "Bodies Too" deselected
  2. Code creating/saving a Message but then not sending it
  3. BPL errors similar to 2, or a scenario where the response to a Call component is not set.

These are cert

2
0 87
Question Yuriy Borokhov · Apr 1, 2017

Hello,

Are there any utilities/api in HealthConnect 2016.2.1 that will allow conversion of XML virtual document to Json format? We were thinking to convert HL7 ADT message to XML via Ensemble DTL and then send it to another BP to convert to Json format for transmission via Web Services. To my understanding there isn't anyway to represent Json as a virtual object so it can be use for direct mapping of HL7 2.x message to Json via Ensemble DTL.

Thanks

Yuriy

6
0 2989
Question Matheus Augusto · Nov 25, 2025

In some cases, it's necessary to manipulate data from one namespace to another. For example, a routine in the "N1" namespace needs data from the "N2" namespace. In legacy systems (using only globals), it's common to make the global universal, but what about persistent classes? Is this type of globalization also possible?

In the same context, how could I make a persistent class global for all namespaces? The only way I know is by putting it in %SYS. For example, to build a class from the "N1" namespace in the "N2" namespace, I need to use the pipe or the ZN function, but this somewhat reduces

7
0 121
Announcement Anastasia Dyubaylo · Nov 6, 2025

Hi Developers,

Following the resounding success of last year's new contest, we decided to repeat it. Please welcome 

🏆 Bringing Ideas to Reality Contest 🏆

Submit an application that implements an idea from the InterSystems Ideas Portal that has status Community Opportunity or Future Consideration, created before the publication of this announcement, and requires doing the actual programming 😉

Duration: November 17 - December 7, 2025 December 14, 2025 (the submission period extended until December 7)

Prize pool: $12,000


24
0 661
Question Norman W. Freeman · Nov 5, 2025

The following regex is matching while I think it should not :

write$match("♥","\?") //print '1' (unexpected)

It should only match the '?' character. I think what happen is the ♥ character got converted to '?' (as it's not within regular ascii range) before being validated by the regex engine.

In fact, this give a clue about what happen : 

write$char($ascii("♥")) //print '?'

Is this an IRIS well known limitation, is there workarounds ? Should I report it to InterSystems ?

In my case, a way to detect non standard ascii code in a string will be good enough. I'm not sure if it's possible i

8
0 118
Announcement Evgeny Shvarov · Nov 17, 2025

Here are the technology bonuses for the InterSystems "Bringing Ideas to Reality" Contest 2025 that will give you extra points in the voting:

  • Developer Experience Idea implemented - 4
  • IRIS Vector Search usage -3
  • Embedded Python usage -3
  • InterSystems Interoperability - 3
  • InterSystems IRIS BI - 3
  • VSCode Plugin - 3
  • FHIR Tools - 3
  • Docker container usage -2 
  • ZPM Package Deployment - 2
  • Online Demo -2 
  • Find and report a bug - 2
  • Article on Developer Community - 2
  • The second article on Developer Community - 1
  • Video on YouTube - 3
  • YouTube Short - 1
  • First Time Contribution - 3

See the details below.<--break->

4
0 137
Announcement Anastasia Dyubaylo · Dec 6, 2025
Hello and welcome to the November 2025 Developer Community YouTube Recap.
InterSystems Ready 2025
By Benjamin De Boe, Thomas Dyar, Carmen Logue
By Bob Kuszewski, Benjamin De Boe
By Ben Spead, Hannah Sullivan, Dean Andrews, Victor Naroditskiy
By Amir Samary, Phillip Booth
By Reven Singh, Herman Bruwer, Sergei Shutov
 
0
0 52
Question Scott Roth · Jul 11, 2024

Could someone explain how and why a HL7 ACK be showing up as a Orphaned message when I run the following SQL...
 

SELECT HL7.ID,HL7.DocType,HL7.Envelope,HL7.Identifier,HL7.MessageTypeCategory,HL7.Name,HL7.OriginalDocId,HL7.ParentId, HL7.TimeCreated
FROM EnsLib_HL7.Message HL7
LEFTJOIN Ens.MessageHeader hdr
ON HL7.Id=hdr.MessageBodyId
WHERE hdr.MessageBodyId ISNULL

I am trying to find the problem code that is causing the Orphaned messages, and an ACK showing up seems kind of Odd. While we do have Archive IO/Trace on, and Index NOT OK's set why would they show up as Orphaned messages?

4
0 202
Question PRAVIN T · Dec 4, 2025

I’m facing an issue with a CSP-based web application.
The default.csp page loads correctly on both servers. However, when I try to open or submit the login.csp page on one server, it shows the error:

"INVALID ACTION"

The exact same codebase is deployed on another IRIS server, and it works there without any issues.

Summary of the issue:

  • default.csp → Loads successfully
  • login.csp → Fails with “INVALID ACTION” only on one server
  • No code changes between the two servers

Has anyone encountered this kind of scenario?
What configuration differences should I check between the two servers tha

11
0 128
Article David Hockenbroch · Dec 4, 2025 6m read

InterSystems IRIS provides extensive configurable security options, yet many developers primarily use roles and resources to secure entire tables or routines. Today, we will delve deeper. We can also secure individual columns and rows separately, but these two mechanisms operate very differently. Let's begin with the columns.

Column Security

For testing and demonstration, we will keep our table structure concise and straightforward. We have a table called "Person" in the USER namespace that contains an ID column, a date of birth column (DOB), first name, and last name. 

0
1 234
Question Scott Roth · Nov 6, 2024

There are a select few in the group that have been using Github as a Local Client push to a Repository setup in GitHub. Questions were brought up today about the security, and possible issues when it comes to data being pushed in this method.

Looking over code we have noticed that there is Histogram data within some of the class files that could be considered a security issue. Does anyone else have concerns with the Histogram data being within the class files pushed up to github?

2
0 168