IP Library Granted Patent US 9,798,738
Granted Patent B2
US 9,798,738 · App. 14/612,903 · Granted Oct 24, 2017

Custom compound types in declarative programs

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,798,738
App. No.
14/612,903
Granted
Oct 24, 2017
Kind
B2
Abstract

The present invention extends to methods, systems, and computer program products for creating and manipulating custom compound data types in declarative programs. The present invention allows a developer to create and use custom compound data types without requiring the custom type to be specifically defined (e.g. via registering a custom assembly) in the underlying framework. This is accomplished by providing a data container that is configurable to represent virtually any combination of primitive or compound types defined within the framework. The present invention also provides a declarative model for interacting with data containers representing custom compound data types. This declarative model employs a path-based syntax (or other type of syntax) for accessing the elements of a custom compound data type. Multiple paths can be defined within a single unit of developer input so that multiple elements of a custom data type can be manipulated by the single unit of input.

Claims (6)

1. At a computer system including one or more processors and system memory, the computer system also including a workflow framework, a method for reading values of a compound data structure using a declarative language, the method comprising:

receiving developer input, at the workflow framework, that defines, in the declarative language, multiple paths and a workflow program location for each path, each path defining an element of the compound data structure whose value is to be bound to the corresponding workflow program location;

for each path, determining which element of the compound data structure the each path refers to and reading the value of the determined element from the compound data structure, wherein the each path refers to an element of another compound data structure that is nested within the compound data structure; and

assigning the value of the element of the compound data structure to the corresponding workflow program location, including automatically performing a type coercion on the value based on the workflow program location.

2. The method of claim 1 , wherein the developer input is structured as a table and the table is represented as a visual design element that is input to a visual design tool of the workflow framework.

3. The method of claim 1 , wherein the workflow program location for the each path comprises variables or arguments of the workflow framework.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 036100/0048 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2015
From: WELICKI, LEON E.; TAYLOR, JOHN ANTHONY; ROBERTS, CLARK; WOLF, KENNETH DAVID
To: MICROSOFT CORPORATION
Reel/Frame 035449/0135 →