Patents by Inventor Albert K. Tsang

Albert K. Tsang 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: 10324742
    Abstract: A method. A JavaScript (JS) object is instantiated. The instantiated JS object processes application programming interface (API) requests received from mobile devices. The instantiation of the JS object is based on a JS model including (1) a JS file that stores a description of a behavior of the JS object and (2) a JS object notation (JSON) file that stores a description of properties of the JS object. The JSON file includes at least one validation rule to reject a data tuple unless the data tuple meets a required constraint specified in the validation rule. A data abstracter is an interface between the JS object and a set of data storages from which the JS object retrieves data while processing at least two of the API requests. The data abstractor is connected with the set of data storages by implementing a data exchange logic for the set of data storages.
    Type: Grant
    Filed: November 29, 2017
    Date of Patent: June 18, 2019
    Assignee: International Business Machines Corporation
    Inventors: Issac Jacob Roth, Albert K. Tsang, Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajtos
  • Patent number: 10067776
    Abstract: A method and system for generating application programming interfaces (APIs) in a codeless manner. A set of data graphs is generated. The data graphs identify relationships between data objects included in a description of a database schema of a database. The APIs are generated based on the set of data graphs. The APIs are provided to a user for selecting an API of the APIs. A JavaScript object notation based model (JSON-based model) associated with the selected API is generated, wherein the selected API is added to an application that uses the selected API for exchanging data with the database using the JSON-based model.
    Type: Grant
    Filed: November 10, 2016
    Date of Patent: September 4, 2018
    Assignee: International Business Machines Corporation
    Inventors: Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajto{hacek over (s)}, Albert K. Tsang
  • Publication number: 20180107501
    Abstract: A method. A JavaScript (JS) object is instantiated. The instantiated JS object processes application programming interface (API) requests received from mobile devices. The instantiation of the JS object is based on a JS model including (1) a JS file that stores a description of a behavior of the JS object and (2) a JS object notation (JSON) file that stores a description of properties of the JS object. The JSON file includes at least one validation rule to reject a data tuple unless the data tuple meets a required constraint specified in the validation rule. A data abstracter is an interface between the JS object and a set of data storages from which the JS object retrieves data while processing at least two of the API requests. The data abstractor is connected with the set of data storages by implementing a data exchange logic for the set of data storages.
    Type: Application
    Filed: November 29, 2017
    Publication date: April 19, 2018
    Inventors: Issac Jacob Roth, Albert K. Tsang, Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajtos
  • Patent number: 9875121
    Abstract: Some embodiments of the invention provide a novel server for processing application programming interface (API) requests. In some embodiments, the API server is written in JavaScript. For example, in some embodiments, the API-accessible objects of this server are each defined in terms of a JavaScript file and a JSON (JavaScript Object Notation) file. At runtime, a runtime processor instantiates each JavaScript object from its associated JavaScript and JSON files. Once instantiated, the JavaScript object can be used to process API requests that refer to the JavaScript object. Some embodiments use novel JSON file structures that allow these embodiments to define rich JavaScript models.
    Type: Grant
    Filed: September 18, 2014
    Date of Patent: January 23, 2018
    Assignee: International Business Machines Corporation
    Inventors: Issac Jacob Roth, Albert K. Tsang, Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajto{hacek over (s)}
  • Publication number: 20170161121
    Abstract: Some embodiments provide a novel method of generating application programming interfaces (APIs) in a codeless manner. The method generates a schema description of a data storage (e.g., a relational database) with which an API-accessible object may have to exchange data (e.g., from which the object may have to read data and/or to which the object may have to write data) to process an API request during the execution of an application. Based on the generated schema description, the method constructs one or more data graphs, with each data graph representing one set of relationships between different sets of fields in the data storage. After generating the data graphs, the method generates a large number of possible API permutations by using the generated data graphs. After generating the large number of possible API permutations, the method presents the generated sample APIs so that a developer can select and customize one or more APIs while developing an application.
    Type: Application
    Filed: November 10, 2016
    Publication date: June 8, 2017
    Inventors: Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajtos, Albert K. Tsang
  • Patent number: 9513941
    Abstract: Some embodiments provide method of generating application programming interfaces (APIs) in a codeless manner. The method generates a schema description of a data storage with which an API-accessible object may have to exchange data (e.g., from which the object may have to read data and/or to which the object may have to write data) to process an API request during the execution of an application. Based on the generated schema description, the method constructs one or more data graphs, with each data graph representing one set of relationships between different sets of fields in the data storage. After generating the data graphs, the method generates a large number of possible API permutations by using the generated data graphs. The method presents the generated sample APIs so that a developer can select and customize one or more APIs while developing an application.
    Type: Grant
    Filed: September 18, 2014
    Date of Patent: December 6, 2016
    Assignee: International Business Machines Corporation
    Inventors: Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajito{hacek over (s)}, Albert K. Tsang
  • Publication number: 20160080493
    Abstract: Some embodiments of the invention provide a novel server for processing application programming interface (API) requests. In some embodiments, the API server is written in JavaScript. For example, in some embodiments, the API-accessible objects of this server are each defined in terms of a JavaScript file and a JSON (JavaScript Object Notation) file. At runtime, a runtime processor instantiates each JavaScript object from its associated JavaScript and JSON files. Once instantiated, the JavaScript object can be used to process API requests that refer to the JavaScript object. Some embodiments use novel JSON file structures that allow these embodiments to define rich JavaScript models.
    Type: Application
    Filed: September 18, 2014
    Publication date: March 17, 2016
    Inventors: Issac Jacob Roth, Albert K. Tsang, Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajtos
  • Publication number: 20160077901
    Abstract: Some embodiments provide a system and method for dynamically determining whether to execute a function locally or remotely for an application operating on a first device. The method, while the application is operating, identifies a set of conditions the evaluation of which dynamically determines whether to (i) direct a second device to remotely process a function or (ii) locally process the function on the first device. The method evaluates the identified set of conditions on the first device. When the evaluation of the set of conditions corresponds to remote processing of the function, the method directs the second device to process the function and return a response to the first device. When the evaluation of the set of conditions corresponds to local processing of the function, the method processes the function on the first device.
    Type: Application
    Filed: September 18, 2014
    Publication date: March 17, 2016
    Inventors: Issac Jacob Roth, Albert K. Tsang, Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajtos
  • Publication number: 20160077897
    Abstract: Some embodiments provide a novel method of generating application programming interfaces (APIs) in a codeless manner. The method generates a schema description of a data storage (e.g., a relational database) with which an API-accessible object may have to exchange data (e.g., from which the object may have to read data and/or to which the object may have to write data) to process an API request during the execution of an application. Based on the generated schema description, the method constructs one or more data graphs, with each data graph representing one set of relationships between different sets of fields in the data storage. After generating the data graphs, the method generates a large number of possible API permutations by using the generated data graphs. After generating the large number of possible API permutations, the method presents the generated sample APIs so that a developer can select and customize one or more APIs while developing an application.
    Type: Application
    Filed: September 18, 2014
    Publication date: March 17, 2016
    Inventors: Albert K. Tsang, Zhaohui Feng, Ritchie Tyler Martori, Miroslav Bajtos