Packages

ISO/HL7 FHIR Application Server

Current section

Files

Jump to
hl7 priv samples OperationDefinition OperationDefinition-CapabilityStatement-implements.json
Raw

priv/samples/OperationDefinition/OperationDefinition-CapabilityStatement-implements.json

{"resourceType":"OperationDefinition","id":"CapabilityStatement-implements","text":{"status":"extensions","div":"\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003eURL: [base]/CapabilityStatement/$implements\u003c/p\u003e\u003cp\u003eURL: [base]/CapabilityStatement/[id]/$implements\u003c/p\u003e\u003cp\u003eParameters\u003c/p\u003e\u003ctable class\u003d\"grid\"\u003e\u003ctr\u003e\u003ctd\u003e\u003cb\u003eUse\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eName\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eScope\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eCardinality\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eType\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eBinding\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eDocumentation\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003eIN\u003c/td\u003e\u003ctd\u003eserver\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e0..1\u003c/td\u003e\u003ctd\u003e\u003ca href\u003d\"datatypes.html#canonical\"\u003ecanonical\u003c/a\u003e\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e\u003cdiv\u003e\u003cp\u003eA canonical reference to the server capability statement - use this if the implements is not invoked on an instance (or on the /metadata end-point)\u003c/p\u003e\n\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003eIN\u003c/td\u003e\u003ctd\u003eclient\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e0..1\u003c/td\u003e\u003ctd\u003e\u003ca href\u003d\"datatypes.html#canonical\"\u003ecanonical\u003c/a\u003e\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e\u003cdiv\u003e\u003cp\u003eA canonical reference to the client capability statement - use this if the implements is not invoked on an instance (or on the /metadata end-point)\u003c/p\u003e\n\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003eIN\u003c/td\u003e\u003ctd\u003eresource\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e0..1\u003c/td\u003e\u003ctd\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e\u003cdiv\u003e\u003cp\u003eThe client capability statement, provided inline\u003c/p\u003e\n\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003eOUT\u003c/td\u003e\u003ctd\u003ereturn\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e1..1\u003c/td\u003e\u003ctd\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/td\u003e\u003ctd/\u003e\u003ctd\u003e\u003cdiv\u003e\u003cp\u003eOutcome of the CapabilityStatement test\u003c/p\u003e\n\u003c/div\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\u003cdiv\u003e\u003cp\u003eThe operation does not perform a full conformance check; in particular it does not check that the profiles align. It merely checks that the behaviors the client wishes to use are provided Technically, this operation is implemented as follows:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe server\u0027s capability statement must have an entry for each resource in the client\u0027s capability statement\u003c/li\u003e\n\u003cli\u003eThe server\u0027s resource support must have matching flags for updateCreate, conditionalCreate, conditionalRead, conditionalUpdate, conditionalPatch, conditionalDelete, searchInclude, searchRevInclude\u003c/li\u003e\n\u003cli\u003eThe server\u0027s capability statement must have a matching interaction for each interaction in the client capability statement (whether or not it is on a resource)\u003c/li\u003e\n\u003cli\u003eThe server\u0027s capability statement must have a search parameter with matching name and definition for any search parameters in the client capability statement\u003c/li\u003e\n\u003cli\u003eThe server must have an operation definition with a matching reference for any operations in the client capability statement\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eIf the capability statements match by these rules, then the return value is a 200 OK with an operation outcome that contains no issues with severity \u0026gt;\u003d error. If the capability statement doesn\u0027t match, the return value is a 4xx error, with an OperationOutcome with at least one issue with severity \u0026gt;\u003d error\u003c/p\u003e\n\u003c/div\u003e\u003c/div\u003e"},"extension":[{"url":"http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm","valueInteger":5},{"url":"http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status","valueCode":"trial-use"}],"url":"http://hl7.org/fhir/OperationDefinition/CapabilityStatement-implements","version":"5.0.0","name":"Implements","title":"Test if a server implements a client\u0027s required operations","status":"draft","kind":"operation","experimental":false,"date":"2023-03-26T15:21:02+11:00","publisher":"HL7 (FHIR Project)","contact":[{"telecom":[{"system":"url","value":"http://hl7.org/fhir"},{"system":"email","value":"fhir@lists.hl7.org"}]}],"description":"This operation asks the server to check that it implements all the resources, interactions, search parameters, and operations that the client provides in its capability statement. The client provides its capability statement inline, or by referring the server to the canonical URL of its capability statement","jurisdiction":[{"coding":[{"system":"http://unstats.un.org/unsd/methods/m49/m49.htm","code":"001","display":"World"}]}],"affectsState":false,"code":"implements","comment":"The operation does not perform a full conformance check; in particular it does not check that the profiles align. It merely checks that the behaviors the client wishes to use are provided Technically, this operation is implemented as follows: \n\n* The server\u0027s capability statement must have an entry for each resource in the client\u0027s capability statement \n* The server\u0027s resource support must have matching flags for updateCreate, conditionalCreate, conditionalRead, conditionalUpdate, conditionalPatch, conditionalDelete, searchInclude, searchRevInclude \n* The server\u0027s capability statement must have a matching interaction for each interaction in the client capability statement (whether or not it is on a resource) \n* The server\u0027s capability statement must have a search parameter with matching name and definition for any search parameters in the client capability statement \n* The server must have an operation definition with a matching reference for any operations in the client capability statement \n\nIf the capability statements match by these rules, then the return value is a 200 OK with an operation outcome that contains no issues with severity \u003e\u003d error. If the capability statement doesn\u0027t match, the return value is a 4xx error, with an OperationOutcome with at least one issue with severity \u003e\u003d error","resource":["CapabilityStatement"],"system":false,"type":true,"instance":true,"parameter":[{"name":"server","use":"in","min":0,"max":"1","documentation":"A canonical reference to the server capability statement - use this if the implements is not invoked on an instance (or on the /metadata end-point)","type":"canonical"},{"name":"client","use":"in","min":0,"max":"1","documentation":"A canonical reference to the client capability statement - use this if the implements is not invoked on an instance (or on the /metadata end-point)","type":"canonical"},{"name":"resource","use":"in","min":0,"max":"1","documentation":"The client capability statement, provided inline","type":"CapabilityStatement"},{"name":"return","use":"out","min":1,"max":"1","documentation":"Outcome of the CapabilityStatement test","type":"OperationOutcome"}]}