Home -> Technology -> Standards Compliance

OptimTalk Technology Standards Compliance

Standards compliance is one of the key benefits that OptimTalk Technology brings to the customers. Besides finalized standards, OptimTalk Technology includes also implementation of draft documents so that the customers can keep their competitive advantage of cutting edge products. As new standards evolve, OptimSys is committed to implementing new features and reflecting possible changes in OptimTalk Technology.

Refer to the following subsections for more information on OptimTalk Technology standards compliance.

VoiceXML 2.0 Compliance

OptimTalk VoiceXML Interpreter is based on the VoiceXML 2.0 W3C Recommendation published March 16, 2004. OptimTalk VoiceXML Interpreter is 100% standard compliant! It has been carefully tested using the publicly available VoiceXML 2.0 conformance test suite version 1.0.1b published by the VoiceXML Forum in July 2005. This test suite is used for platform certification within the VoiceXML Forum's Platform Certification Program.

OptimTalk VoiceXML Interpreter passes 100% of required tests. Besides all required tests, it also successfully passes approximately 72% of optional tests.

Unsupported optional features are mostly related to features that require an internal grammar generation. This problem will be addressed in its whole complexity in a future release.

  • Built-in grammars (type attribute of the <field> tag) are not supported – define your own grammar instead.
  • accept attribute of the <option> <menu> and <choice> tags is not supported (the VoiceXML Interpreter throws error.badfetch when the "approximate" value is used).
  • universals property is not supported (ignored if present).
  • bargeintype attribute of the <prompt> tag is not supported (bargeintype is always set to speech).

Other unsupported optional features:

  • transferaudio attribute (ignored if present).
  • Matching of voice grammars during transfer (voice grammars are not activated in this case).
  • Bargein type hotword (ignored if present).

VoiceXML 2.1 Compliance

OptimTalk VoiceXML Interpreter is based on the VoiceXML 2.1 W3C Recommendation published June 19, 2007. It is fully compliant, with the following exceptions:

  • fetchaudio attribute of the <data> tag not supported (ignored if present).

CCXML Compliance

OptimTalk CCXML Interpreter is based on the Fourth Last Call Working Draft of CCXML published January 19, 2007. It is fully compliant, with the following exceptions:

  • Inline XML content in the <send> element is not supported.
  • Tags <move> (optional) and <merge> are not supported.
  • uri attribute of the fetch.done and error.fetch events and the session.uri session variable show the referenced target URI, not the final URI after HTTP redirects.
  • statuscode attribute of the error.fetch event is not supported.
  • audio/wav value of the type attribute of the <dialogprepare> and <dialogstart> tags is not supported (providing this value results in error.dialog.notprepared or error.dialog.notstarted respectively).
  • Media Endpoint Object, Dialog class, Connection class, and Conference class are not supported (implementation follows previous version of the specification).

SRGS Compliance

OptimTalk SRGS Grammar Analyzer is based on the SRGS W3C Recommendation published March 16, 2004. It is fully compliant, with the following limitation:

  • Only XML form of the SRGS grammar is supported.

SISR Compliance

OptimTalk Semantic Interpreter is based on the SISR W3C Recommendation published April 5, 2007. It is fully compliant, with the following exceptions:

  • Global variable declaration and initialization is not supported.
  • Tag format specified in the main grammar (i.e. the grammar containing the root rule) is used for the whole calculation of semantics. Tag format of the externally referenced grammars is ignored.

SSML Compliance

OptimTalk VoiceXML Interpreter contains a SSML preprocessor based on the SSML W3C Recommendation published September 7, 2004. The SSML preprocessor can generate fully compliant SSML documents from VoiceXML prompts or can map the SSML markup to other languages used by TTS systems. The SSML preprocessor itself is fully compliant, however, the way in which the result of the preprocessor is rendered is dependent on the TTS engine in use.

MRCPv2 Compliance

OptimTalk MRCPv2 Client is based on the Fifteenth Working Draft of MRCPv2 published December 21, 2007. It is fully compliant, with the following limitations:

  • Only Speech Synthesizer and Speech Recognizer media processing resources are supported. Note that the Speech Recognizer resource is supported including the enrollment feature.
  • The implementation is VoiceXML-oriented and may lack some features that are of no use in connection with VoiceXML.

Non-Standard Extensions

OptimTalk Technology offers a few non-standard extensions addressing industry needs that cannot be satisfied by standard means. Our aim is to keep the number of non-standard extensions as low as possible. The non-standard extension may be removed if there appears a standardized solution for the same purpose.

VCR controls

VCR controls is a common term for a set of functions controlling media playback, including skip forward, skip back and pause/resume operations. These operations are crucial for voicemail applications and VoiceXML 2.0/2.1 does not provide all means for their realization.

OptimTalk VoiceXML interpreter extends the <audio> tag with a proprietary offsetexpr attribute that, in combination with standard VoiceXML features, makes it possible to implement the VCR controls. This way the extension is widely accepted by industry.

Enrollment

Enrollment is a process that allows the speech recognizer to learn phrases spoken by a user and later recognize them again. Enrollment is useful in situations when the application designer wishes to include a phrase to a recognition grammar but the text transcription of the phrase cannot be known to the application in advance. A typical example are names entered to an address book via phone.

VoiceXML 2.0/2.1 provides no means for using enrollment. OptimTalk VoiceXML Interpreter introduces three proprietary tags <optimtalk:enroll>, <optimtalk:enroll-modify-phrase> and <optimtalk:enroll-delete-phrase> for this purpose. Note that enrollment must be also supported by the speech recognition engine.

SOAP client

SOAP protocol gained a great popularity in connection with the boom of web services and service-oriented architecture. OptimTalk VoiceXML Interpreter offers built-in ECMAScript objects that, together with the VoiceXML 2.1 <data> element, form a SOAP client. Thanks to this, VoiceXML applications can readily exploit the full power of web services.

External events

OptimTalk VoiceXML Interpreter provides support for external events, i.e. events that can be asynchronously added by external entities to the VoiceXML Interpreter internal event queue. This feature is useful for integration with external applications.

VoiceXML objects

VoiceXML standard defines the <object> element for exposing platform-specific functionality to the VoiceXML application. OptimTalk Technology provides means for extending the OptimTalk VoiceXML Interpreter with custom objects that can perform operations beyond the capabilities of standard VoiceXML.

Calling VoiceXML objects directly from ECMAScript

OptimTalk VoiceXML Interpreter offers a custom ECMAScript function CallOptimTalkObject that makes it possible to call objects directly from every ECMAScript expression and process the results by an ECMAScript code. This is a powerful feature that significantly improves flexibility in using objects, mainly intended for various not-so-usual applications. E.g. OptimTalk Technology based desktop and multimodal applications can use it for communication with the hosting environment.