Patents by Inventor Simon Cavanagh

Simon Cavanagh 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: 8739118
    Abstract: Facilitating translation of data between object oriented programs and database storage tables. A method includes receiving user input from a user. The user input includes a plurality of parts. Each part includes a specification of a source (such as a type source), optionally a filter, and a projection. Each projection assigns values to table columns. Based on the plurality of parts received, the method includes generating one or more views. The one or more views describe relationships between model extents and database tables.
    Type: Grant
    Filed: April 8, 2010
    Date of Patent: May 27, 2014
    Assignee: Microsoft Corporation
    Inventors: Colin James Meek, Diego Bernardo Vega, Alexander Douglas James, Christopher L. Anderson, Srikanth Mandadi, Simon Cavanagh
  • Patent number: 8255410
    Abstract: Query expressions, such as LINQ (language integrated queries) queries, are enabled to be translated to URIs (uniform resource indicators) that may be used to query data sources at REST (representational state transfer) interfaces. A compiler is configured to convert a query into an expression tree. An expression tree normalizer is configured to normalize the expression tree into a normalized expression tree. A resource bound expression tree generator is configured to transform the normalized expression tree into a resource bound expression tree. A URI generator is configured to translate the resource bound expression tree into a URI.
    Type: Grant
    Filed: March 27, 2009
    Date of Patent: August 28, 2012
    Assignee: Microsoft Corporation
    Inventors: Andrew Conrad, Pablo Castro, Michael Flasko, Colin Meek, Simon Cavanagh
  • Publication number: 20110252282
    Abstract: Facilitating translation of data between object oriented programs and database storage tables. A method includes receiving user input from a user. The user input includes a plurality of parts. Each part includes a specification of a source (such as a type source), optionally a filter, and a projection. Each projection assigns values to table columns. Based on the plurality of parts received, the method includes generating one or more views. The one or more views describe relationships between model extents and database tables.
    Type: Application
    Filed: April 8, 2010
    Publication date: October 13, 2011
    Applicant: Microsoft Corporation
    Inventors: Colin James Meek, Diego Bernardo Vega, Alexander Douglas James, Christopher L. Anderson, Srikanth Mandadi, Simon Cavanagh
  • Patent number: 7877397
    Abstract: Systems and methods that translate queries defined by an entity model, to a dialect recognizable by storage provider (e.g., relational store). A bridge component facilitates translation of a rich object structure into flat relational constructs, which can then be executed by a relational store. Accordingly, queries defined by applications in terms of entity concepts can readily be employed in conjunction with relational data stores. Similarly, results obtained from executing the query can be converted back to a form understandable by the application.
    Type: Grant
    Filed: July 30, 2007
    Date of Patent: January 25, 2011
    Assignee: Microsoft Corporation
    Inventors: Ramesh Nagarajan, Subramanian Muralidhar, Stephen Frederick Starck, Sean B. House, Simon Cavanagh, Fabio Meireles Fernandez Valbuena, Katica Iceva
  • Patent number: 7797304
    Abstract: A query language has support for rich data types. A query language system contains an application configured to generate queries according to the query language. In addition, the system has a platform for handling queries that are generated using the provided query language. The platform contains an object services layer, a map provider layer, and a bridge layer which may ultimately interface with a variety of commercially available databases.
    Type: Grant
    Filed: August 21, 2006
    Date of Patent: September 14, 2010
    Assignee: Microsoft Corporation
    Inventors: Subramanian Muralidhar, Stephen Frederick Starck, Sean B. House, Simon Cavanagh, Fabio Meireles F. Valbuena, Ramesh Nagarajan
  • Publication number: 20100145946
    Abstract: Query expressions, such as LINQ (language integrated queries) queries, are enabled to be translated to URIs (uniform resource indicators) that may be used to query data sources at REST (representational state transfer) interfaces. A compiler is configured to convert a query into an expression tree. An expression tree normalizer is configured to normalize the expression tree into a normalized expression tree. A resource bound expression tree generator is configured to transform the normalized expression tree into a resource bound expression tree. A URI generator is configured to translate the resource bound expression tree into a URI.
    Type: Application
    Filed: March 27, 2009
    Publication date: June 10, 2010
    Applicant: Microsoft Corporation
    Inventors: Andrew Conrad, Pablo Castro, Michael Flasko, Colin Meek, Simon Cavanagh
  • Publication number: 20090037394
    Abstract: Systems and methods that translate queries defined by an entity model, to a dialect recognizable by storage provider (e.g., relational store). A bridge component facilitates translation of a rich object structure into flat relational constructs, which can then be executed by a relational store. Accordingly, queries defined by applications in terms of entity concepts can readily be employed in conjunction with relational data stores. Similarly, results obtained from executing the query can be converted back to a form understandable by the application.
    Type: Application
    Filed: July 30, 2007
    Publication date: February 5, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Ramesh Nagarajan, Subramanian Muralidhar, Stephen Frederick Starck, Sean B. House, Simon Cavanagh, Fabio Meireles Fernandez Valbuena, Katica Iceva
  • Publication number: 20080319957
    Abstract: Systems and methods that provide for a canonical representation in a structured form of a query, against a data model platform. A parser component can parse the SQL query to generate the abstract class that represent the query (command tree). Moreover, a view generation component can supply a mapping between a rich structure (e.g., on the client side) and the relational side. Accordingly, a query can be represented by an abstract class in form of a tree structure with nodes, which has metadata tied therewith.
    Type: Application
    Filed: June 19, 2007
    Publication date: December 25, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Subramanian Muralidhar, Simon Cavanagh, Steve Starck, Sean B. House, Fabio Meireles Fernandez Valbuena, Katica Iceva, Ramesh Nagarajan
  • Publication number: 20070219976
    Abstract: Data management between a common data store and multiple applications of multiple disparate application frameworks. A data storage component is provided that facilitates the storage of data, which data includes structured, semi-structured, and unstructured data. A common data platform interfaces to the data storage component to provide data services accessible by a plurality of disparate application frameworks, which data services allow a corresponding application of the different frameworks to access the data.
    Type: Application
    Filed: August 21, 2006
    Publication date: September 20, 2007
    Applicant: Microsoft Corporation
    Inventors: Subramanian Muralidhar, Stephan Frederick Starck, Sean B. House, Simon Cavanagh, Fabio Meireles F. Valbuena, Ramesh Nagarajan