<system-report name="Conversational Technologies EMMA Viewer">
	<testimonial>

<p><b>Executive Summary</b></p>
 
<p>Conversational Technologies strongly supports the Extensible
MultiModal Annotation 1.0 (EMMA) standard. By providing a standardized
yet extensible and flexible basis for representing user input, we
believe EMMA has tremendous potential for making possible a wide
variety of innovative multimodal applications. In particular, EMMA
provides strong support for interoperable applications based on user
inputs in human languages in many modalities, including speech, text
and handwriting as well as visual modalities such as sign
languages.  EMMA also supports composite multimodal interactions in
which several user inputs in two or more modalities are integrated to
represent a single user intent.</p>

<p>The Conversational Technologies EMMA implementations are used in
tutorials on commercial applications of natural language processing
and spoken dialog systems.  We report on two implementations. The
first is an EMMA producer (NLWorkbench) which is used to illustrate
statistical and grammar-based semantic analysis of speech and text
inputs. The second implementation is an EMMA consumer, specifically a
viewer for EMMA documents. The viewer can be used in the classroom to
simplify examination of EMMA results as well as potentially in
commercial applications for debugging spoken dialog systems. In
addition, the viewer could also become the basis of an editor which
would support such applications as human annotation of EMMA documents
to be used as input to machine learning applications. For most of the
EMMA structural elements the viewer simply provides a tree structure
mirroring the XML markup. The most useful aspects of the viewer are
probably the graphical representation for EMMA lattices, the ability
to see timestamps as standard dates and the computed durations from
EMMA timestamps. The two implementations have been made available as open source software
(http://www.sourceforge.net/projects/NLWorkbench).</p>

<p>This is an update to an earlier report (http://lists.w3.org/Archives/Public/www-multimodal/2008Apr/0004.html). 
The update adds an implementation of the "emma:grammar" annotation and the display of the epsilon
transition for lattices. A note has also been
added to point out that assertion 801 is inconsistent with the specification.</p>

<p> Deborah Dahl, Conversational Technologies</p>

<p><b>Technical Details</b></p>

<p><b>Schema Validation:</b></p>

<p>Representative EMMA documents produced by the NLWorkbench for nbest and
single semantic results for text and speech inputs successfully validate
against the EMMA XML Schema (http://www.w3.org/TR/emma/emma.xsd) using
the W3C Schema validator (http://www.w3.org/2001/03/webdata/xsv).</p>

</testimonial>
	<assert id="100" res="pass"></assert>
	<assert id="200" res="pass"></assert>
	<assert id="201" res="fail">Does not display a no-input result in an easy to understand way</assert>
	<assert id="300" res="pass"></assert>
	<assert id="301" res="pass">Displays nbest in the same order as input document, doesn't reorder.</assert>
	<assert id="310" res="not-impl"></assert>
	<assert id="400" res="pass"></assert>
	<assert id="402" res="pass"></assert>
	<assert id="500" res="not-impl"></assert>
	<assert id="600" res="pass"></assert>
	<assert id="602" res="pass"></assert>
	<assert id="603" res="pass"></assert>
	<assert id="604" res="not-impl">not enforced</assert>
	<assert id="605" res="not-impl">not enforced</assert>
	<assert id="606" res="pass">The lattice viewer correctly displays epsilon transitions</assert>
	<assert id="607" res="not-impl">not enforced</assert>
	<assert id="608" res="not-impl">Lattice viewer doesn't display emma:node.</assert>
	<assert id="609" res="not-impl">Lattice viewer doesn't display emma:node.</assert>
	<assert id="700" res="pass"></assert>
	<assert id="800" res="pass"></assert>
	<assert id="801" res="not-impl">This test assertion refers to a configuration that is not allowed by the spec. It should be removed.</assert>
	<assert id="810" res="not-impl">not enforced</assert>
	<assert id="811" res="not-impl">not enforced</assert>
	<assert id="901" res="not-impl"></assert>
	<assert id="902" res="not-impl"></assert>
	<assert id="903" res="not-impl"></assert>
	<assert id="904" res="not-impl"></assert>
	<assert id="910" res="pass"></assert>
	<assert id="911" res="pass"></assert>
	<assert id="1000" res="pass"></assert>
	<assert id="1001" res="pass"></assert>
	<assert id="1002" res="pass"></assert>
	<assert id="1100" res="pass">A tree of the information contained in "info" is displayed.</assert>
	<assert id="1201" res="pass"></assert>
	<assert id="1300" res="not-impl"></assert>
	<assert id="1400" res="fail">Does not display a no-input result in an easy to understand way.</assert>
	<assert id="1500" res="not-impl"></assert>
	<assert id="1501" res="not-impl"></assert>
	<assert id="1600" res="pass"></assert>
	<assert id="1700" res="not-impl"></assert>
	<assert id="1701" res="not-impl"></assert>
	<assert id="1800" res="not-impl"></assert>
	<assert id="1900" res="pass"></assert>
	<assert id="2000" res="not-impl"></assert>
	<assert id="2100" res="pass"></assert>
	<assert id="2101" res="pass"></assert>
	<assert id="2201" res="not-impl"></assert>
	<assert id="2202" res="not-impl"></assert>
	<assert id="2203" res="not-impl"></assert>
	<assert id="2204" res="pass"></assert>
	<assert id="2300" res="pass"></assert>
	<assert id="2301" res="not-impl"></assert>
	<assert id="2310" res="pass"></assert>
	<assert id="2311" res="not-impl"></assert>
	<assert id="2320" res="pass"></assert>
	<assert id="2330" res="pass"></assert>
	<assert id="2401" res="not-impl"></assert>
	<assert id="2500" res="not-impl"></assert>
	<assert id="2510" res="pass"></assert>
	<assert id="2600" res="not-impl">This doesn't seem applicable to a viewer.</assert>
	<assert id="2601" res="not-impl">This doesn't seem applicable to a viewer.</assert>
	<assert id="2700" res="not-impl"></assert>
	<assert id="2701" res="not-impl"></assert>
	<assert id="2710" res="not-impl"></assert>
	<assert id="2711" res="not-impl"></assert>
	<assert id="2713" res="not-impl"></assert>
	<assert id="2714" res="not-impl"></assert>
	<assert id="2715" res="not-impl"></assert>
	<assert id="2716" res="not-impl"></assert>
	<assert id="2717" res="not-impl"></assert>
	<assert id="2718" res="not-impl"></assert>
</system-report>
