first version
This commit is contained in:
commit
60ab43af6d
7
.gitignore
vendored
Normal file
7
.gitignore
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
/fsh-generated
|
||||
/input-cache
|
||||
/output
|
||||
/temp
|
||||
/template
|
2
_gencontinuous.bat
Normal file
2
_gencontinuous.bat
Normal file
@ -0,0 +1,2 @@
|
||||
@ECHO OFF
|
||||
CALL ./_genonce.bat -watch
|
2
_gencontinuous.sh
Executable file
2
_gencontinuous.sh
Executable file
@ -0,0 +1,2 @@
|
||||
#!/bin/bash
|
||||
./_genonce.sh -watch
|
27
_genonce.bat
Normal file
27
_genonce.bat
Normal file
@ -0,0 +1,27 @@
|
||||
@ECHO OFF
|
||||
SET publisher_jar=publisher.jar
|
||||
SET input_cache_path=%CD%\input-cache
|
||||
|
||||
ECHO Checking internet connection...
|
||||
PING tx.fhir.org -4 -n 1 -w 1000 | FINDSTR TTL && GOTO isonline
|
||||
ECHO We're offline...
|
||||
SET txoption=-tx n/a
|
||||
GOTO igpublish
|
||||
|
||||
:isonline
|
||||
ECHO We're online
|
||||
SET txoption=
|
||||
|
||||
:igpublish
|
||||
|
||||
SET JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8
|
||||
|
||||
IF EXIST "%input_cache_path%\%publisher_jar%" (
|
||||
JAVA -jar "%input_cache_path%\%publisher_jar%" -ig . %txoption% %*
|
||||
) ELSE If exist "..\%publisher_jar%" (
|
||||
JAVA -jar "..\%publisher_jar%" -ig . %txoption% %*
|
||||
) ELSE (
|
||||
ECHO IG Publisher NOT FOUND in input-cache or parent folder. Please run _updatePublisher. Aborting...
|
||||
)
|
||||
|
||||
PAUSE
|
30
_genonce.sh
Executable file
30
_genonce.sh
Executable file
@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
publisher_jar=publisher.jar
|
||||
input_cache_path=./input-cache/
|
||||
echo Checking internet connection...
|
||||
curl -sSf tx.fhir.org > /dev/null
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Online"
|
||||
txoption=""
|
||||
else
|
||||
echo "Offline"
|
||||
txoption="-tx n/a"
|
||||
fi
|
||||
|
||||
echo "$txoption"
|
||||
|
||||
export JAVA_TOOL_OPTIONS="$JAVA_TOOL_OPTIONS -Dfile.encoding=UTF-8"
|
||||
|
||||
publisher=$input_cache_path/$publisher_jar
|
||||
if test -f "$publisher"; then
|
||||
java -jar $publisher -ig . $txoption $*
|
||||
|
||||
else
|
||||
publisher=../$publisher_jar
|
||||
if test -f "$publisher"; then
|
||||
java -jar $publisher -ig . $txoption $*
|
||||
else
|
||||
echo IG Publisher NOT FOUND in input-cache or parent folder. Please run _updatePublisher. Aborting...
|
||||
fi
|
||||
fi
|
219
_updatePublisher.bat
Normal file
219
_updatePublisher.bat
Normal file
@ -0,0 +1,219 @@
|
||||
@ECHO OFF
|
||||
|
||||
SETLOCAL
|
||||
|
||||
SET dlurl=https://github.com/HL7/fhir-ig-publisher/releases/latest/download/publisher.jar
|
||||
SET publisher_jar=publisher.jar
|
||||
SET input_cache_path=%CD%\input-cache\
|
||||
SET skipPrompts=false
|
||||
|
||||
SET scriptdlroot=https://raw.githubusercontent.com/HL7/ig-publisher-scripts/main
|
||||
SET update_bat_url=%scriptdlroot%/_updatePublisher.bat
|
||||
SET gen_bat_url=%scriptdlroot%/_genonce.bat
|
||||
SET gencont_bat_url=%scriptdlroot%/_gencontinuous.bat
|
||||
SET gencont_sh_url=%scriptdlroot%/_gencontinuous.sh
|
||||
SET gen_sh_url=%scriptdlroot%/_genonce.sh
|
||||
SET update_sh_url=%scriptdlroot%/_updatePublisher.sh
|
||||
|
||||
IF "%~1"=="/f" SET skipPrompts=y
|
||||
|
||||
|
||||
ECHO.
|
||||
ECHO Checking internet connection...
|
||||
PING tx.fhir.org -4 -n 1 -w 1000 | FINDSTR TTL && GOTO isonline
|
||||
ECHO We're offline, nothing to do...
|
||||
GOTO end
|
||||
|
||||
:isonline
|
||||
ECHO We're online
|
||||
|
||||
|
||||
:processflags
|
||||
SET ARG=%1
|
||||
IF DEFINED ARG (
|
||||
IF "%ARG%"=="-f" SET FORCE=true
|
||||
IF "%ARG%"=="--force" SET FORCE=true
|
||||
SHIFT
|
||||
GOTO processflags
|
||||
)
|
||||
|
||||
FOR %%x IN ("%CD%") DO SET upper_path=%%~dpx
|
||||
|
||||
ECHO.
|
||||
IF NOT EXIST "%input_cache_path%%publisher_jar%" (
|
||||
IF NOT EXIST "%upper_path%%publisher_jar%" (
|
||||
SET jarlocation="%input_cache_path%%publisher_jar%"
|
||||
SET jarlocationname=Input Cache
|
||||
ECHO IG Publisher is not yet in input-cache or parent folder.
|
||||
REM we don't use jarlocation below because it will be empty because we're in a bracketed if statement
|
||||
GOTO create
|
||||
) ELSE (
|
||||
ECHO IG Publisher FOUND in parent folder
|
||||
SET jarlocation="%upper_path%%publisher_jar%"
|
||||
SET jarlocationname=Parent folder
|
||||
GOTO upgrade
|
||||
)
|
||||
) ELSE (
|
||||
ECHO IG Publisher FOUND in input-cache
|
||||
SET jarlocation="%input_cache_path%%publisher_jar%"
|
||||
SET jarlocationname=Input Cache
|
||||
GOTO upgrade
|
||||
)
|
||||
|
||||
:create
|
||||
IF DEFINED FORCE (
|
||||
MKDIR "%input_cache_path%" 2> NUL
|
||||
GOTO download
|
||||
)
|
||||
|
||||
IF "%skipPrompts%"=="y" (
|
||||
SET create=Y
|
||||
) ELSE (
|
||||
SET /p create="Ok? (Y/N) "
|
||||
)
|
||||
IF /I "%create%"=="Y" (
|
||||
ECHO Will place publisher jar here: %input_cache_path%%publisher_jar%
|
||||
MKDIR "%input_cache_path%" 2> NUL
|
||||
GOTO download
|
||||
)
|
||||
GOTO done
|
||||
|
||||
:upgrade
|
||||
IF "%skipPrompts%"=="y" (
|
||||
SET overwrite=Y
|
||||
) ELSE (
|
||||
SET /p overwrite="Overwrite %jarlocation%? (Y/N) "
|
||||
)
|
||||
|
||||
IF /I "%overwrite%"=="Y" (
|
||||
GOTO download
|
||||
)
|
||||
GOTO done
|
||||
|
||||
:download
|
||||
ECHO Downloading most recent publisher to %jarlocationname% - it's ~100 MB, so this may take a bit
|
||||
|
||||
FOR /f "tokens=4-5 delims=. " %%i IN ('ver') DO SET VERSION=%%i.%%j
|
||||
IF "%version%" == "10.0" GOTO win10
|
||||
IF "%version%" == "6.3" GOTO win8.1
|
||||
IF "%version%" == "6.2" GOTO win8
|
||||
IF "%version%" == "6.1" GOTO win7
|
||||
IF "%version%" == "6.0" GOTO vista
|
||||
|
||||
ECHO Unrecognized version: %version%
|
||||
GOTO done
|
||||
|
||||
:win10
|
||||
CALL POWERSHELL -command if ('System.Net.WebClient' -as [type]) {(new-object System.Net.WebClient).DownloadFile(\"%dlurl%\",\"%jarlocation%\") } else { Invoke-WebRequest -Uri "%dlurl%" -Outfile "%jarlocation%" }
|
||||
|
||||
GOTO done
|
||||
|
||||
:win7
|
||||
rem this may be triggering the antivirus - bitsadmin.exe is a known threat
|
||||
rem CALL bitsadmin /transfer GetPublisher /download /priority normal "%dlurl%" "%jarlocation%"
|
||||
|
||||
rem this didn't work in win 10
|
||||
rem CALL Start-BitsTransfer /priority normal "%dlurl%" "%jarlocation%"
|
||||
|
||||
rem this should work - untested
|
||||
call (New-Object Net.WebClient).DownloadFile('%dlurl%', '%jarlocation%')
|
||||
GOTO done
|
||||
|
||||
:win8.1
|
||||
:win8
|
||||
:vista
|
||||
GOTO done
|
||||
|
||||
|
||||
|
||||
:done
|
||||
|
||||
|
||||
|
||||
|
||||
ECHO.
|
||||
ECHO Updating scripts
|
||||
IF "%skipPrompts%"=="y" (
|
||||
SET updateScripts=Y
|
||||
) ELSE (
|
||||
SET /p updateScripts="Update scripts? (Y/N) "
|
||||
)
|
||||
IF /I "%updateScripts%"=="Y" (
|
||||
GOTO scripts
|
||||
)
|
||||
GOTO end
|
||||
|
||||
|
||||
:scripts
|
||||
|
||||
REM Download all batch files (and this one with a new name)
|
||||
|
||||
SETLOCAL DisableDelayedExpansion
|
||||
|
||||
|
||||
|
||||
:dl_script_1
|
||||
ECHO Updating _updatePublisher.sh
|
||||
call POWERSHELL -command if ('System.Net.WebClient' -as [type]) {(new-object System.Net.WebClient).DownloadFile(\"%update_sh_url%\",\"_updatePublisher.new.sh\") } else { Invoke-WebRequest -Uri "%update_sh_url%" -Outfile "_updatePublisher.new.sh" }
|
||||
if %ERRORLEVEL% == 0 goto upd_script_1
|
||||
echo "Errors encountered during download: %errorlevel%"
|
||||
goto dl_script_2
|
||||
:upd_script_1
|
||||
start copy /y "_updatePublisher.new.sh" "_updatePublisher.sh" ^&^& del "_updatePublisher.new.sh" ^&^& exit
|
||||
|
||||
|
||||
:dl_script_2
|
||||
ECHO Updating _genonce.bat
|
||||
call POWERSHELL -command if ('System.Net.WebClient' -as [type]) {(new-object System.Net.WebClient).DownloadFile(\"%gen_bat_url%\",\"_genonce.new.bat\") } else { Invoke-WebRequest -Uri "%gen_bat_url%" -Outfile "_genonce.bat" }
|
||||
if %ERRORLEVEL% == 0 goto upd_script_2
|
||||
echo "Errors encountered during download: %errorlevel%"
|
||||
goto dl_script_3
|
||||
:upd_script_2
|
||||
start copy /y "_genonce.new.bat" "_genonce.bat" ^&^& del "_genonce.new.bat" ^&^& exit
|
||||
|
||||
:dl_script_3
|
||||
ECHO Updating _gencontinuous.bat
|
||||
call POWERSHELL -command if ('System.Net.WebClient' -as [type]) {(new-object System.Net.WebClient).DownloadFile(\"%gencont_bat_url%\",\"_gencontinuous.new.bat\") } else { Invoke-WebRequest -Uri "%gencont_bat_url%" -Outfile "_gencontinuous.bat" }
|
||||
if %ERRORLEVEL% == 0 goto upd_script_3
|
||||
echo "Errors encountered during download: %errorlevel%"
|
||||
goto dl_script_4
|
||||
:upd_script_3
|
||||
start copy /y "_gencontinuous.new.bat" "_gencontinuous.bat" ^&^& del "_gencontinuous.new.bat" ^&^& exit
|
||||
|
||||
|
||||
:dl_script_4
|
||||
ECHO Updating _genonce.sh
|
||||
call POWERSHELL -command if ('System.Net.WebClient' -as [type]) {(new-object System.Net.WebClient).DownloadFile(\"%gen_sh_url%\",\"_genonce.new.sh\") } else { Invoke-WebRequest -Uri "%gen_sh_url%" -Outfile "_genonce.sh" }
|
||||
if %ERRORLEVEL% == 0 goto upd_script_4
|
||||
echo "Errors encountered during download: %errorlevel%"
|
||||
goto dl_script_5
|
||||
:upd_script_4
|
||||
start copy /y "_genonce.new.sh" "_genonce.sh" ^&^& del "_genonce.new.sh" ^&^& exit
|
||||
|
||||
:dl_script_5
|
||||
ECHO Updating _gencontinuous.sh
|
||||
call POWERSHELL -command if ('System.Net.WebClient' -as [type]) {(new-object System.Net.WebClient).DownloadFile(\"%gencont_sh_url%\",\"_gencontinuous.new.sh\") } else { Invoke-WebRequest -Uri "%gencont_sh_url%" -Outfile "_gencontinuous.sh" }
|
||||
if %ERRORLEVEL% == 0 goto upd_script_5
|
||||
echo "Errors encountered during download: %errorlevel%"
|
||||
goto dl_script_6
|
||||
:upd_script_5
|
||||
start copy /y "_gencontinuous.new.sh" "_gencontinuous.sh" ^&^& del "_gencontinuous.new.sh" ^&^& exit
|
||||
|
||||
|
||||
|
||||
:dl_script_6
|
||||
ECHO Updating _updatePublisher.bat
|
||||
call POWERSHELL -command if ('System.Net.WebClient' -as [type]) {(new-object System.Net.WebClient).DownloadFile(\"%update_bat_url%\",\"_updatePublisher.new.bat\") } else { Invoke-WebRequest -Uri "%update_bat_url%" -Outfile "_updatePublisher.new.bat" }
|
||||
if %ERRORLEVEL% == 0 goto upd_script_6
|
||||
echo "Errors encountered during download: %errorlevel%"
|
||||
goto end
|
||||
:upd_script_6
|
||||
start copy /y "_updatePublisher.new.bat" "_updatePublisher.bat" ^&^& del "_updatePublisher.new.bat" ^&^& exit
|
||||
|
||||
|
||||
:end
|
||||
|
||||
|
||||
IF "%skipPrompts%"=="true" (
|
||||
PAUSE
|
||||
)
|
132
_updatePublisher.sh
Executable file
132
_updatePublisher.sh
Executable file
@ -0,0 +1,132 @@
|
||||
#!/bin/bash
|
||||
pubsource=https://github.com/HL7/fhir-ig-publisher/releases/latest/download/
|
||||
publisher_jar=publisher.jar
|
||||
dlurl=$pubsource$publisher_jar
|
||||
|
||||
input_cache_path=$PWD/input-cache/
|
||||
|
||||
scriptdlroot=https://raw.githubusercontent.com/HL7/ig-publisher-scripts/main
|
||||
update_bat_url=$scriptdlroot/_updatePublisher.bat
|
||||
gen_bat_url=$scriptdlroot/_genonce.bat
|
||||
gencont_bat_url=$scriptdlroot/_gencontinuous.bat
|
||||
gencont_sh_url=$scriptdlroot/_gencontinuous.sh
|
||||
gen_sh_url=$scriptdlroot/_genonce.sh
|
||||
update_sh_url=$scriptdlroot/_updatePublisher.sh
|
||||
|
||||
skipPrompts=false
|
||||
FORCE=false
|
||||
|
||||
if ! type "curl" > /dev/null; then
|
||||
echo "ERROR: Script needs curl to download latest IG Publisher. Please install curl."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
while [ "$#" -gt 0 ]; do
|
||||
case $1 in
|
||||
-f|--force) FORCE=true ;;
|
||||
-y|--yes) skipPrompts=true ; FORCE=true ;;
|
||||
*) echo "Unknown parameter passed: $1. Exiting"; exit 1 ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
echo "Checking internet connection"
|
||||
curl -sSf tx.fhir.org > /dev/null
|
||||
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo "Offline (or the terminology server is down), unable to update. Exiting"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -d "$input_cache_path" ] ; then
|
||||
if [ $FORCE != true ]; then
|
||||
echo "$input_cache_path does not exist"
|
||||
message="create it?"
|
||||
read -r -p "$message" response
|
||||
else
|
||||
response=y
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ $response =~ ^[yY].*$ ]] ; then
|
||||
mkdir ./input-cache
|
||||
fi
|
||||
|
||||
publisher="$input_cache_path$publisher_jar"
|
||||
|
||||
if test -f "$publisher" ; then
|
||||
echo "IG Publisher FOUND in input-cache"
|
||||
jarlocation="$publisher"
|
||||
jarlocationname="Input Cache"
|
||||
upgrade=true
|
||||
else
|
||||
publisher="../$publisher_jar"
|
||||
upgrade=true
|
||||
if test -f "$publisher"; then
|
||||
echo "IG Publisher FOUND in parent folder"
|
||||
jarlocation="$publisher"
|
||||
jarlocationname="Parent Folder"
|
||||
upgrade=true
|
||||
else
|
||||
echo "IG Publisher NOT FOUND in input-cache or parent folder"
|
||||
jarlocation=$input_cache_path$publisher_jar
|
||||
jarlocationname="Input Cache"
|
||||
upgrade=false
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ $skipPrompts == false ]]; then
|
||||
|
||||
if [[ $upgrade == true ]]; then
|
||||
message="Overwrite $jarlocation? (Y/N) "
|
||||
else
|
||||
echo Will place publisher jar here: "$jarlocation"
|
||||
message="Ok (enter 'y' or 'Y' to continue, any other key to cancel)?"
|
||||
fi
|
||||
read -r -p "$message" response
|
||||
else
|
||||
response=y
|
||||
fi
|
||||
if [[ $skipPrompts == true ]] || [[ $response =~ ^[yY].*$ ]]; then
|
||||
|
||||
echo "Downloading most recent publisher to $jarlocationname - it's ~100 MB, so this may take a bit"
|
||||
curl -L $dlurl -o "$jarlocation" --create-dirs
|
||||
else
|
||||
echo cancelled publisher update
|
||||
fi
|
||||
|
||||
if [[ $skipPrompts != true ]]; then
|
||||
message="Update scripts? (enter 'y' or 'Y' to continue, any other key to cancel)?"
|
||||
read -r -p "$message" response
|
||||
fi
|
||||
|
||||
if [[ $skipPrompts == true ]] || [[ $response =~ ^[yY].*$ ]]; then
|
||||
echo "Downloading most recent scripts "
|
||||
|
||||
curl -L $update_bat_url -o /tmp/_updatePublisher.new
|
||||
cp /tmp/_updatePublisher.new _updatePublisher.bat
|
||||
rm /tmp/_updatePublisher.new
|
||||
|
||||
curl -L $gen_bat_url -o /tmp/_genonce.new
|
||||
cp /tmp/_genonce.new _genonce.bat
|
||||
rm /tmp/_genonce.new
|
||||
|
||||
curl -L $gencont_bat_url -o /tmp/_gencontinuous.new
|
||||
cp /tmp/_gencontinuous.new _gencontinuous.bat
|
||||
rm /tmp/_gencontinuous.new
|
||||
|
||||
curl -L $gencont_sh_url -o /tmp/_gencontinuous.new
|
||||
cp /tmp/_gencontinuous.new _gencontinuous.sh
|
||||
chmod +x _gencontinuous.sh
|
||||
rm /tmp/_gencontinuous.new
|
||||
|
||||
curl -L $gen_sh_url -o /tmp/_genonce.new
|
||||
cp /tmp/_genonce.new _genonce.sh
|
||||
chmod +x _genonce.sh
|
||||
rm /tmp/_genonce.new
|
||||
|
||||
curl -L $update_sh_url -o /tmp/_updatePublisher.new
|
||||
cp /tmp/_updatePublisher.new _updatePublisher.sh
|
||||
chmod +x _updatePublisher.sh
|
||||
rm /tmp/_updatePublisher.new
|
||||
fi
|
3
ig.ini
Normal file
3
ig.ini
Normal file
@ -0,0 +1,3 @@
|
||||
[IG]
|
||||
ig = fsh-generated/resources/ImplementationGuide-lacpass.racsel.org.json
|
||||
template = fhir.base.template#current
|
14
input/fsh/patient.fsh
Normal file
14
input/fsh/patient.fsh
Normal file
@ -0,0 +1,14 @@
|
||||
// This is a simple example of a FSH file.
|
||||
// This file can be renamed, and additional FSH files can be added.
|
||||
// SUSHI will look for definitions in any file using the .fsh ending.
|
||||
Profile: MyPatient
|
||||
Parent: Patient
|
||||
Description: "An example profile of the Patient resource."
|
||||
* name 1..* MS
|
||||
|
||||
Instance: PatientExample
|
||||
InstanceOf: MyPatient
|
||||
Description: "An example of a patient with a license to krill."
|
||||
* name
|
||||
* given[0] = "James"
|
||||
* family = "Pond"
|
5
input/ignoreWarnings.txt
Normal file
5
input/ignoreWarnings.txt
Normal file
@ -0,0 +1,5 @@
|
||||
== Suppressed Messages ==
|
||||
|
||||
# Add warning and/or information messages here after you've confirmed that they aren't really a problem
|
||||
# (And include comments like this justifying why)
|
||||
# See https://github.com/FHIR/sample-ig/blob/master/input/ignoreWarnings.txt for examples
|
3
input/pagecontent/index.md
Normal file
3
input/pagecontent/index.md
Normal file
@ -0,0 +1,3 @@
|
||||
# LACPass IPS
|
||||
|
||||
Feel free to modify this index page with your own awesome content!
|
218
sushi-config.yaml
Normal file
218
sushi-config.yaml
Normal file
@ -0,0 +1,218 @@
|
||||
# ╭─────────────────────────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: lacpass.racsel.org
|
||||
canonical: http://lacpass.racsel.org
|
||||
name: LACPassIPS
|
||||
# title: Example Title
|
||||
# description: Example Implementation Guide for getting started with SUSHI
|
||||
status: active # draft | active | retired | unknown
|
||||
version: 0.1.0
|
||||
fhirVersion: 4.0.1 # https://www.hl7.org/fhir/valueset-FHIR-version.html
|
||||
copyrightYear: 2023+
|
||||
releaseLabel: ci-build # ci-build | draft | qa-preview | ballot | trial-use | release | update | normative+trial-use
|
||||
# license: CC0-1.0 # https://www.hl7.org/fhir/valueset-spdx-license.html
|
||||
# jurisdiction: urn:iso:std:iso:3166#US "United States of America" # https://www.hl7.org/fhir/valueset-jurisdiction.html
|
||||
publisher:
|
||||
name: Create
|
||||
url: http://lacpapass.create.cl
|
||||
# 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:
|
||||
# hl7.fhir.us.core: 3.1.0
|
||||
# hl7.fhir.us.mcode:
|
||||
# id: mcode
|
||||
# uri: http://hl7.org/fhir/us/mcode/ImplementationGuide/hl7.fhir.us.mcode
|
||||
# version: 1.0.0
|
||||
|
||||
dependencies:
|
||||
hl7.fhir.uv.ips: current
|
||||
fhir.org.nz.ig.base: current
|
||||
|
||||
#
|
||||
#
|
||||
# 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:
|
||||
#
|
||||
#
|
||||
# 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
|
||||
Artifacts: artifacts.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
|
Loading…
x
Reference in New Issue
Block a user