Skip to content

Fusion Metadata Registry Knowledge Base

Fusion Metadata Registry (FMR) is a free to use structural metadata registry for SDMX supporting SDMX 2.0, 2.1 and 3.0, and EDI.

Planning needed when upgrading to 12.5.0 or later

FMR 12.5.0 improves performance when loading and querying large structures while keeping platform memory demand modest.

To achieve this, irreversible changes are required to FMR's database schema.

The changes are made automatically when FMR 12.5.0 or later is first deployed on a 12.4.2 or earlier database. However, testing the migration first in a non-production environment using a copy of the production database is strongly recommended. Take a database backup before migrating production services.
The 12.5.x migration guide explains more.

Read the FMR 11 to 12 migration guide when upgrading from FMR 11.

A BIS Open Tech initiative

FMR is owned by the Bank for International Settlements and published under the BIS Open Tech initiative.

The BIS Open Tech is a platform for sharing statistical and financial software as public goods, by promoting international cooperation and coordination. These software tools are developed according to international best practices and standards and can be reused and further developed in a wide variety of environments.

FMR components

  • Fusion Metadata Registry


    The foundational SDMX metadata registry coupling high-performance structural and referential metadata storage with a graphical user interface for exploring, authoring and maintenance.

    Download

    Docker image / Docker Compose

    Changelog

  • Fusion Workbench


    FMR derivative providing a graphical user interface for exploring, authoring and maintaining SDMX structural metadata on other platforms like the OECD's .Stat Suite and structure services on the SGDS.

    Learn more

    Docker image

    Changelog

  • Fusion Metadata Service


    A simple, secure and scalable app designed for institutions to publicly disseminate SDMX structural metadata as an SDMX-compliant structure query REST API.

    Pair with Fusion Workbench to allow users to interactively explore and retrieve structures.

    Learn more

    Docker image

  • Data Microservice


    A lightweight, scalable service for validating, converting and mapping SDMX data, using structural metadata retrieved from FMR.

    Run data processing workloads separately from the registry and scale them on demand.

    Learn more

    Docker image

  • sdmx-core


    A comprehensive Java library for developing high-performance SDMX applications.

    sdmx-core is the latest evolution of the seminal SdmxSource library, reengineered and updated to support SDMX 3.+.

    Maven Central

    Documentation

Quick start using Docker

  1. Get Docker Desktop
  2. At the operating system command prompt, run:
    docker run --name fmr -p 8080:8080 sdmxio/fmr-mysql:latest
    
  3. Browse http://localhost:8080
  4. Log in: username root, password password
  1. Get Docker Desktop
  2. At the operating system command prompt, run:
    docker run --name fwb -p 8080:8080 sdmxio/fwb:2.6.0
    
  3. Browse http://localhost:8080

Start by assembling some SDMX structural metadata to publish into a zip file called 'structures.zip', for example

curl 'https://registry.sdmx.io/sdmx/v2/structure/*/*/*/*?format=fusion-json' > structures.json && zip structures.zip structures.json
curl.exe "https://registry.sdmx.io/sdmx/v2/structure/*/*/*/*?format=fusion-json" -o structures.json; if ($?) { Compress-Archive -Path structures.json -DestinationPath structures.zip }
curl "https://registry.sdmx.io/sdmx/v2/structure/*/*/*/*?format=fusion-json" -o structures.json && powershell -Command "Compress-Archive -Path structures.json -DestinationPath structures.zip"

Next, run the Fusion Metadata Service to publish the structures on an SDMX-compliant REST API:

  1. Get Docker Desktop
  2. At the operating system command prompt, run:
     docker run --rm -p8080:8080 --name fms -v ./:/fms/content sdmxio/fms:latest
    
  3. Browse http://localhost:8080/sdmx/v2/structure?detail=allstubs - you should see an SDMX XML message listing all the structures as stubs

Start an FMR instance (see the Fusion Metadata Registry tab) containing the structures for the data to process, then:

  1. Get Docker Desktop
  2. At the operating system command prompt, run:
    docker run --rm -p 8000:8000 --name dms -e APP_FMR=http://host.docker.internal:8080 sdmxio/microservice-data:latest
    
  3. Browse http://localhost:8000/actuator/health/readiness - you should see {"status":"UP"}
  4. POST data to http://localhost:8000/validate or http://localhost:8000/transform - see web services