Dialog API Framework Mixing Semantics and State Containers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing development frameworks for voice user interface applications struggle to efficiently support the creation of both semantics-driven and state-driven dialog, with higher level APIs either simplifying semantics-driven dialog at the cost of making system-driven dialog difficult or vice versa, resulting in either inflexible or unnatural user interactions.

Innovation Solution

A dialog API framework that includes separate containers for semantics-driven and state-driven dialog, allowing developers to mix and match dialog types, with dialog elements that can operate within these containers or independently, enabling flexible and natural user interactions by supporting a range of dialog elements and strategies.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a higher level API framework is configured to primarily support semantics-driven dialog, then user-driven dialog becomes more flexible and natural, but system-driven dialog becomes difficult to author

Engineering Contradiction:
Improveflexibility of user-driven dialogVSAvoidease of authoring system-driven dialog
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The API framework is segmented into separate container types: one optimized for semantics-driven dialog and another for state-driven dialog. Each container type provides specialized support for its corresponding dialog paradigm, allowing developers to choose the appropriate container for each dialog section without compromising the other paradigm's ease of authoring.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The framework implements universal dialog elements that can operate within either semantics-driven or state-driven containers. These dialog elements are designed to be polymorphic, adapting their behavior based on the container type, thereby providing broad functionality while maintaining specialized optimization for each dialog type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Ease of manufacture

If a higher level API framework is configured to primarily support state-driven dialog, then system-driven dialog becomes easy to author, but user-driven dialog becomes less natural and flexible

Engineering Contradiction:
Improveease of authoring system-driven dialogVSAvoidnaturalness of user-driven dialog
Core Design Contradiction:
Ease of manufactureVSAdaptability or versatility

Solution Approach 1:

The framework is divided into distinct container types, with state-driven dialog containers providing structured, predetermined flow control for system-initiated interactions, while semantics-driven containers enable flexible, user-initiated dialog. This segmentation allows each container type to be optimized for its specific purpose without compromise.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different regions or sections of the dialog application can utilize different container types with different properties. System-driven sections use state-driven containers with predetermined flow, while user-driven sections use semantics-driven containers with flexible, dynamic flow. Each local region has the quality appropriate for its specific dialog paradigm.

Inventive Principle:
Principle #3Local quality

3Productivity

If developers author code directly targeting low level API resources, then access to basic resources is achieved, but the process becomes tedious and labor intensive

Engineering Contradiction:
Improveaccess to basic resourcesVSAvoiddeveloper effort
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The framework introduces higher-level dialog containers as intermediary abstractions between the developer and low-level API resources. These containers encapsulate complex resource management and coordination logic, providing simplified interfaces that reduce developer effort while maintaining full access to underlying resources.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The dialog containers provide universal access to multiple low-level resources (telephony infrastructure, speech recognition, speech synthesis) through a unified higher-level interface. This universal access mechanism eliminates the need for developers to write separate code for each resource type, significantly reducing labor intensity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7805704B2Development framework for mixing semantics-driven and state-driven dialog
Publication Date: 2010.09.28 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7805704B2 patent drawing
  • US7805704B2 patent drawing
  • US7805704B2 patent drawing

AI summary

An application program interface embodied on one or more computer readable media is disclosed. The interface includes a first dialog container configured to facilitate development of a first type of dialog within an application. Also included is a second dialog container configured to facilitate development of a second type of dialog within the application.