wiki:FML

FML

The functional markup language FML is still under discussion⁠. Its functionality being needed nevertheless, a working language FML-APML was created as a combination of the ideas of FML with the former Affective Presentation Markup Language APML⁠. The following shows an example FML-APML document which contains the key elements. An <fml-apml> document contains a <bml> section in which the <speech> content contains <ssml:mark> markers identifying points in time in a symbolic way. An <fml> section then refers to those points in time to represent the fact, in this case, that an announcement is made and that the speaker herself is being referred to between marks s1:tm2 and s1:tm4. This information can be used, for example, to generate relevant gestures when producing behaviour from the functional descriptions.

The representations in the <fml> section are provisional and are likely to change as consensus is formed in the community.

<fml-apml version="0.1">
  <bml xmlns="http://www.mindmakers.org/projects/BML" id="bml1">
    <speech id="s1" language="en-US" text="Hi, I'm Poppy."
        ssml:xmlns="http://www.w3.org/2001/10/synthesis">
         <ssml:mark name="s1:tm1"/>
	   Hi,
	   <ssml:mark name="s1:tm2"/>
	   I'm
	   <ssml:mark name="s1:tm3"/>
	   Poppy.
	   <ssml:mark name="s1:tm4"/>
    </speech>
  </bml>
  <fml xmlns="http://www.mindmakers.org/fml" id="fml1”>
    <performative id="p2" type="announce" start="s1:tm1" end="s1:tm4"/> 
    <world id="w1" ref_type="person" ref_id="self" start="s1:tm2" end="s1:tm4"/>
  </fml> 
</fml-apml>

For the conversion from FML to BML, information about pitch accents and boundaries is useful for the prediction of plausible behaviour time-aligned with the macro-structure of speech. In our current implementation, a speech preprocessor computes this information using TTS technology. The information is added to the end of the <speech> section as shown below. This is an ad hoc solution which should be reconsidered in the process of specifying FML.

<fml-apml version="0.1">
  <bml xmlns="http://www.mindmakers.org/projects/BML" id="bml1">
    <speech id="s1" language="en_US" text="Hi, I'm Poppy."
        ssml:xmlns="http://www.w3.org/2001/10/synthesis">
         <ssml:mark name="s1:tm1"/>
	   Hi,
	   <ssml:mark name="s1:tm2"/>
	   I'm
	   <ssml:mark name="s1:tm3"/>
	   Poppy.
	   <ssml:mark name="s1:tm4"/>
         <pitchaccent id="xpa1" start="s1:tm1" end="s1:tm2"/>
         <pitchaccent id="xpa2" start="s1:tm3" end="s1:tm4"/>
         <boundary id="b1" time="s1:tm4"/>
    </speech>
  </bml>
  <fml xmlns="http://www.mindmakers.org/fml" id="fml1”>
    <performative id="p2" type="announce" start="s1:tm1" end="s1:tm4"/> 
    <world id="w1" ref_type="person" ref_id="self" start="s1:tm2" end="s1:tm4"/>
  </fml> 
</fml-apml>
Last modified 7 years ago Last modified on 12/14/10 19:18:28