{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "id": "http://hl7.org/fhir/json-schema/ProcessRequest",
  "$ref": "#/definitions/ProcessRequest",
  "description": "see http://hl7.org/fhir/json.html#schema for information about the FHIR Json Schemas",
  "definitions": {
    "ProcessRequest": {
      "allOf": [
        {
          "$ref": "DomainResource#/definitions/DomainResource"
        },
        {
          "description": "This resource provides the target, request and response, and action details for an action to be performed by the target on or about existing resources.",
          "properties": {
            "resourceType": {
              "description": "This is a ProcessRequest resource",
              "type": "string",
              "enum": [
                "ProcessRequest"
              ]
            },
            "identifier": {
              "description": "The ProcessRequest business identifier.",
              "type": "array",
              "items": {
                "$ref": "Identifier.schema.json#/definitions/Identifier"
              }
            },
            "status": {
              "description": "The status of the resource instance.",
              "type": "string",
              "pattern": "[^\\s]+([\\s]?[^\\s]+)*"
            },
            "_status": {
              "description": "Extensions for status",
              "$ref": "Element.schema.json#/definitions/Element"
            },
            "action": {
              "description": "The type of processing action being requested, for example Reversal, Readjudication, StatusRequest,PendedRequest.",
              "enum": [
                "cancel",
                "poll",
                "reprocess",
                "status"
              ],
              "type": "string"
            },
            "_action": {
              "description": "Extensions for action",
              "$ref": "Element.schema.json#/definitions/Element"
            },
            "target": {
              "description": "The organization which is the target of the request.",
              "$ref": "Reference.schema.json#/definitions/Reference"
            },
            "created": {
              "description": "The date when this resource was created.",
              "type": "string",
              "pattern": "-?[0-9]{4}(-(0[1-9]|1[0-2])(-(0[0-9]|[1-2][0-9]|3[0-1])(T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\\.[0-9]+)?(Z|(\\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00)))?)?)?"
            },
            "_created": {
              "description": "Extensions for created",
              "$ref": "Element.schema.json#/definitions/Element"
            },
            "provider": {
              "description": "The practitioner who is responsible for the action specified in this request.",
              "$ref": "Reference.schema.json#/definitions/Reference"
            },
            "organization": {
              "description": "The organization which is responsible for the action speccified in this request.",
              "$ref": "Reference.schema.json#/definitions/Reference"
            },
            "request": {
              "description": "Reference of resource which is the target or subject of this action.",
              "$ref": "Reference.schema.json#/definitions/Reference"
            },
            "response": {
              "description": "Reference of a prior response to resource which is the target or subject of this action.",
              "$ref": "Reference.schema.json#/definitions/Reference"
            },
            "nullify": {
              "description": "If true remove all history excluding audit.",
              "type": "boolean"
            },
            "_nullify": {
              "description": "Extensions for nullify",
              "$ref": "Element.schema.json#/definitions/Element"
            },
            "reference": {
              "description": "A reference to supply which authenticates the process.",
              "type": "string"
            },
            "_reference": {
              "description": "Extensions for reference",
              "$ref": "Element.schema.json#/definitions/Element"
            },
            "item": {
              "description": "List of top level items to be re-adjudicated, if none specified then the entire submission is re-adjudicated.",
              "type": "array",
              "items": {
                "$ref": "#/definitions/ProcessRequest_Item"
              }
            },
            "include": {
              "description": "Names of resource types to include.",
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "_include": {
              "description": "Extensions for include",
              "type": "array",
              "items": {
                "$ref": "Element.schema.json#/definitions/Element"
              }
            },
            "exclude": {
              "description": "Names of resource types to exclude.",
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "_exclude": {
              "description": "Extensions for exclude",
              "type": "array",
              "items": {
                "$ref": "Element.schema.json#/definitions/Element"
              }
            },
            "period": {
              "description": "A period of time during which the fulfilling resources would have been created.",
              "$ref": "Period.schema.json#/definitions/Period"
            }
          },
          "required": [
            "resourceType"
          ]
        }
      ]
    },
    "ProcessRequest_Item": {
      "allOf": [
        {
          "$ref": "BackboneElement#/definitions/BackboneElement"
        },
        {
          "description": "This resource provides the target, request and response, and action details for an action to be performed by the target on or about existing resources.",
          "properties": {
            "sequenceLinkId": {
              "description": "A service line number.",
              "type": "number",
              "pattern": "-?([0]|([1-9][0-9]*))"
            },
            "_sequenceLinkId": {
              "description": "Extensions for sequenceLinkId",
              "$ref": "Element.schema.json#/definitions/Element"
            }
          }
        }
      ]
    }
  }
}