$schema: http://json-schema.org/draft-04/schema#
description: Schema describing an OpenFlow flow removed message, version 1.3
id: of13/ofp_flow_removed.json

type: object
required:
  - header
  - cookie
  - priority
  - reason
  - table_id
  - duration_sec
  - duration_nsec
  - idle_timeout
  - hard_timeout
  - packet_count
  - byte_count
  - match
properties:
  header:
    allOf:
      - $ref: definitions.json#/ofp_header
      - properties:
          type:
            enum: [OFPT_FLOW_REMOVED]
            default: OFPT_FLOW_REMOVED
  cookie:
    type: string
    pattern: ^[a-fA-F0-9]{16}$
    default: '0000000000000000'
  priority:
    type: integer
    maximum: 65535
    default: 0
  reason:
    $ref: definitions.json#/ofp_flow_removed_reason
  table_id:
    type: integer
    maximum: 255
    default: 0
  duration_sec:
    type: integer
    maximum: 4294967295
    default: 0
  duration_nsec:
    type: integer
    maximum: 4294967295
    default: 0
  idle_timeout:
    type: integer
    maximum: 65535
    default: 0
  hard_timeout:
    type: integer
    maximum: 65535
    default: 0
  packet_count:
    type: string
    pattern: ^[a-fA-F0-9]{16}$
    default: '0000000000000000'
  byte_count:
    type: string
    pattern: ^[a-fA-F0-9]{16}$
    default: '0000000000000000'
  match:
    $ref: definitions.json#/ofp_match
