# SPDX-FileCopyrightText: 2025-2026 Bram Wesselo # SPDX-FileCopyrightText: 2025-2026 Rein Krul # SPDX-FileCopyrightText: 2025-2026 Roland Groen # SPDX-FileCopyrightText: 2025-2026 Steven van der Vegt # # SPDX-License-Identifier: EUPL-1.2 # ╭─────────────────────────Commonly Used ImplementationGuide Properties───────────────────────────╮ # │ The properties below are used to create the ImplementationGuide resource. The most commonly │ # │ used properties are included. For a list of all supported properties and their functions, │ # │ see: https://fshschool.org/docs/sushi/configuration/. │ # ╰────────────────────────────────────────────────────────────────────────────────────────────────╯ id: fhir.nl.gf canonical: http://nuts-foundation.github.io/nl-generic-functions-ig url: http://nuts-foundation.github.io/nl-generic-functions-ig/ImplementationGuide/fhir.nl.gf name: NlGenericFunctionsIG title: Netherlands - Generic Functions for data exchange Implementation Guide language: en-US # description: Example Implementation Guide for getting started with SUSHI status: draft # draft | active | retired | unknown version: 0.3.0 fhirVersion: 4.0.1 # https://www.hl7.org/fhir/valueset-FHIR-version.html copyrightYear: 2025+ releaseLabel: ci-build # ci-build | draft | qa-preview | ballot | trial-use | release | update | normative+trial-use license: EUPL-1.2 # https://www.hl7.org/fhir/valueset-spdx-license.html jurisdiction: urn:iso:std:iso:3166#NL "Netherlands" # https://www.hl7.org/fhir/valueset-jurisdiction.html publisher: name: Stichting Nuts url: https://www.nuts.nl # email: test@example.org # The dependencies property corresponds to IG.dependsOn. The key is the # package id and the value is the version (or dev/current). For advanced # use cases, the value can be an object with keys for id, uri, and version. dependencies: nictiz.fhir.nl.r4.nl-core: 0.12.0-beta.4 nictiz.fhir.nl.r4.zib2020: 0.12.0-beta.4 # hl7.fhir.eu.base: 0.1.0-ballot # Depending on discussion with Nictiz if we want to base our profiles on this or not # # # The pages property corresponds to IG.definition.page. SUSHI can # auto-generate the page list, but if the author includes pages in # this file, it is assumed that the author will fully manage the # pages section and SUSHI will not generate any page entries. # The page file name is used as the key. If title is not provided, # then the title will be generated from the file name. If a # generation value is not provided, it will be inferred from the # file name extension. Any subproperties that are valid filenames # with supported extensions (e.g., .md/.xml) will be treated as # sub-pages. # # pages: # index.md: # title: Example Home # implementation.xml: # examples.xml: # title: Examples Overview # simpleExamples.xml: # complexExamples.xml: pages: index.md: title: Home care-services.md: title: Care Services Directory extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: trial-use routing.md: title: Routing extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft localization.md: title: Localization extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft consent.md: title: Consent extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft identification.md: title: Identification extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft authentication.md: title: Authentication extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft GFI-001.md: title: Request key material [GFI-001] generation: markdown GFI-002.md: title: Issue Claims [GFI-002] generation: markdown GFI-003.md: title: Request Revocation status [GFI-003] generation: markdown GFI-004.md: title: Request Access Token [GFI-004] generation: markdown GFI-005.md: title: Authenticated Interaction [GFI-005] generation: markdown GFI-006.md: title: Token introspection [GFI-006] generation: markdown authorization.md: title: Authorization extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft credential-catalog.md: title: Credential Catalog extension: - url: http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status valueCode: draft credential-X509Credential.md: title: X509Credential generation: markdown credential-HealthcareProviderRoleTypeCredential.md: title: HealthcareProviderRoleTypeCredential generation: markdown credential-DeziUserCredential.md: title: DeziUserCredential generation: markdown history.md: title: History # usecase-enrollment.md: # title: Use cases - Enroll patient in home monitoring # usecase-view-all-data.md: # title: Use cases - Get data for home care # usecase-nursing-handoff.md: # title: Use cases - How execute a nursing referral # implementation.xml: # examples.xml: # title: Examples Overview # simpleExamples.xml: # complexExamples.xml: # # The parameters property represents IG.definition.parameter. Rather # than a list of code/value pairs (as in the ImplementationGuide # resource), the code is the YAML key. If a parameter allows repeating # values, the value in the YAML should be a sequence/array. # For parameters defined by core FHIR see: # http://build.fhir.org/codesystem-guide-parameter-code.html # For parameters defined by the FHIR Tools IG see: # http://build.fhir.org/ig/FHIR/fhir-tools-ig/branches/master/CodeSystem-ig-parameters.html # parameters: excludettl: true # validation: [allow-any-extensions, no-broken-links] # # ╭────────────────────────────────────────────menu.xml────────────────────────────────────────────╮ # │ The menu property will be used to generate the input/menu.xml file. The menu is represented │ # │ as a simple structure where the YAML key is the menu item name and the value is the URL. │ # │ The IG publisher currently only supports one level deep on sub-menus. To provide a │ # │ custom menu.xml file, do not include this property and include a `menu.xml` file in │ # │ input/includes. To use a provided input/includes/menu.xml file, delete the "menu" │ # │ property below. │ # ╰────────────────────────────────────────────────────────────────────────────────────────────────╯ menu: Home: index.html Care Services Directory: care-services.html Routing: routing.html Localization: localization.html Consent: consent.html Identification: identification.html Authentication: authentication.html Authorization: authorization.html Credential Catalog: credential-catalog.html Artifacts: artifacts.html History: history.html # ╭───────────────────────────Less Common Implementation Guide Properties──────────────────────────╮ # │ Uncomment the properties below to configure additional properties on the ImplementationGuide │ # │ resource. These properties are less commonly needed than those above. │ # ╰────────────────────────────────────────────────────────────────────────────────────────────────╯ # # Those who need more control or want to add additional details to the contact values can use # contact directly and follow the format outlined in the ImplementationGuide resource and # ContactDetail. # # contact: # - name: Bob Smith # telecom: # - system: email # phone | fax | email | pager | url | sms | other # value: bobsmith@example.org # use: work # # # The global property corresponds to the IG.global property, but it # uses the type as the YAML key and the profile as its value. Since # FHIR does not explicitly disallow more than one profile per type, # neither do we; the value can be a single profile URL or an array # of profile URLs. If a value is an id or name, SUSHI will replace # it with the correct canonical when generating the IG JSON. # # global: # Patient: http://example.org/fhir/StructureDefinition/my-patient-profile # Encounter: http://example.org/fhir/StructureDefinition/my-encounter-profile # # # The resources property corresponds to IG.definition.resource. # SUSHI can auto-generate all of the resource entries based on # the FSH definitions and/or information in any user-provided # JSON or XML resource files. If the generated entries are not # sufficient or complete, however, the author can add entries # here. If the reference matches a generated entry, it will # replace the generated entry. If it doesn't match any generated # entries, it will be added to the generated entries. The format # follows IG.definition.resource with the following differences: # * use IG.definition.resource.reference.reference as the YAML key. # * if the key is an id or name, SUSHI will replace it with the # correct URL when generating the IG JSON. # * specify "omit" to omit a FSH-generated resource from the # resource list. # * if the exampleCanonical is an id or name, SUSHI will replace # it with the correct canonical when generating the IG JSON. # * groupingId can be used, but top-level groups syntax may be a # better option (see below). # The following are simple examples to demonstrate what this might # look like: # # resources: # Patient/my-example-patient: # name: My Example Patient # description: An example Patient # exampleBoolean: true # Patient/bad-example: omit # # # Groups can control certain aspects of the IG generation. The IG # documentation recommends that authors use the default groups that # are provided by the templating framework, but if authors want to # use their own instead, they can use the mechanism below. This will # create IG.definition.grouping entries and associate the individual # resource entries with the corresponding groupIds. If a resource # is specified by id or name, SUSHI will replace it with the correct # URL when generating the IG JSON. # # groups: # GroupA: # name: Group A # description: The Alpha Group # resources: # - StructureDefinition/animal-patient # - StructureDefinition/arm-procedure # GroupB: # name: Group B # description: The Beta Group # resources: # - StructureDefinition/bark-control # - StructureDefinition/bee-sting # # # The ImplementationGuide resource defines several other properties # not represented above. These properties can be used as-is and # should follow the format defined in ImplementationGuide: # * date # * meta # * implicitRules # * language # * text # * contained # * extension # * modifierExtension # * experimental # * useContext # * copyright # * packageId # # # ╭──────────────────────────────────────────SUSHI flags───────────────────────────────────────────╮ # │ The flags below configure aspects of how SUSHI processes FSH. │ # ╰────────────────────────────────────────────────────────────────────────────────────────────────╯ # The FSHOnly flag indicates if only FSH resources should be exported. # If set to true, no IG related content will be generated. # The default value for this property is false. # # FSHOnly: false # # # When set to true, the "short" and "definition" field on the root element of an Extension will # be set to the "Title" and "Description" of that Extension. Default is true. # # applyExtensionMetadataToRoot: true # # # The instanceOptions property is used to configure certain aspects of how SUSHI processes instances. # See the individual option definitions below for more detail. # instanceOptions: # When set to true, slices must be referred to by name and not only by a numeric index in order to be used # in an Instance's assignment rule. All slices appear in the order in which they are specified in FSH rules. # While SUSHI defaults to false for legacy reasons, manualSliceOrding is recommended for new projects. manualSliceOrdering: true # true | false # Determines for which types of Instances SUSHI will automatically set meta.profile # if InstanceOf references a profile: # # setMetaProfile: always # always | never | inline-only | standalone-only # # # Determines for which types of Instances SUSHI will automatically set id # if InstanceOf references a profile: # # setId: always # always | standalone-only