Nedanstående anvisningar ska följas i FSH-projekt avseende namgivning, filstruktur och katalogstruktur.
Se även artefaktspecifika anvisningar på undersidor till denna.
Utöver den sträng som skrivs efter deklarationen har artefakter name, id och title. Det varierar mellan artefakttyper hur dessa anges i FSH och sedan görs om till JSON och bildar själva profilen.
VGR använder ett namn för maskintolkning och en titel som är människovänlig. Titel är en utskriven variant av namn, se nedan.
Namn ska svara på engelska. Undantag görs för etablerade svenska termer där en engelsk motsvarighet saknas. Åäö ersätts då med aao. Namn skrivs med PascalCase (samma som UpperCamelCase).
Namnet bildas av tillämpningsområdet och typen av artefakt.
Regionala IG:s och profiler får också prefix <VGR>.
Om tillämpningen består av flera ord skrivs de ihop med UpperCamelCase.
Om artefakten består av flera ord förkortas den till begynnelsebokstäverna.
Titel skrivs likadant som namn men artefakten förkortas inte.
namn
Skrivs enligt mall <VGR om regional IG eller profil><Tillämpning>förkortad artefakt
Exempel: VGRTransfusionMedicineIG, VGRReimbursementAccount, VGRGRIDNS
titel
Skrivs enligt mall <VGR om regional IG eller profil><Tillämpning>utskriven artefakt
Exempel: VGR TransfusionMedicine ImplementationGuide, VGR Reimbursement Account, VGR GRID NamingSystem
Nedan en tabell över hur namn och titel används i FSH. Observera att Implementationsguide, Capability Statement och Example Instance inte passar i dessa mönster. För samtliga artefakter finns mer information på respektive sida.
| format | här används strängen | |
|---|---|---|
| declaration | namn | computable name |
| instance | - | - |
| keyword id | namn | url |
| keyword title | titel | rubrik på websidan, artifact summary |
| element name | - | - |
| format | här används strängen | |
|---|---|---|
| declaration | - | - |
| instance | namn | url |
| keyword id | - | - |
| keyword title | titel | rubrik på websidan, artifact summary |
| element name | namn | computable name |
Filnamn för FSH-filer skapas av namn (se ovan) samt filändelse.
Exempel:
VGRReimbursementAccount.fsh, VGRGRIDNS.fsh
Declaration eller instance skrivs på första raden. Därefter kommer eventuella caret-regler, sedan elementregler eller annan kod.
Skriv regler i samma ordning som de kommer i resursen som profileras. Gör en tom rad mellan varje grupp med regler. Lägg eventuella inline extensions sist i filen.
Se även anvisningar per artefakt.
Förklaringar till varför koden skrivits på ett visst sätt hashas ut med /// för enskilda rader eller /* och */ för flera rader. Information som behövs för att använda artefakten ska inte skrivas i koden utan istället så att den syns vid publiceringen, se Skriva IG dokumentation
För att undvika att skriva långa kodrader med element avdelande med punkter kan underelement intendeteras med dubbelt mellanslag. Detta kan göras i flera steg.
Läs mer på FHIR Shorthand Indented Rules.
Soft indexing använder + och = för att numrera uppradade kodblock och gör det lättare att flytta runt kod.
Läs mer på FHIR Shorthand Soft Indexing.
Exempel:
* group[0].element[0]
* code = #01
* display = "Öppen vård"
* target[0]
* code = #AMB
* display = "ambulatory"
* equivalence = #equivalent
* group[0].element[+]
* code = #02
* display = "Sluten vård"
* target[0]
* code = #IMP
* display = "inpatient encounter"
* equivalence = #equivalent
Katalogstruktur för FSH-filer ska följa rekommendation för “Input resources” enligt HL7 Guidance for IG Creation - Directory structure. Lägg dessa mappar under “
Exempel:
Lägg endast en artefakt (tex profil, exempel, kodverk) i varje FSH-fil. Undantag från detta är Extensioner som används inline, se Extensions
| Referens | Beskrivning |
|---|---|
| FHIR Shorthand | Beskrivning av FSH publicerad av HL7, inklusive detaljerad språkreferens och länkar till rekommenderad vidare förkovran |
| SUSHI Tutorial | Handledning för hur man arbetar med SUSHI med utgångspunkt i exempel |