SushiConfigLogicalModel
type: StructureDefinition
node role: treeRoot
id:
  v: SushiConfigLogicalModel
text:
  status:
    v: extensions
  div:
    v: Generated Narrative: StructureDefinition SushiConfigLogicalModel Name Flags Card. Type Description & Constraints<img src="[binary]" alt="doco" style="background-color: inherit"/> SushiConfigLogicalModel 0..* Base SUSHI Configuration Logical Model #xD; id 1..1 string IG Identifier #xD; canonical 1..1 url Canonical URL #xD; name 1..1 string IG Name #xD; title 1..1 string IG Title #xD; description 1..1 string IG Description #xD; version 1..1 string IG Version #xD; status 1..1 code IG Status Binding: PublicationStatus (required) #xD; license 1..1 code License Binding: SPDXLicense (required) #xD; copyrightYear 0..1 string Copyright Year #xD; experimental 0..1 boolean Experimental #xD; releaseLabel 0..1 string Release Label #xD; publisher 1..1 BackboneElement Publisher #xD; name 1..1 string Publisher Name #xD; url 0..1 url Publisher URL #xD; email 0..1 string Publisher Email #xD; fhirVersion 1..1 code FHIR Version Binding: FHIRVersion (required) #xD; dependencies 0..* BackboneElement Dependencies #xD; @id 1..1 string Dependency Package ID #xD; version 1..1 string Dependency Version #xD; reason 0..1 string Dependency Reason #xD; pages 0..* BackboneElement Pages #xD; filename 1..1 string Page Filename #xD; title 1..1 string Page Title #xD; menu 0..* BackboneElement Menu Structure #xD; title 1..1 string Menu Title #xD; url 1..1 string Menu URL #xD; subItems 0..* BackboneElement Sub Menu Items #xD; title 1..1 string Sub-item Title #xD; url 1..1 string Sub-item URL #xD; resources 0..* BackboneElement Resource Definitions #xD; reference 1..1 string Resource Reference #xD; name 0..1 string Resource Name #xD; description 0..1 string Resource Description #xD; exampleBoolean 0..1 boolean Is Example #xD; exampleCanonical 0..1 canonical() Example Canonical #xD; groupingId 0..1 string Grouping ID #xD; groups 0..* BackboneElement Resource Groups #xD; @id 1..1 string Group ID #xD; name 1..1 string Group Name #xD; description 1..1 string Group Description #xD; resources 0..* string Group…
url:
  v: http://smart.who.int/base/StructureDefinition/SushiConfigLogicalModel
  l: SushiConfigLogicalModel
version:
  v: 0.2.0
name:
  v: SushiConfigLogicalModel
title:
  v: SUSHI Configuration Logical Model
status:
  v: draft
experimental:
  v: false
date:
  v: 2026-02-28T20:11:21+00:00
publisher:
  v: WHO
contact:
  name:
    v: WHO
  telecom:
    system:
      v: url
    value:
      v: http://who.int
description:
  v: Logical model defining the structure of sushi-config.yaml files used for FHIR Implementation Guide configuration. This model captures the essential metadata and configuration parameters needed for IG publishing.
fhir version:
  v: 4.0.1
kind:
  v: logical
abstract:
  v: false
type:
  v: http://smart.who.int/base/StructureDefinition/SushiConfigLogicalModel
  l: SushiConfigLogicalModel
base definition:
  v: http://hl7.org/fhir/StructureDefinition/Base
  l: Base
derivation:
  v: specialization
