Snowstorm Docker: SNOMED CT Browser error when using multiple national extensions (Solved)

Hi,

I have set up Snowstorm (version 10.10.1) locally using Docker. In this instance, I successfully imported multiple editions:

  • three International Editions

  • one German Edition

  • one Swiss Edition

The import was performed according to the official “Updating SNOMED and Extensions” guide, and all CodeSystems are correctly visible under /fhir/CodeSystem.

In addition, we would like to use the SNOMED CT Browser. However, we are encountering the following issue:

  • When only one national extension (German or Swiss Edition) is loaded alongside the International Editions, the browser works without any problems.

  • As soon as both national extensions (German and Swiss Edition) are imported at the same time, the browser no longer works:

    • either a blank (white) screen appears

    • or the error message: “Error while retrieving data from server…”

My questions are:

  1. Are there additional parameters that need to be set when importing multiple extensions?

  2. Are there any requirements or limitations regarding the simultaneous use of multiple extensions in the browser?

  3. Does a specific configuration (e.g., default CodeSystem, branch mapping, or versioning) need to be applied to ensure correct behavior?

Currently, I am using the following configuration:

  1. Create CodeSystem
{
  "shortName": "SNOMEDCT-DE",
  "branchPath": "MAIN/SNOMEDCT-DE",
  "dependantVersionEffectiveTime": 20251001
}

  1. Import Job
{
  "branchPath": "MAIN/SNOMEDCT-DE",
  "createCodeSystemVersion": true,
  "type": "SNAPSHOT"
}

Thank you very much for your support!
Tessa


{
“resourceType”: “Bundle”,
“id”: “145acbd2-c190-4c28-81db-0652f59e0eaf”,
“meta”: {
“lastUpdated”: “2026-04-27T06:20:58.968+00:00”
},
“type”: “searchset”,
“total”: 4,
“link”: [ {
“relation”: “self”,
“url”: “``http://idnlp01:8095/fhir/CodeSystem”
} ],
“entry”: [ {
“fullUrl”: “``http://idnlp01:8095/fhir/CodeSystem/sct_900000000000207008_20240501”``,
“resource”: {
“resourceType”: “CodeSystem”,
“id”: “sct_900000000000207008_20240501”,
“url”: “``http://snomed.info/sct”``,
“version”: “``http://snomed.info/sct/900000000000207008/version/20240501”``,
“name”: “SNOMED_CT”,
“title”: “SNOMED CT release 2024-05-01”,
“status”: “active”,
“date”: “2024-05-01T00:00:00+00:00”,
“publisher”: “SNOMED International”,
“hierarchyMeaning”: “is-a”,
“compositional”: true,
“content”: “complete”
}
}, {
“fullUrl”: “``http://idnlp01:8095/fhir/CodeSystem/sct_2011000195101_20240607”``,
“resource”: {
“resourceType”: “CodeSystem”,
“id”: “sct_2011000195101_20240607”,
“url”: “``http://snomed.info/sct”``,
“version”: “``http://snomed.info/sct/2011000195101/version/20240607”``,
“name”: “SNOMED_CT”,
“title”: “SNOMED CT release 2024-06-07”,
“status”: “active”,
“date”: “2024-06-07T00:00:00+00:00”,
“publisher”: “SNOMED International”,
“hierarchyMeaning”: “is-a”,
“compositional”: true,
“content”: “complete”
}
}, {
“fullUrl”: “``http://idnlp01:8095/fhir/CodeSystem/sct_900000000000207008_20251001”``,
“resource”: {
“resourceType”: “CodeSystem”,
“id”: “sct_900000000000207008_20251001”,
“url”: “``http://snomed.info/sct”``,
“version”: “``http://snomed.info/sct/900000000000207008/version/20251001”``,
“name”: “SNOMED_CT”,
“title”: “SNOMED CT release 2025-10-01”,
“status”: “active”,
“date”: “2025-10-01T00:00:00+00:00”,
“publisher”: “SNOMED International”,
“hierarchyMeaning”: “is-a”,
“compositional”: true,
“content”: “complete”
}
}, {
“fullUrl”: “``http://idnlp01:8095/fhir/CodeSystem/sct_11000274103_20251115”``,
“resource”: {
“resourceType”: “CodeSystem”,
“id”: “sct_11000274103_20251115”,
“url”: “``http://snomed.info/sct”``,
“version”: “``http://snomed.info/sct/11000274103/version/20251115”``,
“name”: “SNOMED_CT”,
“title”: “SNOMED CT release 2025-11-15”,
“status”: “active”,
“date”: “2025-11-15T00:00:00+00:00”,
“publisher”: “SNOMED International”,
“hierarchyMeaning”: “is-a”,
“compositional”: true,
“content”: “complete”
}
} ]
}

Hi Tessa Ohlsen, welcome to SNOMED Forums! :waving_hand:t2:

