Patents by Inventor Antony S. Williams

Antony S. Williams has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8799857
    Abstract: The present invention relates to an XML application framework (XAF). XAF applications are data driven such that all operations with the computer system are data focused. In addition, the components used in the XAF application are instantiated and connected according to how the data is displayed and what type of data is used. Applications within XAF comprise a user interface (UI) connector, an action module, and a data connector. UI connectors receive UI events and connect the UI event to an action module. The action module generates a standard format action from the UI event and sends it to the data connector. The data connector translates the standard format action into a data-specific action that changes data in a data store. A data connector then sends a standard format data representation corresponding to the changed data back to the UI connector to provide the changed data to the UI.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: August 5, 2014
    Assignee: Microsoft Corporation
    Inventors: Clemens A. Szyperski, Antony S. Williams, Craig Wittenberg
  • Patent number: 8793649
    Abstract: The present invention relates to an XML application framework (XAF). XAF applications are data driven such that all operations with the computer system are data focused. In addition, the components used in the XAF application are instantiated and connected according to how the data is displayed and what type of data is used. Applications within XAF comprise a user interface (UI) connector, an action module, and a data connector. UI connectors receive UI events and connect the UI event to an action module. The action module generates a standard format action from the UI event and sends it to the data connector. The data connector translates the standard format action into a data-specific action that changes data in a data store. A data connector then sends a standard format data representation corresponding to the changed data back to the UI connector to provide the changed data to the UI.
    Type: Grant
    Filed: March 2, 2012
    Date of Patent: July 29, 2014
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, Clemens A. Szyperski, Craig Wittenberg
  • Patent number: 8418132
    Abstract: A method and system for creating and modifying computer applications using an application description language based on a markup language is provided. An engine creates, connects, and initializes objects corresponding to entities, and specified by entity tags. A factory may be specified by an entity tag and used to create a plurality of entities. Applications are specified in a plaintext descriptive language using a markup language such as XML, enabling applications to be easily developed using object oriented techniques and abstraction. Altering preexisting applications is also simplified. Finally, an application may be dynamically reconfigured when the application's data changes. Type checking and conditional creation of entities is supported.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: April 9, 2013
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, Stephen M. Danton, Arye Gittelman, Christopher D. Hackmann, Sam Spencer, Siddharth Jayadevan, Vladimir H. Hristov, William E. Aitken
  • Patent number: 8327263
    Abstract: A method and system for retrieving and maintaining presentation data in a presentation cache is provided. In a preferred embodiment, a presentation cache object provides a presentation cache with multiple cache entries. Each entry contains an indication of the format of the presentation data and the presentation data stored in that particular format. In addition, other information, such as the advisees of advisory connections for notification of cache updates, can be maintained. The presentation cache object responds to requests for retrieving source object data by returning presentation data cached within the presentation cache when it is available. In addition, the presentation cache object determines when it should delegate requests to the source object and when it can satisfy them on its own. The presentation cache object can return presentation data to a requesting client program even if the server program implementing the source object is unavailable or not running.
    Type: Grant
    Filed: May 24, 2005
    Date of Patent: December 4, 2012
    Assignee: Microsoft Corporation
    Inventors: Robert G. Atkinson, Antony S. Williams, Craig H. Wittenberg, Srinivasa R. Koppolu, C. Douglas Hodges
  • Patent number: 8214379
    Abstract: The present invention extends to methods, systems, and computer program products for composing views with automatic creation of links. Generally, views receive data through a query. Views also can have bindings to variables, for example, to represent what is selected in the view. Analyzing these queries can be used to determine whether a composition is valid, and how to compute a new query for a composed second view. In a composite view, a selection variable is utilized, and is bound to the selection parameter of the new first view. The data query for the second new view is re-written to refer to the selection variable in the composite.
    Type: Grant
    Filed: January 29, 2010
    Date of Patent: July 3, 2012
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, Stephen M. Danton, Michael C. Murray
  • Publication number: 20120167039
    Abstract: The present invention relates to an XML application framework (XAF). XAF applications are data driven such that all operations with the computer system are data focused. In addition, the components used in the XAF application are instantiated and connected according to how the data is displayed and what type of data is used. Applications within XAF comprise a user interface (UI) connector, an action module, and a data connector. UI connectors receive UI events and connect the UI event to an action module. The action module generates a standard format action from the UI event and sends it to the data connector. The data connector translates the standard format action into a data-specific action that changes data in a data store. A data connector then sends a standard format data representation corresponding to the changed data back to the UI connector to provide the changed data to the UI.
    Type: Application
    Filed: March 2, 2012
    Publication date: June 28, 2012
    Applicant: Microsoft Corporation
    Inventors: Antony S. Williams, Clemens A. Szyperski, Craig Wittenberg
  • Patent number: 8132148
    Abstract: The present invention relates to an XML application framework (XAF). XAF applications are data driven such that all operations with the computer system are data focused. In addition, the components used in the XAF application are instantiated and connected according to how the data is displayed and what type of data is used. Applications within XAF comprise a user interface (UI) connector, an action module, and a data connector. UI connectors receive UI events and connect the UI event to an action module. The action module generates a standard format action from the UI event and sends it to the data connector. The data connector translates the standard format action into a data-specific action that changes data in a data store. A data connector then sends a standard format data representation corresponding to the changed data back to the UI connector to provide the changed data to the UI.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: March 6, 2012
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, Clemens A. Szyperski, Craig Wittenberg
  • Patent number: 8046737
    Abstract: The present invention relates to an XML application framework (XAF). XAF applications are data driven such that all operations with the computer system are data focused. In addition, the components used in the XAF application are instantiated and connected according to how the data is displayed and what type of data is used. Applications within XAF comprise a user interface (UI) connector, an action module, and a data connector. UI connectors receive UI events and connect the UI event to an action module. The action module generates a standard format action from the UI event and sends it to the data connector. The data connector translates the standard format action into a data-specific action that changes data in a data store. A data connector then sends a standard format data representation corresponding to the changed data back to the UI connector to provide the changed data to the UI.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: October 25, 2011
    Assignee: Microsoft Corporation
    Inventors: Craig Wittenberg, Antony S. Williams, Clemens A. Szyperski
  • Publication number: 20110191362
    Abstract: The present invention extends to methods, systems, and computer program products for composing views with automatic creation of links. Generally, views receive data through a query. Views also can have bindings to variables, for example, to represent what is selected in the view. Analyzing these queries can be used to determine whether a composition is valid, and how to compute a new query for a composed second view. In a composite view, a selection variable is utilized, and is bound to the selection parameter of the new first view. The data query for the second new view is re-written to refer to the selection variable in the composite.
    Type: Application
    Filed: January 29, 2010
    Publication date: August 4, 2011
    Applicant: Microsoft Corporation
    Inventors: Antony S. Williams, Stephen M. Danton, Michael C. Murray
  • Patent number: 7886269
    Abstract: An extensible markup language (XML) application framework (XAF) may be provided. XAF applications are data driven such that all operations with a computer system are data focused. In addition, the components used in the XAF application are instantiated and connected according to how data is displayed and what data type is used. Applications within XAF comprise a user interface (UI) connector, an action module, and a data connector. UI connectors receive UI events and connect the UI event to an action module. The action module generates a standard format action from the UI event and sends it to the data connector. The data connector translates the standard format action into a data-specific action that changes data in a data store. A data connector then sends a standard format data representation corresponding to the changed data back to the UI connector to provide the changed data to the UI.
    Type: Grant
    Filed: February 23, 2006
    Date of Patent: February 8, 2011
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, Clemens A. Szyperski, Craig Wittenberg
  • Patent number: 7441253
    Abstract: A method and system for referring to and binding to objects using a moniker object is provided. In preferred embodiments a moniker object contains information to identify linked source data and provides methods through which a program can bind to the linked source data. A binding method is provided that returns an instance of an interface through which the linked source data can be accessed. In a preferred embodiment, the moniker object provides other methods including a reducing method that returns a more efficient representation of the moniker object; equality and hash methods for comparing moniker objects; and inverse, common prefix, and relative-path-to methods for comparing and locating moniker objects from other moniker objects. Several implementations of a moniker object are provided. Each implementation is a moniker class and has a class identifier that identifies code to manage the moniker class.
    Type: Grant
    Filed: July 3, 2006
    Date of Patent: October 21, 2008
    Assignee: Microsoft Corporation
    Inventors: Robert G. Atkinson, Antony S. Williams, Edward Koo Jung
  • Patent number: 7150024
    Abstract: A method and system for referring to and binding to objects using a moniker object is provided. In a preferred embodiments moniker object contains information to identify linked source data and provides methods through which a program can bind to the linked source data. A binding method is provided that returns an instance of an interface through which the linked source data can be accessed. The moniker object can identify source data that is stored persistently or nonpersistently. In addition, moniker objects can be composed to form a composite moniker object. A composite moniker object is used to identify linked source data that is nested in other data. In a preferred embodiment, the moniker object provides other methods including a reducing method that returns a more efficient representation of the moniker object; equality and hash methods for comparing moniker objects; and inverse, common prefix, and relative-path-to methods for comparing and locating moniker objects from other moniker objects.
    Type: Grant
    Filed: October 29, 2002
    Date of Patent: December 12, 2006
    Assignee: Microsoft Corporation
    Inventors: Robert G. Atkinson, Antony S. Williams, Edward K. Jung
  • Publication number: 20040236781
    Abstract: A method and system for registering data formats for objects are provided. In a preferred embodiment, a server application registers in a registration database data formats for receiving and for sending data. To send data to the server application, a client application retrieves and selects from the registration database a data format that the server application supports for receiving data and sends data to the server application in the selected data format. To receive data from the server application, the client application retrieves and selects from the registration database a data format that the server application supports for sending data and requests the server application to send data in the selected data format.
    Type: Application
    Filed: June 28, 2004
    Publication date: November 25, 2004
    Applicant: Microsoft Corporation
    Inventor: Antony S. Williams
  • Patent number: 6721951
    Abstract: An improved data transfer mechanism is provided. In a preferred embodiment of the present invention, a uniform data transfer mechanism is used by each computer program performing data transfer. The uniform data transfer mechanism of the preferred embodiment of the present invention provides a communication mechanism and a flexible and robust interface to support all existing and future data transfer applications.
    Type: Grant
    Filed: February 25, 1999
    Date of Patent: April 13, 2004
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, Robert G. Atkinson
  • Patent number: 6708196
    Abstract: A method and system for retrieving and maintaining presentation data in a presentation cache is provided. In a preferred embodiment, a presentation cache object provides a presentation cache with multiple cache entries. Each entry contains an indication of the format of the presentation data and the presentation data stored in that particular format. In addition, other information, such as the advisees of advisory connections for notification of cache updates, can be maintained. The presentation cache object responds to requests for retrieving source object data by returning presentation data cached within the presentation cache when it is available. In addition, the presentation cache object determines when it should delegate requests to the source object and when it can satisfy them on its own. The presentation cache object can return presentation data to a requesting client program even if the server program implementing the source object is unavailable or not running.
    Type: Grant
    Filed: December 14, 1999
    Date of Patent: March 16, 2004
    Assignee: Microsoft Corporation
    Inventors: Robert G. Atkinson, Antony S. Williams, Craig Wittenberg, Srinivasa R. Koppolu, C. Douglas Hodges
  • Publication number: 20030200504
    Abstract: A method and system for referring to and binding to objects using a moniker object is provided. In a preferred embodiments moniker object contains information to identify linked source data and provides methods through which a program can bind to the linked source data. A binding method is provided that returns an instance of an interface through which the linked source data can be accessed. The moniker object can identify source data that is stored persistently or nonpersistently. In addition, moniker objects can be composed to form a composite moniker object. A composite moniker object is used to identify linked source data that is nested in other data. In a preferred embodiment, the moniker object provides other methods including a reducing method that returns a more efficient representation of the moniker object; equality and hash methods for comparing moniker objects; and inverse, common prefix, and relative-path-to methods for comparing and locating moniker objects from other moniker objects.
    Type: Application
    Filed: October 29, 2002
    Publication date: October 23, 2003
    Applicant: Microsoft Corporation
    Inventors: Robert G. Atkinson, Antony S. Williams, Edward K. Jung
  • Patent number: 6526454
    Abstract: A method and system for aggregating objects within a computer system are provided. In a preferred embodiment, the method aggregates an enclosed object within an enclosing object. The enclosed object has an object management interface and an external interface, while the enclosing object has a controlling object management interface. The controlling object management interface and the external interface of the enclosed object have query function members for receiving an identifier of an interface and for returning a reference to the identified interface. A preferred embodiment creates an instance of an enclosing object and an object to be enclosed. In static aggregation, the controlling object management interface of the enclosing object knows in advance how to return an identifier to the external interface of the enclosed object. In dynamic aggregation, an object to be enclosed is added to the enclosing object after the enclosing object is instantiated.
    Type: Grant
    Filed: May 16, 2001
    Date of Patent: February 25, 2003
    Assignee: Microsoft Corporation
    Inventors: Antony S. Williams, C. Douglas Hodges, Srinivasa R. Koppolu
  • Patent number: 6519764
    Abstract: A method and system for referring to and binding to objects using a moniker object is provided. In a preferred embodiments moniker object contains information to identify linked source data and provides methods through which a program can bind to the linked source data. A binding method is provided that returns an instance of an interface through which the linked source data can be accessed. The moniker object can identify source data that is stored persistently or nonpersistently. In addition, moniker objects can be composed to form a composite moniker object. A composite moniker object is used to identify linked source data that is nested in other data. In a preferred embodiment, the moniker object provides other methods including a reducing method that returns a more efficient representation of the moniker object; equality and hash methods for comparing moniker objects; and inverse, common prefix, and relative-path-to methods for comparing and locating moniker objects from other moniker objects.
    Type: Grant
    Filed: May 29, 2001
    Date of Patent: February 11, 2003
    Assignee: Microsoft Corporation
    Inventors: Robert G. Atkinson, Antony S. Williams, Edward K. Jung
  • Patent number: 6412020
    Abstract: A method and system for aggregating objects within a computer system are provided. In a preferred embodiment, the method aggregates an enclosed object within an enclosing object. The enclosed object has an object management interface and an external interface, while the enclosing object has a controlling object management interface. The controlling object management interface and the external interface of the enclosed object have query function members for receiving an identifier of an interface and for returning a reference to the identified interface. A preferred embodiment creates an instance of an enclosing object and an object to be enclosed. In static aggregation, the controlling object management interface of the enclosing object knows in advance how to return an identifier to the external interface of the enclosed object. In dynamic aggregation, an object to be enclosed is added to the enclosing object after the enclosing object is instantiated.
    Type: Grant
    Filed: June 16, 1998
    Date of Patent: June 25, 2002
    Assignee: Microsoft Corporation
    Inventors: Paul Leach, Antony S. Williams, Edward Jung, C. Douglas Hodges, Srinivasa R. Koppolu, Barry B. MacKichan, Craig Wittenberg
  • Patent number: 6401099
    Abstract: An object-oriented framework unifies retrieval and browsing of data locally and from remote computer networks. The framework includes a class of monikers that operate on behalf of a client program to asynchronously bind or retrieve data referenced by a name without blocking execution of the client. This allows the client to provide responsive user interaction including when remotely retrieving data.
    Type: Grant
    Filed: December 6, 1996
    Date of Patent: June 4, 2002
    Assignee: Microsoft Corporation
    Inventors: Srinivasa R. Koppolu, Johann Posch, Victor Stone, Antony S. Williams