This page is part of the Making EHR Data MOre available for Research and Public Health (MedMorph) (v0.1.0: STU 1 Ballot 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions
{
"resourceType" : "CapabilityStatement",
"id" : "medmorph-backend-service-app",
"text" : {
"status" : "generated",
"div" : "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n <h2>BackendServiceApp</h2>\n <p>(Requirements Definition Capability Statement)</p>\n <p>Canonical URL: http://hl7.org/fhir/us/medmorph/CapabilityStatement/medmorph-backend-service-app</p>\n <p>Published by: <b>HL7 International - Public Health Work Group</b>\n </p>\n <p>This profile defines the expected capabilities of the <i>MedMorph Backend Service App </i> actor. \n This actor is responsible for consuming Knowledge Artifacts created by Public Health Agencies and/or Research Organizations, subscribing to topics in EHR using Named Events, Creating the submission reports to be sent to the PHA and finally submitting the reports to the PHA/Research Organization. </p>\n <h2>General</h2>\n <div class=\"table-wrapper\">\n <table>\n <tbody>\n <tr>\n <th>FHIR Version:</th>\n <td>4.0.1</td>\n </tr>\n <tr>\n <th>Supported formats:</th>\n <td>json</td>\n </tr>\n </tbody>\n </table>\n </div>\n <h2>REST behavior</h2>\n <p>The primary focus of the Backend Service App is to consuming Knowledge Artifacts created by Public Health Agencies and/or Research Organizations, subscribing to topics in EHR using Named Events, Creating the submission reports to be sent to the PHA and finally submitting the reports to the PHA/Research Organization.</p>\n <p>\n <b>Security:</b>\n </p>\n <p>Implementations must meet the general security requirements documented in FHIR <a href=\"http://hl7.org/fhir/security.html\">Security guidance</a>.</p>\n <p>In addition the Backend Service App needs to meet the security requirements as outlined in the <a href=\"spec.html#smart-on-fhir-backend-services-authorization\">Formal Specification - Security Section.</a></p>\n <h3>Resource summary</h3>\n <div class=\"table-wrapper\">\n <table class=\"grid\">\n <thead>\n <tr>\n <th>Resource</th>\n <th>Search</th>\n <th>Read</th>\n <th>Read Version</th>\n <th>Instance History</th>\n <th>Resource History</th>\n <th>Create</th>\n <th>Update</th>\n <th>Delete</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>PlanDefinition (<a href=\"StructureDefinition-us-ph-plandefinition.html\">Profile</a>)</th>\n <td>\n <a href=\"#PlanDefinition-search-type\" title=\"Allows a user to search for existing PlanDefinition instances\">SHALL</a>\n </td>\n <td>\n <a href=\"#PlanDefinition-read\" title=\"Allows retrieval of a specific PlanDefinition Resource instance \">SHALL</a>\n </td>\n <td>\n <a href=\"#PlanDefinition-vread\" title=\"Allows retrieval of a specific PlanDefinition Resource instance version\">SHOULD</a>\n </td>\n <td> \n </td>\n <td>\n </td>\n <td>\n </td>\n <td>\n </td>\n <td/>\n </tr>\n <tr>\n <th>Subscription (<a href=\"http://hl7.org/fhir/R4/subscription.html\">Profile</a>)</th>\n <td>\n </td>\n <td>\n <a href=\"#Subscription-read\" title=\"Allows retrieval of a specific Subscription Resource instance \">SHALL</a>\n </td>\n <td>\n </td>\n <td> \n </td>\n <td>\n </td>\n <td>\n \t <a href=\"#Subscription-create\" title=\"Allows creation of a specific Subscription Resource instance \">SHALL</a>\n </td>\n <td>\n \t<a href=\"#Subscription-update\" title=\"Allows Updating of a specific Subscription Resource instance \">SHALL</a>\n </td>\n <td>\n <a href=\"#Subscription-delete\" title=\"Allows deletion of a specific Subscription Resource instance version\">SHALL</a>\n </td>\n </tr>\n <tr>\n <th>Reporting Bundle (<a href=\"StructureDefinition-us-ph-reporting-bundle.html\">Profile</a>)</th>\n <td>\n \n </td>\n <td>\n \n </td>\n <td>\n \n </td>\n <td> \n </td>\n <td>\n </td>\n <td>\n \t <a href=\"#ReportingBundle-create\" title=\"Allows creation of a specific Reporting Bundle Resource instance \">SHALL</a>\n </td>\n <td>\n </td>\n <td/>\n </tr>\n <tr>\n <th>Content Bundle (<a href=\"StructureDefinition-us-ph-content-bundle.html\">Profile</a>)</th>\n <td>\n \n </td>\n <td>\n \n </td>\n <td>\n \n </td>\n <td> \n </td>\n <td>\n </td>\n <td>\n \t <a href=\"#ContentBundle-create\" title=\"Allows creation of a specific content Bundle Resource instance \">SHALL</a>\n </td>\n <td>\n </td>\n <td/>\n </tr>\n <tr>\n <th>MessageHeader (<a href=\"StructureDefinition-us-ph-messageheader.html\">Profile</a>)</th>\n <td>\n \n </td>\n <td>\n \n </td>\n <td>\n \n </td>\n <td> \n </td>\n <td>\n </td>\n <td>\n \t <a href=\"#MessageHeader-create\" title=\"Allows creation of a specific MessageHeader Resource instance \">SHALL</a>\n </td>\n <td>\n </td>\n <td/>\n </tr>\n </tbody>\n </table>\n </div>\n \n <h3>FHIR Operations summary</h3>\n <p>The following FHIR operations SHALL be supported by the Backend Service App.</p>\n \n <ul>\n <li>\n <a href=\"OperationDefinition-Bundle-pseudonymize.html\">Bundle pseudonymize</a>\n </li>\n <li>\n <a href=\"OperationDefinition-Bundle-anonymize.html\">Bundle anonymize</a>\n </li>\n <li>\n <a href=\"OperationDefinition-Bundle-de-identify.html\">Bundle de-identify</a>\n </li>\n <li>\n <a href=\"OperationDefinition-Bundle-re-identify.html\">Bundle re-identify</a>\n </li>\n <li>\n <a href=\"https://www.hl7.org/fhir/messageheader-operation-process-message.html\">Bundle process-message</a>\n </li>\n </ul>\n <br/>\n <br/>\n <h3>\n <a href=\"http://hl7.org/fhir/R4/plandefinition.html\">PlanDefinition</a>\n </h3>\n <p>Profile: <a href=\"StructureDefinition-us-ph-plandefinition.html\">http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-plandefinition</a>\n </p>\n <h4>Interactions</h4>\n <div class=\"table-wrapper\">\n <table class=\"list\">\n <thead>\n <tr>\n <th>Name</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>\n <a name=\"PlanDefinition-search-type\"> </a>\n <span>search-type</span>\n </th>\n <td>\n <p>Allows discovery of existing PlanDefinition instances representing Knowledge Artifacts.</p>\n </td>\n </tr>\n <tr>\n <th>\n <a name=\"PlanDefinition-read\"> </a>\n <span>read</span>\n </th>\n <td>\n <p>Allows retrieval of a specific PlanDefinition instance.</p>\n </td>\n </tr>\n <tr>\n <th>\n <a name=\"PlanDefinition-vread\"> </a>\n <span>vread</span>\n </th>\n <td>\n <p>Allows retrieval of a historical version of a PlanDefinition instance.</p>\n </td>\n </tr>\n <tr>\n <th>\n <a name=\"PlanDefinition-create\"> </a>\n <span>create</span>\n </th>\n <td>\n <p>Allows creation of PlanDefinition instances</p>\n </td>\n </tr> \n <tr>\n <th>\n <a name=\"PlanDefinition-update\"> </a>\n <span>update</span>\n </th>\n <td>\n <p>Allows Updating of PlanDefinition instances</p>\n </td>\n </tr> \n </tbody>\n </table>\n </div>\n <br/>\n <br/>\n <h4>Search</h4>\n <div class=\"table-wrapper\">\n <table class=\"list\">\n <thead>\n <tr>\n <th>Parameter</th>\n <th>Type</th>\n <th>Definition & Chaining</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>identifier</th>\n <td>token</td>\n <td>Search using identifiers as allowed according to the FHIR specification.</td>\n </tr>\n <tr>\n <th>name</th>\n <td>string</td>\n <td>Search using PlanDefinition name.</td>\n </tr>\n <tr>\n <th>publisher</th>\n <td>string</td>\n <td>Search using publisher name.</td>\n </tr>\n <tr>\n <th>title</th>\n <td>string</td>\n <td>Search using title.</td>\n </tr>\n <tr>\n <th>version</th>\n <td>string</td>\n <td>Search using version.</td>\n </tr>\n <tr>\n <th>name and version</th>\n <td>string, string</td>\n <td>Search using name and version.</td>\n </tr>\n </tbody>\n </table>\n </div> \n <br/>\n <br/>\n <h3>\n <a href=\"http://hl7.org/fhir/R4/subscription.html\">Subscription</a>\n </h3>\n <p>Profile: None\n </p>\n <h4>Interactions</h4>\n <div class=\"table-wrapper\">\n <table class=\"list\">\n <thead>\n <tr>\n <th>Name</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>\n <a name=\"Subscription-read\"> </a>\n <span>read</span>\n </th>\n <td>\n <p>Allows retrieval of a specific Subscription instance.</p>\n </td>\n </tr>\n <tr>\n <th>\n <a name=\"Subscription-create\"> </a>\n <span>create</span>\n </th>\n <td>\n <p>Allows creation of Subscription instances</p>\n </td>\n </tr> \n <tr>\n <th>\n <a name=\"Subscription-update\"> </a>\n <span>update</span>\n </th>\n <td>\n <p>Allows Updating of Subscription instances</p>\n </td>\n </tr> \n <tr>\n <th>\n <a name=\"Subscription-delete\"> </a>\n <span>update</span>\n </th>\n <td>\n <p>Allows Deletion of Subscription instances</p>\n </td>\n </tr> \n </tbody>\n </table>\n </div>\n <br/>\n <br/> \n <h3>\n <a href=\"http://hl7.org/fhir/R4/bundle.html\">Bundle</a>\n </h3>\n <p>Profile: <a href=\"StructureDefinition-us-ph-reporting-bundle.html\">http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-reporting-bundle</a>\n </p>\n <h4>Interactions</h4>\n <div class=\"table-wrapper\">\n <table class=\"list\">\n <thead>\n <tr>\n <th>Name</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>\n <a name=\"ReportingBundle-create\"> </a>\n <span>create</span>\n </th>\n <td>\n <p>Allows creation of ReportingBundle instances</p>\n </td>\n </tr> \n </tbody>\n </table>\n </div>\n <br/>\n <br/> \n <h3>\n <a href=\"http://hl7.org/fhir/R4/bundle.html\">Bundle</a>\n </h3>\n <p>Profile: <a href=\"StructureDefinition-us-ph-content-bundle.html\">http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-content-bundle</a>\n </p>\n <h4>Interactions</h4>\n <div class=\"table-wrapper\">\n <table class=\"list\">\n <thead>\n <tr>\n <th>Name</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>\n <a name=\"ContentBundle-create\"> </a>\n <span>create</span>\n </th>\n <td>\n <p>Allows creation of ContentBundle instances</p>\n </td>\n </tr> \n </tbody>\n </table>\n </div>\n <br/>\n <br/> \n <h3>\n <a href=\"http://hl7.org/fhir/R4/messageheader.html\">MessageHeader</a>\n </h3>\n <p>Profile: <a href=\"StructureDefinition-us-ph-messageheader.html\">http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-messageheader</a>\n </p>\n <h4>Interactions</h4>\n <div class=\"table-wrapper\">\n <table class=\"list\">\n <thead>\n <tr>\n <th>Name</th>\n <th>Description</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>\n <a name=\"MessageHeader-create\"> </a>\n <span>create</span>\n </th>\n <td>\n <p>Allows creation of MessageHeader instances</p>\n </td>\n </tr> \n </tbody>\n </table>\n </div>\n <br/>\n <br/> \n \n </div>"
},
"url" : "http://hl7.org/fhir/us/medmorph/CapabilityStatement/medmorph-backend-service-app",
"version" : "0.1.0",
"name" : "BackendServiceApp",
"title" : "MedMorph Backend Service App",
"status" : "draft",
"date" : "2020-12-06",
"publisher" : "HL7 International - Public Health Work Group",
"contact" : [
{
"telecom" : [
{
"system" : "url",
"value" : "http://hl7.org/Special/committees/pher"
}
]
}
],
"description" : "This profile defines the expected capabilities of the ''Backend Service App'' actor when conforming to the MedMorph Architecture Implementation Guide.",
"jurisdiction" : [
{
"coding" : [
{
"system" : "urn:iso:std:iso:3166",
"code" : "US"
}
]
}
],
"kind" : "requirements",
"fhirVersion" : "4.0.1",
"format" : [
"json"
],
"rest" : [
{
"mode" : "client",
"documentation" : "The focus of the Backend Service App is to act as a client and access Knowledge Artifacts, create subscriptions, receive notifications, create message bundles, invoke trust services and submit reports. ",
"security" : {
"description" : "Implementations must meet the general security requirements documented in the security section of the implementation guide."
},
"resource" : [
{
"type" : "PlanDefinition",
"supportedProfile" : [
"http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-plandefinition"
],
"interaction" : [
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "search-type",
"documentation" : "Allows discovery of existing PlanDefinition instances."
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "read",
"documentation" : "Allows retrieval of a specific PlanDefinition instance."
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHOULD"
}
],
"code" : "vread",
"documentation" : "Allows retrieval of a historical version of a PlanDefinition instance."
}
],
"searchParam" : [
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"name" : "identifier",
"definition" : "http://hl7.org/fhir/SearchParameter/PlanDefinition-identifier",
"type" : "token"
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"name" : "name",
"definition" : "http://hl7.org/fhir/SearchParameter/PlanDefinition-name",
"type" : "string"
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"name" : "publisher",
"definition" : "http://hl7.org/fhir/SearchParameter/PlanDefinition-publisher",
"type" : "string"
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"name" : "title",
"definition" : "http://hl7.org/fhir/SearchParameter/PlanDefinition-title",
"type" : "string"
}
]
},
{
"type" : "Subscription",
"interaction" : [
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "read",
"documentation" : "Allows retrieval of a specific Subscription instance."
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "create",
"documentation" : "Allows creation of a Subscription instance."
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "update",
"documentation" : "Allows updation of a Subscription instance."
},
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "delete",
"documentation" : "Allows deletion of a Subscription instance."
}
]
},
{
"type" : "Bundle",
"supportedProfile" : [
"http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-reporting-bundle",
"http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-content-bundle"
],
"interaction" : [
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "create",
"documentation" : "Allows creation of a Reporting or Content Bundle instance."
}
],
"operation" : [
{
"name" : "pseudonymize",
"definition" : "http://hl7.org/fhir/us/medmorph/OperationDefinition/Bundle-pseudonymize"
},
{
"name" : "anonymize",
"definition" : "http://hl7.org/fhir/us/medmorph/OperationDefinition/Bundle-anonymize"
},
{
"name" : "de-identify",
"definition" : "http://hl7.org/fhir/us/medmorph/OperationDefinition/Bundle-de-identify"
},
{
"name" : "re-identify",
"definition" : "http://hl7.org/fhir/us/medmorph/OperationDefinition/Bundle-re-identify"
}
]
},
{
"type" : "MessageHeader",
"supportedProfile" : [
"http://hl7.org/fhir/us/medmorph/StructureDefinition/us-ph-messageheader"
],
"interaction" : [
{
"extension" : [
{
"url" : "http://hl7.org/fhir/StructureDefinition/capabilitystatement-expectation",
"valueCode" : "SHALL"
}
],
"code" : "create",
"documentation" : "Allows creation of a MessageHeader instance."
}
]
}
],
"operation" : [
{
"name" : "process-message",
"definition" : "http://hl7.org/fhir/OperationDefinition/MessageHeader-process-message"
}
]
},
{
"mode" : "server",
"documentation" : "The focus of the Backend Service App as a Server is to expose $process-message endpoint at the root of the FHIR server.",
"security" : {
"description" : "Implementations must meet the general security requirements documented in the security section of the implementation guide."
},
"operation" : [
{
"name" : "process-message",
"definition" : "http://hl7.org/fhir/OperationDefinition/MessageHeader-process-message"
}
]
}
]
}