Thank you for providing details of your setup. All the information you provided looks correct.

To answer your questions:

1. There are no additional import parameters needed.

2. There is no restriction to the number of extensions or releases you can host simultaneously with Snowstorm as long as you have enough disk space to store them and memory for Elasticsearch to give good performance.

3. There is no specific configuration needed to display extensions in the browser. But answering your specific configuration questions:

  • It’s not possible to choose the default CodeSystem with Snowstorm, this is always the CodeSystem on the MAIN branch, this may change in the future.

  • The branch mapping between the FHIR URI and the Snowstorm branch happens via the “SNOMEDCT-X” style naming and the main configuration file. All your FHIR CodeSystems have a good URI which shows your branch mapping is all correct.

  • Also each FHIR CodeSystem only appears once a SNOMED CT import has completed with versioning.

Next steps
In the SNOMED specific API what does your codesystem listing look like? (http://localhost:8080/codesystems).

That is the endpoint the browser uses to list available editions.

If that endpoint does not work please share any errors you get in the Snowstorm or Elasticsearch logs.

Hello Kai,

please find output of /codesystem below, which looks good to me at first glance.

I also noticed the following error in the browser console on the frontend. It might be helpful for further investigation:

  1. console output for one national edition (looks correct)
    i18n_international_tools = Additional Information (index):2195
    i18n_daily_build = Daily Build (index):2195
    i18n_international_tools = Additional Information (index):2195 i18n_daily_build = Daily Build

  2. console output for twonational edition
    Uncaught TypeError: Cannot read properties of undefined (reading ‘localeCompare’)
    at (index):296:39
    at Array.sort ()
    at Object. ((index):295:35)
    at l (snomed-interaction-components.min.js?version=build_version:2:27175)
    at Object.fireWith [as resolveWith] (snomed-interaction-components.min.js?version=build_version:2:27944)
    at r (snomed-interaction-components.min.js?version=build_version:2:76602)
    at XMLHttpRequest. (snomed-interaction-components.min.js?version=build_version:2:78845


Output /codesystem:

{

  "items" : [ {

    "shortName" : "SNOMEDCT",

    "branchPath" : "MAIN",

    "dailyBuildAvailable" : false,

    "latestVersion" : {

      "shortName" : "SNOMEDCT",

      "importDate" : "2026-04-27T09:06:38.899Z",

      "parentBranchPath" : "MAIN",

      "effectiveDate" : 20251001,

      "version" : "2025-10-01",

      "description" : "SNOMEDCT 20251001 import.",

      "branchPath" : "MAIN/2025-10-01"

    },

    "languages" : {

      "en" : "English"

    },

    "modules" : [ {

      "conceptId" : "900000000000012004",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20020131",

      "fsn" : {

        "term" : "SNOMED CT model component module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT model component",

        "lang" : "en"

      },

      "id" : "900000000000012004",

      "idAndFsnTerm" : "900000000000012004 | SNOMED CT model component module (core metadata concept) |"

    }, {

      "conceptId" : "449080006",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20110731",

      "fsn" : {

        "term" : "SNOMED CT to ICD-10 rule-based mapping module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT to ICD-10 rule-based mapping module",

        "lang" : "en"

      },

      "id" : "449080006",

      "idAndFsnTerm" : "449080006 | SNOMED CT to ICD-10 rule-based mapping module (core metadata concept) |"

    }, {

      "conceptId" : "900000000000207008",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20020131",

      "fsn" : {

        "term" : "SNOMED CT core module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT core",

        "lang" : "en"

      },

      "id" : "900000000000207008",

      "idAndFsnTerm" : "900000000000207008 | SNOMED CT core module (core metadata concept) |"

    } ],

    "userRoles" : [ ]

  }, {

    "shortName" : "SNOMEDCT-CH",

    "branchPath" : "MAIN/SNOMEDCT-CH",

    "dependantVersionEffectiveTime" : 20240501,

    "dailyBuildAvailable" : false,

    "latestVersion" : {

      "shortName" : "SNOMEDCT-CH",

      "importDate" : "2026-04-27T09:15:37.474Z",

      "parentBranchPath" : "MAIN/SNOMEDCT-CH",

      "effectiveDate" : 20240607,

      "version" : "2024-06-07",

      "description" : "SNOMEDCT-CH 20240607 import.",

      "dependantVersionEffectiveTime" : 20240501,

      "branchPath" : "MAIN/SNOMEDCT-CH/2024-06-07"

    },

    "languages" : {

      "fr" : "French",

      "de" : "German",

      "it" : "Italian",

      "en" : "English"

    },

    "modules" : [ {

      "conceptId" : "900000000000012004",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20020131",

      "fsn" : {

        "term" : "SNOMED CT model component module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT model component",

        "lang" : "en"

      },

      "id" : "900000000000012004",

      "idAndFsnTerm" : "900000000000012004 | SNOMED CT model component module (core metadata concept) |"

    }, {

      "conceptId" : "2011000195101",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "2011000195101",

      "effectiveTime" : "20230607",

      "fsn" : {

        "term" : "SNOMED CT Switzerland NRC maintained Module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT Switzerland NRC maintained Module",

        "lang" : "fr"

      },

      "id" : "2011000195101",

      "idAndFsnTerm" : "2011000195101 | SNOMED CT Switzerland NRC maintained Module (core metadata concept) |"

    }, {

      "conceptId" : "449080006",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20110731",

      "fsn" : {

        "term" : "SNOMED CT to ICD-10 rule-based mapping module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT to ICD-10 rule-based mapping module",

        "lang" : "en"

      },

      "id" : "449080006",

      "idAndFsnTerm" : "449080006 | SNOMED CT to ICD-10 rule-based mapping module (core metadata concept) |"

    }, {

      "conceptId" : "900000000000207008",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20020131",

      "fsn" : {

        "term" : "SNOMED CT core module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT core",

        "lang" : "en"

      },

      "id" : "900000000000207008",

      "idAndFsnTerm" : "900000000000207008 | SNOMED CT core module (core metadata concept) |"

    } ],

    "userRoles" : [ ]

  }, {

    "shortName" : "SNOMEDCT-DE",

    "branchPath" : "MAIN/SNOMEDCT-DE",

    "dependantVersionEffectiveTime" : 20251001,

    "dailyBuildAvailable" : false,

    "latestVersion" : {

      "shortName" : "SNOMEDCT-DE",

      "importDate" : "2026-04-27T09:11:16.702Z",

      "parentBranchPath" : "MAIN/SNOMEDCT-DE",

      "effectiveDate" : 20251115,

      "version" : "2025-11-15",

      "description" : "SNOMEDCT-DE 20251115 import.",

      "dependantVersionEffectiveTime" : 20251001,

      "branchPath" : "MAIN/SNOMEDCT-DE/2025-11-15"

    },

    "languages" : {

      "de" : "German",

      "en" : "English"

    },

    "modules" : [ {

      "conceptId" : "900000000000012004",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20020131",

      "fsn" : {

        "term" : "SNOMED CT model component module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT model component",

        "lang" : "en"

      },

      "id" : "900000000000012004",

      "idAndFsnTerm" : "900000000000012004 | SNOMED CT model component module (core metadata concept) |"

    }, {

      "conceptId" : "11000274103",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "11000274103",

      "effectiveTime" : "20230331",

      "fsn" : {

        "term" : "Germany National Extension module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "Germany National Extension module",

        "lang" : "en"

      },

      "id" : "11000274103",

      "idAndFsnTerm" : "11000274103 | Germany National Extension module (core metadata concept) |"

    }, {

      "conceptId" : "449080006",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20110731",

      "fsn" : {

        "term" : "SNOMED CT to ICD-10 rule-based mapping module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT to ICD-10 rule-based mapping module",

        "lang" : "en"

      },

      "id" : "449080006",

      "idAndFsnTerm" : "449080006 | SNOMED CT to ICD-10 rule-based mapping module (core metadata concept) |"

    }, {

      "conceptId" : "900000000000207008",

      "active" : true,

      "definitionStatus" : "PRIMITIVE",

      "moduleId" : "900000000000012004",

      "effectiveTime" : "20020131",

      "fsn" : {

        "term" : "SNOMED CT core module (core metadata concept)",

        "lang" : "en"

      },

      "pt" : {

        "term" : "SNOMED CT core",

        "lang" : "en"

      },

      "id" : "900000000000207008",

      "idAndFsnTerm" : "900000000000207008 | SNOMED CT core module (core metadata concept) |"

    } ],

    "userRoles" : [ ]

  } ],

  "total" : 3,

  "limit" : 3,

  "offset" : 0

}

The web browser console error you shared is very relevant. This error is likely caused by no “name” being set on the codesystems listed by Snowstorm. Your /codesystem listing is consistent with this hypothesis.

The name of the SNOMED CT codesystem is used in the Browser UI but also in the code when sorting entries. The name can be set when creating the codesystem via POST /codesystem but if you have created them already the name can be set using PUT…

To set the name on an existing codesystem use PUT /codesystems/{shortName} with a body like:

{
  "name": "Swiss Edition",
  "shortName": "SNOMEDCT-CH",
  "branchPath": "MAIN/SNOMEDCT-CH",
  "countryCode": "ch",
  "defaultLanguageCode": "en",
  "defaultLanguageReferenceSets": [
    "2021000195106",
    "2031000195108",
    "2041000195100",
    "900000000000509007"
  ],
  "dailyBuildAvailable": false
}

It looks like this is the config you were missing to get the browser working correctly. Ideally the browser would be more robust or at least give you a meaningful error.
I hope that helps.

Thank you very much! Everything is working now. Thanks again for the quick help! :slight_smile:

1 Like