FHIR IG Statistics: StructureDefinition/MessageHeader_OE_Eng.StructureDefinition
Resources that use this resource
Resources that this resource uses
Narrative
No narrative content found in resource
Source
{
"resourceType": "StructureDefinition",
"url": "https://eng.it/fhir/StructureDefinition/MessageHeader_OE_Eng",
"name": "MessageHeader_OE_Eng",
"status": "draft",
"date": "2023-05-17T10:25:57.9489466+00:00",
"fhirVersion": "4.0.1",
"kind": "resource",
"abstract": false,
"type": "MessageHeader",
"baseDefinition": "http://hl7.org/fhir/StructureDefinition/MessageHeader",
"derivation": "constraint",
"differential": {
"element": [
{
"id": "MessageHeader",
"path": "MessageHeader",
"constraint": [
{
"key": "key-1",
"severity": "error",
"human": "verifica name source MessageHeader",
"expression": "(id.substring(0,%resource.id.indexOf('.'))).lower() = (source.name).lower()"
},
{
"key": "key-2",
"severity": "error",
"human": "verifica source endpoint MessageHeader",
"expression": "(source.endpoint).lower() = 'http://' + (id.substring(0,%resource.id.indexOf('.'))).lower() + '.eng.it'"
},
{
"key": "key-3",
"severity": "error",
"human": "verifica destination name MessageHeader",
"expression": "MessageHeader.destination.name.contains(%resource.event.code)"
},
{
"key": "key-4",
"severity": "error",
"human": "verifica destination endpoint MessageHeader",
"expression": "((MessageHeader.destination.endpoint.lower()).replace('hc40-','')).lower().startsWith(('http://' + (((%resource.destination.name.lower()).replace('hc40-','')).substring(0,((%resource.destination.name.lower()).replace('hc40-','')).indexOf('-')))+ '.eng.it/' + (MessageHeader.event.code).lower()).lower())"
}
]
},
{
"id": "MessageHeader.id",
"path": "MessageHeader.id",
"short": "Id logico per questa risorsa",
"definition": "Identifica la risorsa all'interno del dominio. \r\nSarà valorizzata con il formalismo:\r\n{spring_name_application}.id",
"comment": "Dove spring_name_application è la sorgente del messaggio (source.name)"
},
{
"id": "MessageHeader.extension",
"path": "MessageHeader.extension",
"slicing": {
"discriminator": [
{
"type": "value",
"path": "url"
}
],
"rules": "open"
},
"min": 0
},
{
"id": "MessageHeader.extension:operator",
"path": "MessageHeader.extension",
"sliceName": "operator",
"min": 0,
"max": "1",
"type": [
{
"code": "Extension",
"profile": [
"http://cct.eng.it/FHIR/schema/messageHeader-operator"
]
}
],
"isModifier": false
},
{
"id": "MessageHeader.event[x]",
"path": "MessageHeader.event[x]",
"short": "Codice dell'evento che questo messaggio rappresenta o link alla definizione dell'evento",
"definition": "Elemento attraverso cui è possibile inserire la codifica rappresentativa della tipologia del messaggio",
"type": [
{
"code": "Coding"
}
]
},
{
"id": "MessageHeader.event[x].system",
"path": "MessageHeader.event[x].system",
"short": "Identità del sistema terminologico",
"definition": "L'identificazione del sistema di codice che definisce il significato del simbolo nel codice.",
"comment": "L'URI può essere un OID (urn:oid:...) o un UUID (urn:uuid:...). Gli OID e gli UUID DEVONO essere riferimenti al registro OID di HL7. Altrimenti, l'URI deve provenire dall'elenco di URI speciali definiti da HL7 per FHIR o deve fare riferimento a qualche definizione che stabilisca il sistema in modo chiaro e non ambiguo.",
"fixedUri": "http://ihub.eng.it/fhir/message-events"
},
{
"id": "MessageHeader.event[x].code",
"path": "MessageHeader.event[x].code",
"short": "Simbolo nella sintassi definita dal sistema",
"definition": "I codici sono definiti per le varie integrazioni rispetto ai casi d’uso da implementare"
},
{
"id": "MessageHeader.event[x].display",
"path": "MessageHeader.event[x].display",
"short": "Rappresentazione definita dal sistema",
"definition": "Una rappresentazione del significato del codice nel sistema, secondo le regole del sistema.",
"comment": "Si noti che le stringhe FHIR NON devono superare la dimensione di 1MB."
},
{
"id": "MessageHeader.destination",
"path": "MessageHeader.destination",
"short": "Destinazione messaggio",
"definition": "Elemento che contiene l’applicazione destinataria del messaggio",
"comment": "Dovrebbe esserci almeno una destinazione, ma in alcune circostanze il sistema di origine non è a conoscenza di un particolare sistema di destinazione."
},
{
"id": "MessageHeader.destination.name",
"path": "MessageHeader.destination.name",
"short": "Nome del sistema",
"definition": "Nome leggibile per il sistema di destinazione.",
"comment": "Se la destination è IHub, valorizzare con:\r\n\r\nIHub-{eventCoding.code}\r\n\r\nSe la destination è un modulo applicativo, IHub valorizzerà tale elemento come:\r\n\r\n{spring_name_application}-{eventCoding.code}\r\n\r\nNei casi in cui la destination è IHub, e vi è la necessità di esplicitare informazioni aggiuntive rispetto al contesto (come il caso applicativo OE), è possibile aggiungere una parte variabile all'elemento, con il seguente formalismo:\r\n\r\nIHub-{eventCoding.code}-[contesto]\r\n\r\ndove la parte [contesto] è da concordare con il modulo applicativo che gestisce l'evento."
},
{
"id": "MessageHeader.destination.endpoint",
"path": "MessageHeader.destination.endpoint",
"short": "Indirizzo o id di destinazione effettivo",
"definition": "Indica la destinazione del messaggio.",
"comment": "Se la destination è IHub, valorizzare con:\r\n\r\nhttp://ihub.eng.it/{eventCoding.code}\r\n\r\nSe la destination è un modulo applicativo, IHub valorizzerà tale elemento con:\r\n\r\nhttp://{spring_name_application}.eng.it/{eventCoding.code}\r\n\r\nNei casi in cui la destination è IHub, e vi è la necessità di esplicitare informazioni aggiuntive rispetto al contesto (caso applicativo OE), è possibile aggiungere una parte variabile all'elemento, con il seguente formalismo:\r\n\r\nhttp://ihub.eng.it/{eventCoding.code}/[contesto]\r\n\r\ndove la parte [contesto] è da concordare con il modulo applicativo che gestisce l'evento."
},
{
"id": "MessageHeader.source",
"path": "MessageHeader.source",
"short": "Sorgente del messaggio",
"definition": "Elemento che contiene l’applicazione sorgente del messaggio",
"comment": "Leggere i commenti in name ed endpoint, per capire come valorizzare questi campi."
},
{
"id": "MessageHeader.source.name",
"path": "MessageHeader.source.name",
"short": "Nome del sistema",
"definition": "Nome leggibile per il sistema di origine.",
"comment": "Se la source è IHub, l’elemento sarà valorizzato con:\r\n\r\n'IHub’\r\n\r\nSe la source è un modulo applicativo, l’elemento sarà valorizzato con con lo spring_name_application.\r\n\r\nQuesto spring name application coincide con la parte iniziale dell'id."
},
{
"id": "MessageHeader.source.endpoint",
"path": "MessageHeader.source.endpoint",
"short": "Indirizzo o id di origine del messaggio effettivo",
"definition": "Identifica la destinazione di instradamento a cui inviare i riscontri.",
"comment": "Se la source è IHub, l’elemento sarà valorizzato con:\r\n\r\nhttp://ihub.eng.it\r\n\r\nSe la source è un modulo applicativo, l’elemento sarà valorizzato con:\r\n\r\nhttp://{spring_name_application}.eng.it"
},
{
"id": "MessageHeader.response",
"path": "MessageHeader.response",
"short": "Se si tratta di una risposta a un messaggio precedente",
"definition": "Backbone element che contiene Informazioni sul messaggio a cui questo messaggio è una risposta.",
"comment": "Presente solo se questo messaggio è una risposta."
}
]
}
}