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.
|
Laboratorio di Informatica Musicale | |||||
Dipartimento di Informatica Università degli Studi di Milano Via G. Celoria, 18 - 20133 Milano, ITALY |
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 |