zib-fhir-generator
Generates ViewDefinition, StructureDefinition (must-support), and markdown intro files from a ZIB FHIR profile URL or canonical (e.g. zib-Alert). Use this when asked to create technical artifacts for Zorginformatiebouwstenen (ZIBs) in FHIR.
Install
mkdir -p .claude/skills/zib-fhir-generator && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/14339" && unzip -o skill.zip -d .claude/skills/zib-fhir-generator && rm skill.zipInstalls to .claude/skills/zib-fhir-generator
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Generates ViewDefinition, StructureDefinition (must-support), and markdown intro files from a ZIB FHIR profile URL or canonical (e.g. zib-Alert). Use this when asked to create technical artifacts for Zorginformatiebouwstenen (ZIBs) in FHIR.About this skill
ZIB FHIR Generator
Overview
This skill automates the creation of Zorgviewer-specific FHIR artifacts based on Nictiz ZIB profiles. It ensures consistency across ViewDefinitions, StructureDefinitions with Must-Support flags, and documentation intros.
Constraints
- Only search for definitions on zibs.nl and simplifier.net.
- Use FHIR STU3 as the base version for all generated artifacts and FHIR R4 when a STU3 version is not available.
- Generate only the templated files for the specified ZIB, without creating or changing additional includes or unrelated artifacts.
- Use only the codes defined in the ZIB profiles for mapping.
- Ensure that query code parameters are included in the ViewDefinition's
whereclause for accurate data retrieval. - Retrieve example instances from simplifier.net and save them in
input/examples/<ZibName>-Nictiz.jsonfor reference.
Workflow
When given a ZIB FHIR profile (e.g., http://nictiz.nl/fhir/StructureDefinition/zib-Alert):
- Identify the ZIB and Base Resource: Determine the ZIB name (e.g., Alert) and the underlying FHIR resource type (e.g., Flag).
- Map ZIB Elements to FHIR Paths: Identify the key elements in the ZIB and their corresponding FHIR paths in the Nictiz profile.
- Generate Artifacts:
- StructureDefinition: Create a JSON file that inherits from the Nictiz profile and adds
mustSupport: trueto the key ZIB elements. - ViewDefinition: Create a JSON file using the SQL-on-FHIR
ViewDefinitionresource, mapping FHIR paths to ZIB elements for the Zorgviewer UI. - Markdown Intro: Create a markdown file following the standard template with links to the ZIB wiki and the ViewDefinition.
- StructureDefinition: Create a JSON file that inherits from the Nictiz profile and adds
Artifact Guidelines
Refer to references/templates.md for the exact structure and placeholders for each file.
Mapping Principles
- StructureDefinition: Use
derivation: constraintand setmustSupport: trueonly for elements that are essential for the Zorgviewer display. - ViewDefinition:
- Always include the "Bron" (Source) column as the first column.
- Use
iif(exists(...), ...)or|(choice) for flexible path mapping (e.g.,code.text | code.coding[0].display). - Include ZIB element names in the
tagfield for traceability.
File Naming Convention
input/profiles/StructureDefinition-<ZibName>.jsoninput/images/ViewDefinition-<ZibName>.jsoninput/intro-notes/StructureDefinition-<ZibName>-intro.md
Where <ZibName> is the name of the Zorginformatiebouwsteen (e.g., Alert, Mobiliteit, Probleem).
Example: zib-Alert
User Request: "Maak de bestanden voor zib-Alert"
Output Files:
input/profiles/StructureDefinition-Alert.jsoninput/images/ViewDefinition-Alert.jsoninput/intro-notes/StructureDefinition-Alert-intro.md