Patents by Inventor Wei-Lun Lo
Wei-Lun Lo 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: 9971827Abstract: Technologies are described herein for integrating external data from an external system into a client system. A subscription filed is selected. The subscription filed may include a read method and a query method. The read method may define fields of a client cache operating on the client system. The query method may be executed to retrieve, from the external system, field values corresponding to at least a subset of the fields. Upon executing the query method, the read method may also be executed to retrieve, from the external system, additional field values corresponding to a remaining subset of the fields that were not retrieved by executing the query method. The client cache is populated with the field values and the additional field values according to the fields.Type: GrantFiled: November 21, 2014Date of Patent: May 15, 2018Assignee: Microsoft Technology Licensing, LLCInventors: David Koronthaly, Rolando Jimenez-Salgado, Sundaravadivelan Paranthaman, Arshish Cyrus Kapadia, Wei-Lun Lo
-
Publication number: 20150081732Abstract: Technologies are described herein for integrating external data from an external system into a client system. A subscription filed is selected. The subscription filed may include a read method and a query method. The read method may define fields of a client cache operating on the client system. The query method may be executed to retrieve, from the external system, field values corresponding to at least a subset of the fields. Upon executing the query method, the read method may also be executed to retrieve, from the external system, additional field values corresponding to a remaining subset of the fields that were not retrieved by executing the query method. The client cache is populated with the field values and the additional field values according to the fields.Type: ApplicationFiled: November 21, 2014Publication date: March 19, 2015Inventors: David Koronthaly, Rolando Jimenez-Salgado, Sundaravadivelan Paranthaman, Arshish Cyrus Kapadia, Wei-Lun Lo
-
Patent number: 8904363Abstract: A software application written for a server environment is transformed into one which runs in a rich client environment. An entity model defines data sources as they are accessed from the server and as they are accessed from the clients. An application programming interface defines stereotyped interfaces which provide the same functionality on the server and the clients. A metadata model describes the components which make up the application and defines the differences in structure between the server and clients. The metadata model also defines mappings between components used on the server and clients. Settings and context information which tailor the activation and functionality of the components is also captured in the metadata model. Automated transformation is performed by using the mappings to identify the component set to use for the clients, selecting the client version of the application programming interfaces, and selecting the appropriate settings and context information.Type: GrantFiled: June 27, 2008Date of Patent: December 2, 2014Assignee: Microsoft CorporationInventors: Howard M. Crow, Ricard Roma-Dalfo, Mohammed Nazeeruddin, Targo Tennisberg, Arshish C. Kapadia, Wei-Lun Lo, Jiajun Hua
-
Patent number: 8898181Abstract: Technologies are described herein for integrating external data from an external system into a client system. A subscription filed is selected. The subscription filed may include a read method and a query method. The read method may define fields of a client cache operating on the client system. The query method may be executed to retrieve, from the external system, field values corresponding to at least a subset of the fields. Upon executing the query method, the read method may also be executed to retrieve, from the external system, additional field values corresponding to a remaining subset of the fields that were not retrieved by executing the query method. The client cache is populated with the field values and the additional field values according to the fields.Type: GrantFiled: June 22, 2010Date of Patent: November 25, 2014Assignee: Microsoft CorporationInventors: David Koronthaly, Rolando Jimenez-Salgado, Sundaravadivelan Paranthaman, Arshish Cyrus Kapadia, Wei-Lun Lo
-
Publication number: 20110314047Abstract: Technologies are described herein for integrating external data from an external system into a client system. A subscription filed is selected. The subscription filed may include a read method and a query method. The read method may define fields of a client cache operating on the client system. The query method may be executed to retrieve, from the external system, field values corresponding to at least a subset of the fields. Upon executing the query method, the read method may also be executed to retrieve, from the external system, additional field values corresponding to a remaining subset of the fields that were not retrieved by executing the query method. The client cache is populated with the field values and the additional field values according to the fields.Type: ApplicationFiled: June 22, 2010Publication date: December 22, 2011Applicant: MICROSOFT CORPORATIONInventors: David Koronthaly, Rolando Jimenez-Salgado, Sundaravadivelan Paranthaman, Arshish Cyrus Kapadia, Wei-Lun Lo
-
Patent number: 8028007Abstract: Large messages in the form of hierarchically structured documents are processed in a streaming fashion using the ultimate consumer read requests as the driving force for the processing. The messages are partitioned into fixed length segments. The segments are processed in pipeline fashion. This processing chain includes simulating random access of hierarchical documents using stream transformations, mapping streams to a transport's native capabilities, composing streams into chains and using pipeline processing on the chains, staging fragments into a database and routing messages when complete messages have been formed, and providing tools to allow the end user to inspect partial messages.Type: GrantFiled: February 6, 2006Date of Patent: September 27, 2011Assignee: Microsoft CorporationInventors: Yossi Levanoni, Wei-Lun Lo, Sanjib Saha, Paul Maybee, Bimal Mehta, Lee Graber, Anandhi Somasekaran, Akash Sagar, Balinder Malhi, Allen Zhang, Siunie Sutjahjo
-
Patent number: 7954112Abstract: Data interchanges are processed so that problematic individual elements within the data interchanges do not cause the processing of the data interchanges to be suspended unless there is a catastrophic error. The data interchanges are split up by flat file and/or XML disassemblers of a message engine into independent messages even if some elements are incorrect or cause processing failures. Those messages in the interchange that may be processed are processed, while those that would cause processing errors are suspended in a suspend queue for recovery processing. Even when a message is placed in the suspend queue, processing continues with the next independent message in the data interchange. Messages that are placed in the suspend queue for lack of routing information may be resumed by providing the routing information and again attempting to route the previously suspended message.Type: GrantFiled: May 20, 2005Date of Patent: May 31, 2011Assignee: Microsoft CorporationInventors: Ruslan A. Yakushev, Kartik Paramasivam, David Kent Downing, Jean-Emile Elien, Wei-Lun Lo
-
Patent number: 7890955Abstract: Messages generated by an originating application are aggregated into batches based on a configuration policy. The configuration policy contains business logic used to aggregate messages into a batch. Once a batch is complete, it is formatted into a single stream output and sent to a destination application designed to receive the messages. Messages may also be aggregated into batches that are controlled by the originating application. The messages include an indicator set by the originating application to signal when a batch is complete. Once the batch is complete, it is formatted into a single stream output and sent to a destination application designed to receive the messages.Type: GrantFiled: April 3, 2006Date of Patent: February 15, 2011Assignee: Microsoft CorporationInventors: Kartik Paramasivam, Wei-Lun Lo, Ruslan Yakushev
-
Publication number: 20090328032Abstract: A software application written for a server environment is transformed into one which runs in a rich client environment. An entity model defines data sources as they are accessed from the server and as they are accessed from the clients. An application programming interface defines stereotyped interfaces which provide the same functionality on the server and the clients. A metadata model describes the components which make up the application and defines the differences in structure between the server and clients. The metadata model also defines mappings between components used on the server and clients. Settings and context information which tailor the activation and functionality of the components is also captured in the metadata model. Automated transformation is performed by using the mappings to identify the component set to use for the clients, selecting the client version of the application programming interfaces, and selecting the appropriate settings and context information.Type: ApplicationFiled: June 27, 2008Publication date: December 31, 2009Applicant: Microsoft CorporationInventors: Howard M. Crow, Ricard Roma-Dalfo, Mohammed Nazeeruddin, Targo Tennisberg, Arshish C. Kapadia, Wei-Lun Lo, Jiajun Hua
-
Publication number: 20070234369Abstract: Messages generated by an originating application are aggregated into batches based on a configuration policy. The configuration policy contains business logic used to aggregate messages into a batch. Once a batch is complete, it is formatted into a single stream output and sent to a destination application designed to receive the messages. Messages may also be aggregated into batches that are controlled by the originating application. The messages include an indicator set by the originating application to signal when a batch is complete. Once the batch is complete, it is formatted into a single stream output and sent to a destination application designed to receive the messages.Type: ApplicationFiled: April 3, 2006Publication date: October 4, 2007Applicant: Microsoft CorporationInventors: Kartik Paramisivam, Wei-Lun Lo, Ruslan Yakushev
-
Patent number: 7237184Abstract: A method for promoting properties for processing a message in a business automation system includes the steps of receiving a message which has a plurality of parts where each part has associated properties; identifying the associated properties to be promoted; extracting the information of the promoted property; storing the information of the promoted property in a memory; and processing the message by accessing the information of the promoted property from the memory instead of directly from the message. The method may further include correlating a received message with an earlier processed message by using a correlation method utilizing a strong naming convention to generate a correlation identifier.Type: GrantFiled: December 18, 2003Date of Patent: June 26, 2007Assignee: Microsoft CorporationInventors: John D. Ballard, Wei-Lun Lo, Bimal K. Mehta
-
Publication number: 20060265455Abstract: Data interchanges are processed so that problematic individual elements within the data interchanges do not cause the processing of the data interchanges to be suspended unless there is a catastrophic error. The data interchanges are split up by flat file and/or XML disassemblers of a message engine into independent messages even if some elements are incorrect or cause processing failures. Those messages in the interchange that may be processed are processed, while those that would cause processing errors are suspended in a suspend queue for recovery processing. Even when a message is placed in the suspend queue, processing continues with the next independent message in the data interchange. Messages that are placed in the suspend queue for lack of routing information may be resumed by providing the routing information and again attempting to route the previously suspended message.Type: ApplicationFiled: May 20, 2005Publication date: November 23, 2006Applicant: Microsoft CorporationInventors: Ruslan Yakushev, Kartik Paramasivam, David Downing, Jean-Emile Elien, Wei-Lun Lo
-
Publication number: 20060259519Abstract: Flat file formats are used widely in Enterprise Application Integration (EAI) and Business to Business (B2B) solutions. The formats describe the layout of the meaningful information within the data stream in such a way so that the parsing of that stream and extraction of the information can be automated. An example of a flat file format is a Comma Separated Values (CSV) format, where units of data are delimited between each other by using comma character. Another example is a positional format where the units of data occupy certain positions relative to each other within the data stream. The common task that is performed very often is conversion of the documents from various flat file formats into an XML representations and vise versa. The algorithm of iterative definition of the flat file structure from document instance described herein simplifies the process of defining the conversion rules for the flat file formats.Type: ApplicationFiled: May 12, 2005Publication date: November 16, 2006Applicant: Microsoft CorporationInventors: Ruslan Yakushev, Tatyana Yakushev, David Downing, Alvaro Miranda Filho, Wei-Lun Lo
-
Patent number: 7113942Abstract: Large messages in the form of hierarchically structured documents are processed in a streaming fashion using the ultimate consumer read requests as the driving force for the processing. The messages are partitioned into fixed length segments. The segments are processed in pipeline fashion. This processing chain includes simulating random access of hierarchical documents using stream transformations, mapping streams to a transport's native capabilities, composing streams into chains and using pipeline processing on the chains, staging fragments into a database and routing messages when complete messages have been formed, and providing tools to allow the end user to inspect partial messages.Type: GrantFiled: June 27, 2003Date of Patent: September 26, 2006Assignee: Microsoft CorporationInventors: Yossi Levanoni, Wei-Lun Lo, Sanjib Saha, Paul Maybee, Bimal Mehta, Lee Graber, Anandhi Somasekaran, Akash Sagar, Balinder Malhi, Allen Zhang, Siunie Sutjahjo
-
Publication number: 20060129524Abstract: Large messages in the form of hierarchically structured documents are processed in a streaming fashion using the ultimate consumer read requests as the driving force for the processing. The messages are partitioned into fixed length segments. The segments are processed in pipeline fashion. This processing chain includes simulating random access of hierarchical documents using stream transformations, mapping streams to a transport's native capabilities, composing streams into chains and using pipeline processing on the chains, staging fragments into a database and routing messages when complete messages have been formed, and providing tools to allow the end user to inspect partial messages.Type: ApplicationFiled: February 6, 2006Publication date: June 15, 2006Applicant: Microsoft CorporationInventors: Yossi Levanoni, Wei-Lun Lo, Sanjib Saha, Paul Maybee, Bimal Mehta, Lee Graber, Anandhi Somasekaran, Akash Sagar, Balinder Malhi, Allen Zhang, Siunie Sutjahjo
-
Publication number: 20050138553Abstract: A method for promoting properties for processing a message in a business automation system includes the steps of receiving a message which has a plurality of parts where each part has associated properties; identifying the associated properties to be promoted; extracting the information of the promoted property; storing the information of the promoted property in a memory; and processing the message by accessing the information of the promoted property from the memory instead of directly from the message. The method may further include correlating a received message with an earlier processed message by using a correlation method utilizing a strong naming convention to generate a correlation identifier.Type: ApplicationFiled: December 18, 2003Publication date: June 23, 2005Inventors: John Ballard, Wei-Lun Lo, Bimal Mehta
-
Publication number: 20050114405Abstract: Parsing and serializing files is performed to effect desired file conversions in a workflow. A method of parsing includes receiving a flat file in a native format, translating native format characters into tokens, and converting the flat file to an XML format with the use of an annotated schema. The annotated schema may include a model of the flat file inclusive of both delimited and positional types. A method of serializing includes receiving an XML file and converting it to a native format. A model of the native format may be used for serializing to produce a proper flat file format.Type: ApplicationFiled: November 25, 2003Publication date: May 26, 2005Inventor: Wei-Lun Lo
-
Publication number: 20040268244Abstract: Large messages in the form of hierarchically structured documents are processed in a streaming fashion using the ultimate consumer read requests as the driving force for the processing. The messages are partitioned into fixed length segments. The segments are processed in pipeline fashion. This processing chain includes simulating random access of hierarchical documents using stream transformations, mapping streams to a transport's native capabilities, composing streams into chains and using pipeline processing on the chains, staging fragments into a database and routing messages when complete messages have been formed, and providing tools to allow the end user to inspect partial messages.Type: ApplicationFiled: June 27, 2003Publication date: December 30, 2004Applicant: Microsoft CorporationInventors: Yossi Levanoni, Wei-Lun Lo, Sanjib Saha, Paul Maybee, Bimal Mehta, Lee Graber, Anandhi Somasekaran, Akash Sagar, Balinder Malhi, Allen Zhang, Siunie Sutjahjo