PackagesCanonicalsLogsProblems
    Packages
    se.electronichealth.fhir.merier.r5@0.1.3-beta
    http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er
description: This profile holds information about a technical address to an API.
package_name: se.electronichealth.fhir.merier.r5
derivation: constraint
name: EndpointEr
type: Endpoint
elements:
  extension:
    type: Extension
    mustSupport: true
    url: http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-associated-server-er
    index: 0
    slicing:
      slices:
        associatedServer:
          match: {}
          schema:
            type: Extension
            mustSupport: true
            url: http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-associated-server-er
            index: 0
            extensions:
              associatedServerType:
                url: null
                index: 1
                elements:
                  url: {mustSupport: true, index: 2}
                  value:
                    pattern:
                      type: Coding
                      value: {code: authorization, system: 'http://electronichealth.se/CodeSystem/associated-server-types'}
                    mustSupport: true
                    choices: []
                    index: 4
                  value[x]:
                    elements:
                      system: {mustSupport: true, index: 5}
                      code: {mustSupport: true, index: 6}
                    required: [system, code]
                required: [value]
              serverURL:
                url: null
                index: 7
                elements:
                  url: {mustSupport: true, index: 8}
                  value:
                    constraint:
                      endpoint-security-url-er-1: {human: 'The security url of an Endpoint must start with https:// followed by a combination of alphanumerical characters, slashes (/) and/or full stops (.)', source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: '$this.matches(''^https:\/\/[\/\.A-Öa-ö0-9]+$'')'}
                      endpoint-security-url-er-2: {human: The security url of an Endpoint must be a maximum of 255 characters, source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: $this.length() <= 255}
                    mustSupport: true
                    choices: []
                    index: 10
                required: [value]
            elements:
              extension:
                index: 1
                slicing:
                  slices:
                    associatedServerType:
                      match: {}
                      schema:
                        index: 1
                        elements:
                          url: {mustSupport: true, index: 2}
                          value:
                            pattern:
                              type: Coding
                              value: {code: authorization, system: 'http://electronichealth.se/CodeSystem/associated-server-types'}
                            mustSupport: true
                            choices: []
                            index: 4
                          value[x]:
                            elements:
                              system: {mustSupport: true, index: 5}
                              code: {mustSupport: true, index: 6}
                            required: [system, code]
                        required: [value]
                    serverURL:
                      match: {}
                      schema:
                        index: 7
                        elements:
                          url: {mustSupport: true, index: 8}
                          value:
                            constraint:
                              endpoint-security-url-er-1: {human: 'The security url of an Endpoint must start with https:// followed by a combination of alphanumerical characters, slashes (/) and/or full stops (.)', source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: '$this.matches(''^https:\/\/[\/\.A-Öa-ö0-9]+$'')'}
                              endpoint-security-url-er-2: {human: The security url of an Endpoint must be a maximum of 255 characters, source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: $this.length() <= 255}
                            mustSupport: true
                            choices: []
                            index: 10
                        required: [value]
  status:
    binding: {strength: required, valueSet: 'http://electronichealth.se/fhir/NDI/ValueSet/er-endpoint-statuses'}
    mustSupport: true
    index: 11
  connectionType:
    mustSupport: true
    index: 12
    elements:
      coding:
        mustSupport: true
        index: 13
        elements:
          system: {mustSupport: true, index: 14}
          code: {mustSupport: true, index: 15}
        required: [system, code]
    required: [coding]
    slicing:
      rules: open
      ordered: false
      description: Slice on connectionType based on value set binding
      discriminator:
      - {path: $this, type: value}
      min: null
      slices:
        securityMethod:
          match: {}
          schema:
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/ValueSet/restful-security-service'}
            mustSupport: true
            index: 16
            elements:
              coding:
                mustSupport: true
                index: 17
                elements:
                  system:
                    pattern: {type: Uri, value: 'http://hl7.org/fhir/restful-security-service'}
                    mustSupport: true
                    index: 18
                  code: {mustSupport: true, index: 19}
                required: [system, code]
            required: [coding]
        protocol:
          match: {}
          schema:
            binding: {strength: required, valueSet: 'http://electronichealth.se/fhir/NDI/ValueSet/er-endpoint-connection-type'}
            mustSupport: true
            index: 20
            elements:
              coding:
                mustSupport: true
                index: 21
                elements:
                  system: {mustSupport: true, index: 22}
                  code: {mustSupport: true, index: 23}
                required: [system, code]
            required: [coding]
  name:
    constraint:
      endpoint-name-er-1: {human: 'The name of an Endpoint must contain alphanumerical characters, spaces and/or one or more of the following special characters: _-.,\''()&/', source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: '$this.matches(''^[A-Öa-ö0-9 _-.,\''()&/]+$'')'}
      endpoint-name-er-2: {human: The name of an Endpoint must be a maximum of 255 characters, source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: $this.length() <= 255}
    mustSupport: true
    index: 24
  payload:
    mustSupport: true
    index: 25
    extensions:
      apiSpecification: {url: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-payload-actor-definition-er', min: 1, max: 1, type: Extension, mustSupport: true, index: 27}
    elements:
      extension:
        index: 26
        slicing:
          slices:
            apiSpecification:
              match: {}
              schema: {type: Extension, mustSupport: true, url: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-payload-actor-definition-er', index: 27}
              min: 1
              max: 1
    required: [extension]
  address: {mustSupport: true, index: 28}
package_version: 0.1.3-beta
extensions:
  associatedServer:
    url: http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-associated-server-er
    type: Extension
    mustSupport: true
    index: 0
    extensions:
      associatedServerType:
        url: null
        index: 1
        elements:
          url: {mustSupport: true, index: 2}
          value:
            pattern:
              type: Coding
              value: {code: authorization, system: 'http://electronichealth.se/CodeSystem/associated-server-types'}
            mustSupport: true
            choices: []
            index: 4
          value[x]:
            elements:
              system: {mustSupport: true, index: 5}
              code: {mustSupport: true, index: 6}
            required: [system, code]
        required: [value]
      serverURL:
        url: null
        index: 7
        elements:
          url: {mustSupport: true, index: 8}
          value:
            constraint:
              endpoint-security-url-er-1: {human: 'The security url of an Endpoint must start with https:// followed by a combination of alphanumerical characters, slashes (/) and/or full stops (.)', source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: '$this.matches(''^https:\/\/[\/\.A-Öa-ö0-9]+$'')'}
              endpoint-security-url-er-2: {human: The security url of an Endpoint must be a maximum of 255 characters, source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: $this.length() <= 255}
            mustSupport: true
            choices: []
            index: 10
        required: [value]
    elements:
      extension:
        index: 1
        slicing:
          slices:
            associatedServerType:
              match: {}
              schema:
                index: 1
                elements:
                  url: {mustSupport: true, index: 2}
                  value:
                    pattern:
                      type: Coding
                      value: {code: authorization, system: 'http://electronichealth.se/CodeSystem/associated-server-types'}
                    mustSupport: true
                    choices: []
                    index: 4
                  value[x]:
                    elements:
                      system: {mustSupport: true, index: 5}
                      code: {mustSupport: true, index: 6}
                    required: [system, code]
                required: [value]
            serverURL:
              match: {}
              schema:
                index: 7
                elements:
                  url: {mustSupport: true, index: 8}
                  value:
                    constraint:
                      endpoint-security-url-er-1: {human: 'The security url of an Endpoint must start with https:// followed by a combination of alphanumerical characters, slashes (/) and/or full stops (.)', source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: '$this.matches(''^https:\/\/[\/\.A-Öa-ö0-9]+$'')'}
                      endpoint-security-url-er-2: {human: The security url of an Endpoint must be a maximum of 255 characters, source: 'http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er', severity: error, expression: $this.length() <= 255}
                    mustSupport: true
                    choices: []
                    index: 10
                required: [value]
class: profile
kind: resource
url: http://electronichealth.se/fhir/NDI/StructureDefinition/endpoint-er
base: http://hl7.org/fhir/StructureDefinition/Endpoint
version: 0.1.0
required: [name]