snapshot:
  extension:
    url:
      v: http://hl7.org/fhir/tools/StructureDefinition/snapshot-base-version
      l: snapshot-base-version
    value: String
      v: 4.0.1
  element:
    id:
      v: SushiConfigLogicalModel
    path:
      v: SushiConfigLogicalModel
    short:
      v: SUSHI Configuration Logical Model
    definition:
      v: Logical model defining the structure of sushi-config.yaml files used for FHIR Implementation Guide configuration. This model captures the essential metadata and configuration parameters needed for IG publishing.
    min:
      v: 0
    max:
      v: *
    base:
      path:
        v: Base
      min:
        v: 0
      max:
        v: *
    is modifier:
      v: false
  element:
    id:
      v: SushiConfigLogicalModel.id
    path:
      v: SushiConfigLogicalModel.id
    short:
      v: IG Identifier
    definition:
      v: Unique identifier for the IG, should match DAK id (e.g., smart.who.int.trust)
    min:
      v: 1
    max:
      v: 1
    base:
      path:
        v: SushiConfigLogicalModel.id
      min:
        v: 1
      max:
        v: 1
    type:
      code:
        v: string
        l: string
  element:
    id:
      v: SushiConfigLogicalModel.canonical
    path:
      v: SushiConfigLogicalModel.canonical
    short:
      v: Canonical URL
    definition:
      v: Canonical URL for the IG, should match DAK publicationUrl (e.g., http://smart.who.int/trust)
    min:
      v: 1
    max:
      v: 1
    base:
      path:
        v: SushiConfigLogicalModel.canonical
      min:
        v: 1
      max:
        v: 1
    type:
      code:
        v: url
        l: url
  element:
    id:
      v: SushiConfigLogicalModel.name
    path:
      v: SushiConfigLogicalModel.name
    short:
      v: IG Name
    definition:
      v: Short name for the IG, should derive from DAK name (e.g., Trust)
    min:
      v: 1
    max:
      v: 1
    base:
      path:
        v: SushiConfigLogicalModel.name
      min:
        v: 1
      max:
        v: 1
    type:
      code:
        v: string
        l: string
  element:
    id:
      v: SushiConfigLogicalModel.title
    path:
      v: SushiConfigLogicalModel.title
    short:
      v: IG Title
    definition:
      v: Full title of the IG, should match DAK title (e.g., WHO SMART Trust)
    min:
      v: 1
    max:
      v: 1
    base:
      path:
        v: SushiConfigLogicalModel.title
      min:
        v: 1
      max:
        v: 1
    type:
      code:
        v: string
        l: string
  element:
    id:
      v: SushiConfigLogicalModel.description
    path:
      v: SushiConfigLogicalModel.description
    short:
      v: IG Description
    definition:
      v: Description of the IG, should match DAK description
    min:
      v: 1
    max:
      v: 1
    base:
      path:
        v: SushiConfigLogicalModel.description
      min:
        v: 1
      max:
        v: 1
    type:
      code:
        v: string
        l: string
  element:
    id:
      v: SushiConfigLogicalModel.version

v: SushiConfigLogicalModel.version

v: IG Version

v: Version of the IG, should match DAK version

v: 1

v: 1

path:
  v: SushiConfigLogicalModel.version
min:
  v: 1
max:
  v: 1

code:
  v: string
  l: string

id:
  v: SushiConfigLogicalModel.status
path:
  v: SushiConfigLogicalModel.status
short:
  v: IG Status
definition:
  v: Publication status of the IG
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.status
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: code
    l: code
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/fhir/ValueSet/publication-status
    l: publication-status

id:
  v: SushiConfigLogicalModel.license
path:
  v: SushiConfigLogicalModel.license
short:
  v: License
definition:
  v: License under which the IG is published, should match DAK license
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.license
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: code
    l: code
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/fhir/ValueSet/spdx-license
    l: spdx-license

id:
  v: SushiConfigLogicalModel.copyrightYear
path:
  v: SushiConfigLogicalModel.copyrightYear
short:
  v: Copyright Year
definition:
  v: Year or year range for copyright, should match DAK
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.copyrightYear
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.experimental
path:
  v: SushiConfigLogicalModel.experimental
short:
  v: Experimental
definition:
  v: Whether this IG is experimental, should match DAK
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.experimental
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
    l: boolean

id:
  v: SushiConfigLogicalModel.releaseLabel
path:
  v: SushiConfigLogicalModel.releaseLabel
short:
  v: Release Label
definition:
  v: Label for this release (e.g., ci-build, draft, ballot)
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.releaseLabel
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.publisher
path:
  v: SushiConfigLogicalModel.publisher
short:
  v: Publisher
definition:
  v: Organization responsible for publishing the IG
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.publisher
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.publisher.id
path:
  v: SushiConfigLogicalModel.publisher.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.publisher.extension
path:
  v: SushiConfigLogicalModel.publisher.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.publisher.modifierExtension
path:
  v: SushiConfigLogicalModel.publisher.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.publisher.name
path:
  v: SushiConfigLogicalModel.publisher.name
short:
  v: Publisher Name
definition:
  v: Name of the publishing organization, should match DAK publisher name
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.publisher.name
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.publisher.url
path:
  v: SushiConfigLogicalModel.publisher.url
short:
  v: Publisher URL
definition:
  v: URL of the publishing organization, should match DAK publisher URL
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.publisher.url
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: url
    l: url

id:
  v: SushiConfigLogicalModel.publisher.email
path:
  v: SushiConfigLogicalModel.publisher.email
short:
  v: Publisher Email
definition:
  v: Contact email for the publisher
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.publisher.email
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.fhirVersion
path:
  v: SushiConfigLogicalModel.fhirVersion
short:
  v: FHIR Version
definition:
  v: Version of FHIR this IG is built on
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.fhirVersion
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: code
    l: code
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/fhir/ValueSet/FHIR-version
    l: FHIR-version

id:
  v: SushiConfigLogicalModel.dependencies
path:
  v: SushiConfigLogicalModel.dependencies
short:
  v: Dependencies
definition:
  v: Other IGs or packages this IG depends on
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.dependencies
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.dependencies.id
path:
  v: SushiConfigLogicalModel.dependencies.id
representation:
  v: xmlAttr
short:
  v: Dependency Package ID
definition:
  v: Package ID of the dependency
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.dependencies.extension
path:
  v: SushiConfigLogicalModel.dependencies.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.dependencies.modifierExtension
path:
  v: SushiConfigLogicalModel.dependencies.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.dependencies.version
path:
  v: SushiConfigLogicalModel.dependencies.version
short:
  v: Dependency Version
definition:
  v: Version of the dependency
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.dependencies.version
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.dependencies.reason
path:
  v: SushiConfigLogicalModel.dependencies.reason
short:
  v: Dependency Reason
definition:
  v: Reason for this dependency
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.dependencies.reason
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.pages
path:
  v: SushiConfigLogicalModel.pages
short:
  v: Pages
definition:
  v: Custom pages included in the IG
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.pages
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.pages.id
path:
  v: SushiConfigLogicalModel.pages.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.pages.extension
path:
  v: SushiConfigLogicalModel.pages.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.pages.modifierExtension
path:
  v: SushiConfigLogicalModel.pages.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.pages.filename
path:
  v: SushiConfigLogicalModel.pages.filename
short:
  v: Page Filename
definition:
  v: Filename of the page (e.g., index.md)
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.pages.filename
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.pages.title
path:
  v: SushiConfigLogicalModel.pages.title
short:
  v: Page Title
definition:
  v: Title of the page
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.pages.title
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu
path:
  v: SushiConfigLogicalModel.menu
short:
  v: Menu Structure
definition:
  v: Navigation menu structure for the IG
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.menu
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.menu.id
path:
  v: SushiConfigLogicalModel.menu.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.menu.extension
path:
  v: SushiConfigLogicalModel.menu.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.menu.modifierExtension
path:
  v: SushiConfigLogicalModel.menu.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.menu.title
path:
  v: SushiConfigLogicalModel.menu.title
short:
  v: Menu Title
definition:
  v: Title of the menu item
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.menu.title
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu.url
path:
  v: SushiConfigLogicalModel.menu.url
short:
  v: Menu URL
definition:
  v: URL of the menu item
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.menu.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu.subItems
path:
  v: SushiConfigLogicalModel.menu.subItems
short:
  v: Sub Menu Items
definition:
  v: Sub-menu items
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.menu.subItems
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.menu.subItems.id
path:
  v: SushiConfigLogicalModel.menu.subItems.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.menu.subItems.extension
path:
  v: SushiConfigLogicalModel.menu.subItems.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.menu.subItems.modifierExtension
path:
  v: SushiConfigLogicalModel.menu.subItems.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.menu.subItems.title
path:
  v: SushiConfigLogicalModel.menu.subItems.title
short:
  v: Sub-item Title
definition:
  v: Title of the sub-menu item
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.menu.subItems.title
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu.subItems.url
path:
  v: SushiConfigLogicalModel.menu.subItems.url
short:
  v: Sub-item URL
definition:
  v: URL of the sub-menu item
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.menu.subItems.url
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources
path:
  v: SushiConfigLogicalModel.resources
short:
  v: Resource Definitions
definition:
  v: Explicit resource definitions for the IG
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.resources
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.resources.id
path:
  v: SushiConfigLogicalModel.resources.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.resources.extension
path:
  v: SushiConfigLogicalModel.resources.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.resources.modifierExtension
path:
  v: SushiConfigLogicalModel.resources.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.resources.reference
path:
  v: SushiConfigLogicalModel.resources.reference
short:
  v: Resource Reference
definition:
  v: Reference to the resource (used as YAML key)
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.resources.reference
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources.name
path:
  v: SushiConfigLogicalModel.resources.name
short:
  v: Resource Name
definition:
  v: Human-readable name for the resource
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.resources.name
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources.description
path:
  v: SushiConfigLogicalModel.resources.description
short:
  v: Resource Description
definition:
  v: Description of the resource
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.resources.description
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources.exampleBoolean
path:
  v: SushiConfigLogicalModel.resources.exampleBoolean
short:
  v: Is Example
definition:
  v: Whether this resource is an example
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.resources.exampleBoolean
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
    l: boolean

id:
  v: SushiConfigLogicalModel.resources.exampleCanonical
path:
  v: SushiConfigLogicalModel.resources.exampleCanonical
short:
  v: Example Canonical
definition:
  v: Canonical URL this resource is an example of
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.resources.exampleCanonical
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: canonical
    l: canonical

id:
  v: SushiConfigLogicalModel.resources.groupingId
path:
  v: SushiConfigLogicalModel.resources.groupingId
short:
  v: Grouping ID
definition:
  v: ID of the group this resource belongs to
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.resources.groupingId
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.groups
path:
  v: SushiConfigLogicalModel.groups
short:
  v: Resource Groups
definition:
  v: Logical groupings of resources in the IG
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.groups
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.groups.id
path:
  v: SushiConfigLogicalModel.groups.id
representation:
  v: xmlAttr
short:
  v: Group ID
definition:
  v: Identifier for the group
min:
  v: 1
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: string
    l: string
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.groups.extension
path:
  v: SushiConfigLogicalModel.groups.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.groups.modifierExtension
path:
  v: SushiConfigLogicalModel.groups.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.groups.name
path:
  v: SushiConfigLogicalModel.groups.name
short:
  v: Group Name
definition:
  v: Human-readable name for the group
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.groups.name
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.groups.description
path:
  v: SushiConfigLogicalModel.groups.description
short:
  v: Group Description
definition:
  v: Description of the group
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.groups.description
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.groups.resources
path:
  v: SushiConfigLogicalModel.groups.resources
short:
  v: Group Resources
definition:
  v: List of resources in this group
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.groups.resources
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.global
path:
  v: SushiConfigLogicalModel.global
short:
  v: Global Profiles
definition:
  v: Global profile assignments
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.global
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.global.id
path:
  v: SushiConfigLogicalModel.global.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.global.extension
path:
  v: SushiConfigLogicalModel.global.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.global.modifierExtension
path:
  v: SushiConfigLogicalModel.global.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.global.type
path:
  v: SushiConfigLogicalModel.global.type
short:
  v: Resource Type
definition:
  v: FHIR resource type
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.global.type
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.global.profile
path:
  v: SushiConfigLogicalModel.global.profile
short:
  v: Profile URL
definition:
  v: URL of the profile to apply globally
min:
  v: 1
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.global.profile
  min:
    v: 1
  max:
    v: 1
type:
  code:
    v: canonical
    l: canonical

id:
  v: SushiConfigLogicalModel.meta
path:
  v: SushiConfigLogicalModel.meta
short:
  v: IG Metadata
definition:
  v: Additional metadata for the IG
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.meta
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.meta.id
path:
  v: SushiConfigLogicalModel.meta.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.meta.extension
path:
  v: SushiConfigLogicalModel.meta.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.meta.modifierExtension
path:
  v: SushiConfigLogicalModel.meta.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.meta.profile
path:
  v: SushiConfigLogicalModel.meta.profile
short:
  v: Meta Profiles
definition:
  v: Profiles this IG conforms to
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.meta.profile
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: canonical
    l: canonical

id:
  v: SushiConfigLogicalModel.contact
path:
  v: SushiConfigLogicalModel.contact
short:
  v: Contact Information
definition:
  v: Contact details for this IG
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.contact
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: ContactDetail
    l: ContactDetail

id:
  v: SushiConfigLogicalModel.useContext
path:
  v: SushiConfigLogicalModel.useContext
short:
  v: Use Context
definition:
  v: Context where this IG is intended to be used
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.useContext
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: UsageContext
    l: UsageContext

id:
  v: SushiConfigLogicalModel.jurisdiction
path:
  v: SushiConfigLogicalModel.jurisdiction
short:
  v: Jurisdiction
definition:
  v: Jurisdictions where this IG applies
min:
  v: 0
max:
  v: *
base:
  path:
    v: SushiConfigLogicalModel.jurisdiction
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: CodeableConcept
    l: CodeableConcept

id:
  v: SushiConfigLogicalModel.FSHOnly
path:
  v: SushiConfigLogicalModel.FSHOnly
short:
  v: FSH Only
definition:
  v: Whether to export only FSH resources without IG content
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.FSHOnly
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
    l: boolean

id:
  v: SushiConfigLogicalModel.applyExtensionMetadataToRoot
path:
  v: SushiConfigLogicalModel.applyExtensionMetadataToRoot
short:
  v: Apply Extension Metadata
definition:
  v: Whether to apply extension metadata to root elements
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.applyExtensionMetadataToRoot
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: boolean
    l: boolean

id:
  v: SushiConfigLogicalModel.instanceOptions
path:
  v: SushiConfigLogicalModel.instanceOptions
short:
  v: Instance Options
definition:
  v: Configuration for instance processing
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.instanceOptions
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element

id:
  v: SushiConfigLogicalModel.instanceOptions.id
path:
  v: SushiConfigLogicalModel.instanceOptions.id
representation:
  v: xmlAttr
short:
  v: Unique id for inter-element referencing
definition:
  v: Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
min:
  v: 0
max:
  v: 1
base:
  path:
    v: Element.id
  min:
    v: 0
  max:
    v: 1
type:
  extension:
    url:
      v: http://hl7.org/fhir/StructureDefinition/structuredefinition-fhir-type
      l: structuredefinition-fhir-type
    value: Url
      v: string
      l: string
  code:
    v: http://hl7.org/fhirpath/System.String
    l: System.String
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.instanceOptions.extension
path:
  v: SushiConfigLogicalModel.instanceOptions.extension
slicing:
  discriminator:
    type:
      v: value
    path:
      v: url
  description:
    v: Extensions are always sliced by (at least) url
  rules:
    v: open
short:
  v: Additional content defined by implementations
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
alias:
  v: extensions
alias:
  v: user content
min:
  v: 0
max:
  v: *
base:
  path:
    v: Element.extension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: false
is summary:
  v: false
mapping:
  identity:
    v: rim
  map:
    v: n/a

id:
  v: SushiConfigLogicalModel.instanceOptions.modifierExtension
path:
  v: SushiConfigLogicalModel.instanceOptions.modifierExtension
short:
  v: Extensions that cannot be ignored even if unrecognized
definition:
  v: May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions. Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
comment:
  v: There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
requirements:
  v: Modifier extensions allow for extensions that *cannot* be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the [definition of modifier extensions](http://hl7.org/fhir/R4/extensibility.html#modifierExtension).
alias:
  v: extensions
alias:
  v: user content
alias:
  v: modifiers
min:
  v: 0
max:
  v: *
base:
  path:
    v: BackboneElement.modifierExtension
  min:
    v: 0
  max:
    v: *
type:
  code:
    v: Extension
    l: Extension
constraint:
  key:
    v: ele-1
  severity:
    v: error
  human:
    v: All FHIR elements must have a @value or children
  expression:
    v: hasValue() or (children().count() > id.count())
  xpath:
    v: @value|f:*|h:div
  source:
    v: http://hl7.org/fhir/StructureDefinition/Element
    l: Element
constraint:
  key:
    v: ext-1
  severity:
    v: error
  human:
    v: Must have either extensions or value[x], not both
  expression:
    v: extension.exists() != value.exists()
  xpath:
    v: exists(f:extension)!=exists(f:*[starts-with(local-name(.), "value")])
  source:
    v: http://hl7.org/fhir/StructureDefinition/Extension
    l: Extension
is modifier:
  v: true
is modifier reason:
  v: Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
is summary:
  v: true
mapping:
  identity:
    v: rim
  map:
    v: N/A

id:
  v: SushiConfigLogicalModel.instanceOptions.setMetaProfile
path:
  v: SushiConfigLogicalModel.instanceOptions.setMetaProfile
short:
  v: Set Meta Profile
definition:
  v: When to automatically set meta.profile
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.instanceOptions.setMetaProfile
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code

id:
  v: SushiConfigLogicalModel.instanceOptions.setId
path:
  v: SushiConfigLogicalModel.instanceOptions.setId
short:
  v: Set ID
definition:
  v: When to automatically set id
min:
  v: 0
max:
  v: 1
base:
  path:
    v: SushiConfigLogicalModel.instanceOptions.setId
  min:
    v: 0
  max:
    v: 1
type:
  code:
    v: code
    l: code

element:
  id:
    v: SushiConfigLogicalModel
  path:
    v: SushiConfigLogicalModel
  short:
    v: SUSHI Configuration Logical Model
  definition:
    v: Logical model defining the structure of sushi-config.yaml files used for FHIR Implementation Guide configuration. This model captures the essential metadata and configuration parameters needed for IG publishing.
element:
  id:
    v: SushiConfigLogicalModel.id
  path:
    v: SushiConfigLogicalModel.id
  short:
    v: IG Identifier
  definition:
    v: Unique identifier for the IG, should match DAK id (e.g., smart.who.int.trust)
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: SushiConfigLogicalModel.canonical
  path:
    v: SushiConfigLogicalModel.canonical
  short:
    v: Canonical URL
  definition:
    v: Canonical URL for the IG, should match DAK publicationUrl (e.g., http://smart.who.int/trust)
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: url
      l: url
element:
  id:
    v: SushiConfigLogicalModel.name
  path:
    v: SushiConfigLogicalModel.name
  short:
    v: IG Name
  definition:
    v: Short name for the IG, should derive from DAK name (e.g., Trust)
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: SushiConfigLogicalModel.title
  path:
    v: SushiConfigLogicalModel.title
  short:
    v: IG Title
  definition:
    v: Full title of the IG, should match DAK title (e.g., WHO SMART Trust)
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: SushiConfigLogicalModel.description
  path:
    v: SushiConfigLogicalModel.description
  short:
    v: IG Description
  definition:
    v: Description of the IG, should match DAK description
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: SushiConfigLogicalModel.version
  path:
    v: SushiConfigLogicalModel.version
  short:
    v: IG Version
  definition:
    v: Version of the IG, should match DAK version
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: SushiConfigLogicalModel.status
  path:
    v: SushiConfigLogicalModel.status
  short:
    v: IG Status
  definition:
    v: Publication status of the IG
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: code
      l: code
  binding:
    strength:
      v: required
    value set:
      v: http://hl7.org/fhir/ValueSet/publication-status
      l: publication-status
element:
  id:
    v: SushiConfigLogicalModel.license
  path:
    v: SushiConfigLogicalModel.license
  short:
    v: License
  definition:
    v: License under which the IG is published, should match DAK license
  min:
    v: 1
  max:
    v: 1
  type:
    code:
      v: code
      l: code
  binding:
    strength:
      v: required
    value set:
      v: http://hl7.org/fhir/ValueSet/spdx-license
      l: spdx-license
element:
  id:
    v: SushiConfigLogicalModel.copyrightYear
  path:
    v: SushiConfigLogicalModel.copyrightYear
  short:
    v: Copyright Year
  definition:
    v: Year or year range for copyright, should match DAK
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: string
      l: string
element:
  id:
    v: SushiConfigLogicalModel.experimental
  path:
    v: SushiConfigLogicalModel.experimental
  short:
    v: Experimental
  definition:
    v: Whether this IG is experimental, should match DAK
  min:
    v: 0
  max:
    v: 1
  type:
    code:
      v: boolean
      l: boolean
element:
  id:
    v: SushiConfigLogicalModel.releaseLabel
  path:
    v: SushiConfigLogicalModel.releaseLabel
  short:
    v: Release Label
  definition:
    v: Label for this release (e.g., ci-build, draft, ballot)
  min:
    v: 0

v: 1

code:
  v: string
  l: string

id:
  v: SushiConfigLogicalModel.publisher
path:
  v: SushiConfigLogicalModel.publisher
short:
  v: Publisher
definition:
  v: Organization responsible for publishing the IG
min:
  v: 1
max:
  v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.publisher.name
path:
  v: SushiConfigLogicalModel.publisher.name
short:
  v: Publisher Name
definition:
  v: Name of the publishing organization, should match DAK publisher name
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.publisher.url
path:
  v: SushiConfigLogicalModel.publisher.url
short:
  v: Publisher URL
definition:
  v: URL of the publishing organization, should match DAK publisher URL
min:
  v: 0
max:
  v: 1
type:
  code:
    v: url
    l: url

id:
  v: SushiConfigLogicalModel.publisher.email
path:
  v: SushiConfigLogicalModel.publisher.email
short:
  v: Publisher Email
definition:
  v: Contact email for the publisher
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.fhirVersion
path:
  v: SushiConfigLogicalModel.fhirVersion
short:
  v: FHIR Version
definition:
  v: Version of FHIR this IG is built on
min:
  v: 1
max:
  v: 1
type:
  code:
    v: code
    l: code
binding:
  strength:
    v: required
  value set:
    v: http://hl7.org/fhir/ValueSet/FHIR-version
    l: FHIR-version

id:
  v: SushiConfigLogicalModel.dependencies
path:
  v: SushiConfigLogicalModel.dependencies
short:
  v: Dependencies
definition:
  v: Other IGs or packages this IG depends on
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.dependencies.id
path:
  v: SushiConfigLogicalModel.dependencies.id
short:
  v: Dependency Package ID
definition:
  v: Package ID of the dependency
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.dependencies.version
path:
  v: SushiConfigLogicalModel.dependencies.version
short:
  v: Dependency Version
definition:
  v: Version of the dependency
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.dependencies.reason
path:
  v: SushiConfigLogicalModel.dependencies.reason
short:
  v: Dependency Reason
definition:
  v: Reason for this dependency
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.pages
path:
  v: SushiConfigLogicalModel.pages
short:
  v: Pages
definition:
  v: Custom pages included in the IG
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.pages.filename
path:
  v: SushiConfigLogicalModel.pages.filename
short:
  v: Page Filename
definition:
  v: Filename of the page (e.g., index.md)
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.pages.title
path:
  v: SushiConfigLogicalModel.pages.title
short:
  v: Page Title
definition:
  v: Title of the page
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu
path:
  v: SushiConfigLogicalModel.menu
short:
  v: Menu Structure
definition:
  v: Navigation menu structure for the IG
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.menu.title
path:
  v: SushiConfigLogicalModel.menu.title
short:
  v: Menu Title
definition:
  v: Title of the menu item
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu.url
path:
  v: SushiConfigLogicalModel.menu.url
short:
  v: Menu URL
definition:
  v: URL of the menu item
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu.subItems
path:
  v: SushiConfigLogicalModel.menu.subItems
short:
  v: Sub Menu Items
definition:
  v: Sub-menu items
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.menu.subItems.title
path:
  v: SushiConfigLogicalModel.menu.subItems.title
short:
  v: Sub-item Title
definition:
  v: Title of the sub-menu item
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.menu.subItems.url
path:
  v: SushiConfigLogicalModel.menu.subItems.url
short:
  v: Sub-item URL
definition:
  v: URL of the sub-menu item
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources
path:
  v: SushiConfigLogicalModel.resources
short:
  v: Resource Definitions
definition:
  v: Explicit resource definitions for the IG
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.resources.reference
path:
  v: SushiConfigLogicalModel.resources.reference
short:
  v: Resource Reference
definition:
  v: Reference to the resource (used as YAML key)
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources.name
path:
  v: SushiConfigLogicalModel.resources.name
short:
  v: Resource Name
definition:
  v: Human-readable name for the resource
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources.description
path:
  v: SushiConfigLogicalModel.resources.description
short:
  v: Resource Description
definition:
  v: Description of the resource
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.resources.exampleBoolean
path:
  v: SushiConfigLogicalModel.resources.exampleBoolean
short:
  v: Is Example
definition:
  v: Whether this resource is an example
min:
  v: 0
max:
  v: 1
type:
  code:
    v: boolean
    l: boolean

id:
  v: SushiConfigLogicalModel.resources.exampleCanonical
path:
  v: SushiConfigLogicalModel.resources.exampleCanonical
short:
  v: Example Canonical
definition:
  v: Canonical URL this resource is an example of
min:
  v: 0
max:
  v: 1
type:
  code:
    v: canonical
    l: canonical

id:
  v: SushiConfigLogicalModel.resources.groupingId
path:
  v: SushiConfigLogicalModel.resources.groupingId
short:
  v: Grouping ID
definition:
  v: ID of the group this resource belongs to
min:
  v: 0
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.groups
path:
  v: SushiConfigLogicalModel.groups
short:
  v: Resource Groups
definition:
  v: Logical groupings of resources in the IG
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.groups.id
path:
  v: SushiConfigLogicalModel.groups.id
short:
  v: Group ID
definition:
  v: Identifier for the group
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.groups.name
path:
  v: SushiConfigLogicalModel.groups.name
short:
  v: Group Name
definition:
  v: Human-readable name for the group
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.groups.description
path:
  v: SushiConfigLogicalModel.groups.description
short:
  v: Group Description
definition:
  v: Description of the group
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.groups.resources
path:
  v: SushiConfigLogicalModel.groups.resources
short:
  v: Group Resources
definition:
  v: List of resources in this group
min:
  v: 0
max:
  v: *
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.global
path:
  v: SushiConfigLogicalModel.global
short:
  v: Global Profiles
definition:
  v: Global profile assignments
min:
  v: 0
max:
  v: *
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.global.type
path:
  v: SushiConfigLogicalModel.global.type
short:
  v: Resource Type
definition:
  v: FHIR resource type
min:
  v: 1
max:
  v: 1
type:
  code:
    v: string
    l: string

id:
  v: SushiConfigLogicalModel.global.profile
path:
  v: SushiConfigLogicalModel.global.profile
short:
  v: Profile URL
definition:
  v: URL of the profile to apply globally
min:
  v: 1
max:
  v: 1
type:
  code:
    v: canonical
    l: canonical

id:
  v: SushiConfigLogicalModel.meta
path:
  v: SushiConfigLogicalModel.meta
short:
  v: IG Metadata
definition:
  v: Additional metadata for the IG
min:
  v: 0
max:
  v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.meta.profile
path:
  v: SushiConfigLogicalModel.meta.profile
short:
  v: Meta Profiles
definition:
  v: Profiles this IG conforms to
min:
  v: 0
max:
  v: *
type:
  code:
    v: canonical
    l: canonical

id:
  v: SushiConfigLogicalModel.contact
path:
  v: SushiConfigLogicalModel.contact
short:
  v: Contact Information
definition:
  v: Contact details for this IG
min:
  v: 0
max:
  v: *
type:
  code:
    v: ContactDetail
    l: ContactDetail

id:
  v: SushiConfigLogicalModel.useContext
path:
  v: SushiConfigLogicalModel.useContext
short:
  v: Use Context
definition:
  v: Context where this IG is intended to be used
min:
  v: 0
max:
  v: *
type:
  code:
    v: UsageContext
    l: UsageContext

id:
  v: SushiConfigLogicalModel.jurisdiction
path:
  v: SushiConfigLogicalModel.jurisdiction
short:
  v: Jurisdiction
definition:
  v: Jurisdictions where this IG applies
min:
  v: 0
max:
  v: *
type:
  code:
    v: CodeableConcept
    l: CodeableConcept

id:
  v: SushiConfigLogicalModel.FSHOnly
path:
  v: SushiConfigLogicalModel.FSHOnly
short:
  v: FSH Only
definition:
  v: Whether to export only FSH resources without IG content
min:
  v: 0
max:
  v: 1
type:
  code:
    v: boolean
    l: boolean

id:
  v: SushiConfigLogicalModel.applyExtensionMetadataToRoot
path:
  v: SushiConfigLogicalModel.applyExtensionMetadataToRoot
short:
  v: Apply Extension Metadata
definition:
  v: Whether to apply extension metadata to root elements
min:
  v: 0
max:
  v: 1
type:
  code:
    v: boolean
    l: boolean

id:
  v: SushiConfigLogicalModel.instanceOptions
path:
  v: SushiConfigLogicalModel.instanceOptions
short:
  v: Instance Options
definition:
  v: Configuration for instance processing
min:
  v: 0
max:
  v: 1
type:
  code:
    v: BackboneElement
    l: BackboneElement

id:
  v: SushiConfigLogicalModel.instanceOptions.setMetaProfile
path:
  v: SushiConfigLogicalModel.instanceOptions.setMetaProfile
short:
  v: Set Meta Profile
definition:
  v: When to automatically set meta.profile
min:
  v: 0
max:
  v: 1
type:
  code:
    v: code
    l: code

id:
  v: SushiConfigLogicalModel.instanceOptions.setId
path:
  v: SushiConfigLogicalModel.instanceOptions.setId
short:
  v: Set ID
definition:
  v: When to automatically set id
min:
  v: 0
max:
  v: 1
type:
  code:
    v: code
    l: code