LV2 MIDI
type: Ontology
comment: A normalised definition of raw MIDI.

Active Sense
type: Class
subclass of: System Realtime
comment: MIDI active sense message.

Aftertouch
type: Class
subclass of: Voice Message
comment: MIDI aftertouch message.
MIDI chunk:
  byte number: 0
  property: note number
MIDI chunk:
  byte number: 1
  property: key pressure

Bender
type: Class
subclass of: Voice Message
comment: MIDI bender message.
MIDI chunk:
  byte number: 0
  byte number: 1
  property: bender value

Channel Pressure
type: Class
subclass of: Voice Message
comment: MIDI channel pressure message.
MIDI chunk:
  byte number: 0
  property: key pressure

Chunk
type: Class
comment: A sequence of contiguous bytes in a MIDI message.

Clock
type: Class
subclass of: System Realtime
comment: MIDI clock message.

Continue
type: Class
subclass of: System Realtime
comment: MIDI continue message.

Controller
type: Class
subclass of: Voice Message
comment: MIDI controller change message.
MIDI chunk:
  byte number: 0
  property: MIDI controller number
MIDI chunk:
  byte number: 1
  property: MIDI controller value

Hex Byte
type: Datatype
on datatype: hexBinary
with restrictions:
  max inclusive: FF
comment: A hexadecimal byte, which has a value <= FF.

MIDI Message
type: Class
type: Datatype
subclass of: Event
subclass of: Atom
on datatype: hexBinary
comment: A single raw MIDI message.

Note Off
type: Class
subclass of: Voice Message
comment: MIDI note off message.
MIDI chunk:
  byte number: 0
  property: note number
MIDI chunk:
  byte number: 1
  property: velocity

Note On
type: Class
subclass of: Voice Message
comment: MIDI note on message.
MIDI chunk:
  byte number: 0
  property: note number
MIDI chunk:
  byte number: 1
  property: velocity

Program Change
type: Class
subclass of: Voice Message
comment: MIDI program change message.
MIDI chunk:
  byte number: 0
  property: program number

Quarter Frame
type: Class
subclass of: System Common
comment: MIDI quarter frame message.

Reset
type: Class
subclass of: System Realtime
comment: MIDI reset message.

Song Position
type: Class
subclass of: System Common
comment: MIDI song position pointer message.
MIDI chunk:
  byte number: 0
  byte number: 1
  property: song position

Song Select
type: Class
subclass of: System Common
comment: MIDI song select message.

Start
type: Class
subclass of: System Realtime
comment: MIDI start message.

Stop
type: Class
subclass of: System Realtime
comment: MIDI stop message.

System Common
type: Class
subclass of: System Message
comment: MIDI system common message.

System Exclusive
type: Class
subclass of: System Message
comment: MIDI system exclusive message.

System Message
type: Class
subclass of: MIDI Message
comment: MIDI system message.

System Realtime
type: Class
subclass of: System Message
comment: MIDI system realtime message.

Tune Request
type: Class
subclass of: System Common
comment: MIDI tune request message.

Voice Message
type: Class
subclass of: MIDI Message
comment: MIDI voice message.

bender value
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: short
comment: MIDI pitch bender message (-8192 to 8192).

binding
type: Property
type: ObjectProperty
range: MIDI Message
comment: The MIDI event to bind a parameter to.

byte number
type: Property
type: DatatypeProperty
domain: Chunk
range: unsignedByte
comment: The 0-based index of a byte which is part of this chunk.

MIDI channel
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: unsignedByte
comment: The channel number of a MIDI message.

MIDI chunk
type: Property
type: ObjectProperty
range: Chunk
comment: A chunk of a MIDI message.

MIDI controller number
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: byte
comment: The numeric ID of a controller (0 to 127).

MIDI controller value
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: byte
comment: The value of a controller (0 to 127).

note number
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: byte
comment: The numeric ID of a note (0 to 127).

key pressure
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: byte
comment: Key pressure (0 to 127).

program number
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: byte
comment: The numeric ID of a program (0 to 127).

property
type: Property
type: ObjectProperty
type: FunctionalProperty
domain: Chunk
range: Property
comment: The property this chunk represents.

song number
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: byte
comment: The numeric ID of a song (0 to 127).

song position
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: short
comment: Song position in MIDI beats (16th notes) (-8192 to 8192).

status byte
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: Hex Byte
comment: The exact status byte for a message of this type.

status mask
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: Hex Byte
comment: The status byte for a message of this type on channel 1.

velocity
type: Property
type: DatatypeProperty
type: FunctionalProperty
range: Hex Byte
comment: The velocity of a note message (0 to 127).