{
  "$schema": "http://json-schema.org/schema#",
  "description": "JSON Schema for our events",
  "type": "object",
  "properties": {
    "subject": {
      "type": "object",
      "minProperties": 1
    },
    "verb": {
      "type": "string"
    },
    "directObject": {
      "type": "string",
      "minProperties": 1
    },
    "context": {
      "type": "object",
      "properties": {
        "timestamp": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": ["timestamp"],
      "additionalProperties": false      
    }
  },
  "required": ["subject", "verb", "context"],
  "additionalProperties": false
}

{
  "$schema": "http://json-schema.org/schema#",
  "description": "JSON Schema for our events",
  "type": "object",
  "properties": {
    "subject": {
      "type": "object",
      "minProperties": 1
    },
    "verb": {
      "type": "string"
    },
    "directObject": {
      "type": "object",
      "minProperties": 1
    },
    "context": {
      "type": "object",
      "properties": {
        "timestamp": {
          "type": "string",
          "format": "date-time"
        }
      },
      "required": ["timestamp"],
      "additionalProperties": false      
    }
  },
  "required": ["subject", "verb", "context"],
  "additionalProperties": false
}

Change directObject type in schema from string to object.
Change directObject type in schema from string to object.
