comment about SMIL draft (correct version)


Dear SMIL editor,

We carefully read the SMIL Working Draft and we have the following remarks on 
that document. These remarks mostly aim at clarifying the concepts and the 
sematics of the proposal. Indeed, this proposal  still contains numerous 
ambiguities which can have a lot of drawbacks in its  future use (different 
interpretations of the same document).

In a next paper, we will discuss about the authoring capabilities of SMIL and 
for that purpose, we will use the example given at the end of the SMIL Working 

In the following list, the remaks are ordered by the linear reading of the 
draft and we have tried to systematically refer to the sections numbers.

Remark 1
Section 6.1
General semantics
One case of end time of an element E is missing: when E is a composite 
element, its end can be determined by the end of its descendants (example: a 
PAR element without attribute  will end when the child of longest duration 

Remark 2
Section 6.2
General Semantics
End Time
No semantics is given for the situation when one (or more but not all) of the 
children has an unknown end time. As far as we understand, the definition 
should be given as:
"By default, the end time of a parallel element is equal to the maximum 
end-time of all children having a known duration in the parallel element".

Moreover, at this stage of the draft, the notion of known/unknown end time is 
not clear. One solution to improve this is to put section 6.4 (Media objects 
elements) before section 6.2 and to explain when the duration of an object is 
unknown. It should also be said how this property is propagated through 
composition: in which cases a composed object built with a seq or a par has a 
unknown duration? From our understanding, there are two cases of basic objects 
with  unknown duration: either static objects (text, image) with no duration 
attribute (dur) or objects with the repetition attribute (repeat) set to 0. 
There is a lot of ways to build parallel objects with unknown duration, such 
as the three following ones.
  <par endsync = "last" >
     <o1 .... /> 
     <o2 ..../>
 with o1 and o2 two unknown duration objects

  <par endsync = "first" >
     <o1 .... /> 
     <o2 ..../>
 o1 and o2 have both unknown duration
    <par endsync = o1 >
     <o1 .... /> 
     <o2 ..../>

 with o1 a unknown duration object

Always from our understanding, a composite object built with a sequence 
operator has an unknown duration if and only if one of its children has an 
unknown duration.  

Remark 3
Section 6.2
In order to be more precise, we propose:
  endsync (optional)
     "last" : The parallel element ends at the same time as the child with the 
maximum end time of all children having a known duration in the parallel 
group. This is the default semantics of a parallel schedule (i. e. when a 
parallel element has no endsync attribute).
      "first" : The parallel element ends at the same time as the child with 
the minimum end time of all children having a known duration in the sequential 

Remark 4
Section 6.2
The reference "  (see 6.6) " is wrong.
If a parallel element contains both an "endsync" attribute and an "end" 
attribute (see 6.5), the element ends at the minimum of the end times 
specified by these two attributes.

Remark 5
Section 6.2
   dur (optional)
What is the semantics of a parallel element with such a duration attribute? 
(see remark 12  for general comments about the problem of ambiguities when 
there are several attributes to define end or begining points).

Remark 6
Section 6.2
   repeat (optional)
What is the semantics if the element has both dur and repeat attributes? (see 
Remark 12)

Remark 7
Section 6.4
It should be placed before section 6.2 (see Remark 2)

Remark 8
Section 6.4
General Semantics
What is exactly the semantics of ref media object? Can it be used for other 
object types than the list "audio", "video", "text" and "img", for example a 
Delay type?

Remark 9
Section 6.4
   dur (optional)
Explanations about potential conflicts between duration attributes and 
inherent duration of continous objects are given too late from this point of 
the draft.

Remark 10
Section 6.5
General Semantics
This part should only contain the two first sentences of the first paragraph:
"The synchronization attributes "begin" and "end" can be added to any schedule 
element. These attributes change the default begin and end times of the 
Then, we propose to place the Attributes part (definition of Begin and End 
attributes) which is after the "Error Handling" paragraph in the document. The 
rest of this section will be more clear since its aim is to specify these two 
Remark 11
Section 6.5
General Semantics
What is the semantics of an end synchronization attribute specified as an 
offset value?

There are only explanations and examples given for the other case: an offset 
value applied to the begin point of an element.

Remark 12
Section 6.5
Error Handling
This section should be more complete and explicit in the description of 
invalid documents. Some parts should be outside the section 6.5 because it is 
also related with other sections (see remarks 5 and 6).

Something general about this document, is that there are not enough 
explanations on potential conflicts between several ways to define end/begin 
time of an element.
Some cases are stated: 
section 6.2 :"The default end time of a parallel element can be overriden by 
using the endsync, the dur or the end attribute"
Error Handling : (Rule 1) "If an element contains begin, end and dur 
attributes the dur attributes is ignored"
                 (Rule 2) "If a continuous media object has either a dur 
attribute or a begin and end attribute, the elements duration is the minimum 
of its inherent duration and the duration defined by the attributes"
             (Rule 3) " ... possible errors are ... conficts between begin/end 
time and the duration of an object. 

Is the first rule an exception of the third one ?

Suppose I have an continous object with an inherent duration of 30s, if I write
<o1 begin=0 end =30 dur= 40> or < o1 dur = 40> I do not have the same 

A proposition which seems to us more simple to manage such problems:
only one rule: in case of conflicts, the duration of an element is always the 
minimum one. 

  Let's take some examples (The question is: is this example valid or not, if 
valid what is its ending time ?):

1)  <par endsync = "first" dur = 20>
     <o1 .... />
     <o2 .... />

2) <par endsync = "first" end = id(objectZ) (begin)>
     <o1 .... />
     <o2 .... />

objectZ is a sibling object of the composite one.

3) - lipsync attribute together with dur attribute

 <par repeat 4, dur = 30 >
   <o1  dur 20 />
   <o2 />
 o1 and o2 have both unknown durations

Remark 14
Section 7.1. SMIL Basic Layout
This approach for specifying the layout is too basic for taking into account 
needs for moving elements, spatio-temporal specifications etc.

Some remarks about the example given at the end of the document: 

Remarks 15:
 In the statement :
"The text Web Growth is shown once the image has reached its final position". 
What about the notion of final position?

In the smil document:
Remarks 16:
duration of graph is 45s and not 60s as shown in the figure

Remarks 17: 
the anchor is applied only to tim-video and not as specified initially to both 
the text and the video

Remarks 18 :
the figure suggests that the end of the audio and video objects are 
synchronized but this is not what it is done in the smil specification 

           Muriel and Cecile

Muriel Jourdan
Cecile Roisin 
Unite de Recherche INRIA Rhone-Alpes - 
projet OPERA ( ) 
655 avenue de l'Europe
F-38330 Montbonnot Saint-Martin
TEL: (33) 04 76 61 53 60      FAX: (33) 04 76 61 52 07 

Received on Tuesday, 23 December 1997 06:11:03 UTC