IEEE 1599

Documentation
Alphabetic list of elements (v1.0)

Spine

<!ELEMENT spine (event)+>

Spine is made of a sorted list of music events, where the definition and granularity of the term "event" can be defined by the author of the encoding. In this sense, spine represents an abstraction level, as the events identified do not have to correspond necessarily to score symbols, or audio samples, or anything else. The author can decide each time what goes under the definition of "music event", according to the needs.
Spine represents a container for a sorted list of identifiers, expressed through a number of event elements (described below).
The two-dimensional array of events is arranged as a one-dimensional ordered list. Even though notes, rests and other symbols in a score are disposed both according to their vertical juxtaposition (related to harmony) and to their horizontal layout (corresponding to temporal evolution of music), while instead the spine is a one-dimensional list. Referring each spine event to the previous one thanks to a path that goes through the music score as follows solves this difference. First, a vertical scan is performed, from upper symbols to lower symbols in a staff, and from upper staves to lower staves, and when all the simultaneous (i.e. vertically aligned) events have been considered, the next event on the right is considered and the vertical scan is resumed. Hence, the resulting list of events meanders through the score, from top to bottom and from left to right. Vertical alignments and horizontal offsets are defined by hpos, an attribute of event sub-element, as explained below.
IEEE 1599 is aimed not only at CWN, thus the problem of ordering music events in a one-dimensional sorted list exists also for non-traditional scores. In this case, a similar approach can be employed. For instance, the occurrence of events in time can be managed by considering time offsets among non-synchronous events (non-zero value for timing) and simultaneity among synchronous events (timing = "0"). Finally, the time dimension originates the one-dimensional list.
As it will be shown in more detail, spine acts also as a glue in a multi-layer structure, in which music events are not only listed and ordered by spine, but also tagged by unique identifiers. These identifiers, conceptually similar to unique key constraints in a database, are referred to by all instances of the corresponding event representations in other layers. In other words, spine references, and is referenced by, all other layers. This concept is illustrated in Figure 2, and constitutes the IEEE 1599 approach to global synchronization for heterogeneous media contents.
The presence of element spine for the IEEE 1599 file, as well as the presence of at least one sub-element event, are required for the validity of the encoding.


Relationships among IEEE 1599 layers

Laboratorio di Informatica Musicale
Dipartimento di Informatica
Università degli Studi di Milano
Via G. Celoria, 18 - 20133 Milano, ITALY
 Google Maps
Goffredo Haus, PAR1599 chair
Phone: +39 02 50316 222
E-mail: goffredo.haus@unimi.it
  Luca A. Ludovico, PAR1599 vice-chair
Phone: +39 02 50316 382
E-mail: luca.ludovico@unimi.it
  Laboratory
Phone: +39 02 50316 382
E-mail: lim@di.unimi.it