Patents by Inventor Erik B. Christensen

Erik B. Christensen 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: 7779139
    Abstract: The transformation of data between binary data and hierarchical data, such as might be processed by an Infoset Processor. When data is received from a network in binary format, the transformation module transforms the binary data into a hierarchical data representation of the binary data, and then provides the transformed data to message processors (e.g., Infoset processors) that understand the hierarchical schema. The transformation module may also transform hierarchical data into binary data for transmission on a network.
    Type: Grant
    Filed: February 26, 2008
    Date of Patent: August 17, 2010
    Assignee: Microsoft Corporation
    Inventors: Tirunelveli R. Vishwanath, Stephen Jared Maine, Erik B. Christensen, Michael J. Coulson
  • Patent number: 7761484
    Abstract: Converting data to an appropriate format for use with a service. An example method is illustrated where a message including data expressed using dynamic language data expressions is received. The dynamic language data expressions include a tree structure organization for the data. The data expressed using dynamic language data expressions is expressed in an XML data structure. The XML data structure preserves the original tree structure organization for the data.
    Type: Grant
    Filed: February 9, 2007
    Date of Patent: July 20, 2010
    Assignee: Microsoft Corporation
    Inventors: Erik B. Christensen, Stephen J. Maine, Natasha Jethanandani, Krishnan Rangachari, Sowmyanarayanan K. Srinivasan, Eugene Osovetsky
  • Patent number: 7676540
    Abstract: Methods, systems, and data structures for communicating object metadata are provided. A generic metadata container is presented that allows object metadata to be described in an extensible manner using protocol-neutral and platform-independent methodologies. A metadata scope refers to a dynamic universe of targets to which the included metadata statements correspond. Metadata properties provide a mechanism to describe the metadata itself, and metadata security can be used to ensure authentic metadata is sent and received. Mechanisms are also provided to allow refinement and replacement of metadata statements. The metadata container may be used to convey referral data to update routing tables in network nodes, and may also be used register referral statements and query a node for referral information.
    Type: Grant
    Filed: October 15, 2002
    Date of Patent: March 9, 2010
    Assignee: Microsoft Corporation
    Inventors: Henrik F. Nielsen, Christopher G. Kaler, Steven E. Lucco, David E. Levin, Erik B. Christensen
  • Patent number: 7676740
    Abstract: An object instance is serialized to a serial format, such as an eXtensible Markup Language (XML) document, based on a mapping between an arbitrary annotated source code file and a schema. The arbitrary annotated source code contains at least one programming type that describes a shape of an object instance and the schema describes a format of a document having a serial format. The mapping defines a correspondence between the shape of the object instance and the format of the document having the serial format. Subsequently, an object instance is converted to the serial format by converting public properties, public fields and method parameters of the object instance to a document having the serial format based on the mapping. Once the mapping is defined, an XML document can also be converted to an object instance based on the mapping.
    Type: Grant
    Filed: December 10, 2004
    Date of Patent: March 9, 2010
    Assignee: Microsoft Corporation
    Inventors: Keith W Ballinger, Erik B. Christensen, Stefan H. Pharies
  • Patent number: 7664828
    Abstract: Implementations are described and claimed herein to detect an invalid policy that may reside in a cache at a client. An expired policy is removed from cache and a current policy is requested. Otherwise the cached policy may be used. The client indicates which policy it is using by generating a policy digest, including, in compressed form, one or more assertions. If the host determines the policy digest is invalid, the host issues an invalid digest fault. If the policy digest is valid, but the assertions included in the policy digest are invalid, the host issues an invalid policy fault. In either case, the client is notified that the cached policy is no longer valid and that a current policy should be requested.
    Type: Grant
    Filed: February 20, 2004
    Date of Patent: February 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Jeffrey C. Schlimmer, David Levin, Alfred Lee, IV, Erik B. Christensen, Bradford H. Lovering
  • Patent number: 7664023
    Abstract: A method includes advertising a policy characterizing communication properties supported by a node. The policy may be distributed to another node in response to a request for the policy. Policy expressions in the policy include one or more assertions that may be grouped and related to each other in a plurality of ways. A system includes a policy generator for generating at least one policy characterizing properties of a node. A policy retriever retrieves a policy from another node and a message generator generates a message to the other node, wherein the message conforms to the policy from the other node.
    Type: Grant
    Filed: May 29, 2007
    Date of Patent: February 16, 2010
    Assignee: Microsoft Corporation
    Inventors: David Levin, Erik B. Christensen, Saurab Nog, Donald F. Box, Christopher G. Kaler, Giovanni M. Della-Libera, Alfred Lee, IV, David Wortendyke
  • Patent number: 7653747
    Abstract: An apparatus and method is provided for resolving virtual network names using one or more name routers. A conventional Uniform Resource Locator (URL) naming scheme is extended by allowing any component to be mapped to an address. The resolution process occurs recursively through a plurality of name routers. Resolution can be contextual, such that the same virtual network name may be resolved differently depending on the identity of the client or other parameters.
    Type: Grant
    Filed: June 5, 2006
    Date of Patent: January 26, 2010
    Assignee: Microsoft Corporation
    Inventors: Steven E. Lucco, Erik B. Christensen, Andrew J. Layman, David E. Levin, Bradford H. Lovering, Henrik Frystyk Nielsen, John P. Shewchuk
  • Patent number: 7644414
    Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: May 1, 2006
    Date of Patent: January 5, 2010
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, David S. Ebbo, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Jayanth V. Rajan, Keith W. Ballinger, Manu Vasandani, Mark T. Anders, Mark A. Boulter, Nikhil Kothari, Robert M. Howard, Scott D. Guthrie, Stephen J. Millet, Stefan H. Pharies, Suzanne M. Cook, Susan M. Warren, Yann E. Christensen
  • Publication number: 20090327994
    Abstract: The described method and system synchronizes source code with byproducts or artifacts of an application creation process. In one embodiment, a generation tool may be used to produce source code header files based on a design specification, where the source code header files are compiled with a current version of source code. Compilation errors may direct a developer to modify either the specification or the source code to eliminate the errors. The described method and system may be integrated into a development platform that is adapted to direct the user to perform particular revisions or updates to bring the source code in line with the artifacts.
    Type: Application
    Filed: June 26, 2008
    Publication date: December 31, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Erik B. Christensen, Michael J. Coulson, Vaithialingam B. Balayoghan, Sermet Iskin
  • Patent number: 7640495
    Abstract: A data structure includes means for representing a programming type and means for representing an attribute. The specified attribute indicates that an instance of the programming type is to be serialized with XML.
    Type: Grant
    Filed: December 10, 2004
    Date of Patent: December 29, 2009
    Assignee: Microsoft Corporation
    Inventors: Keith W Ballinger, Erik B. Christensen, Stefan H. Pharies
  • Patent number: 7581231
    Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: August 25, 2009
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, Anders Hejlsberg, Brian A. LaMacchia, Blaine J. Dockter, Brian M. Grunkemeyer, Brian K. Pepin, Caleb L. Doise, Christopher W. Brumme, Chad W. Royal, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Dedu-Constantin, Daniel Takacs, David S. Ebbo, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Giovanni M. Della-Libera, Gopala Krishna R. Kakivaya, Gregory D. Fee, Hany E. Ramadan, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Jun Fang, Krzysztof J. Cwalina, Keith W. Ballinger, Lance E. Olson, Loren M. Kohnfelder, Luca Bolognese, Manu Vasandani, Mark T. Anders, Mark P. Ashton, Mark A. Boulter, Mark W. Fussell, Michael M. Magruder, Manish S. Prabhu, Neetu Rajpal, Nikhil Kothari, Nithyalakshmi Sampathkumar, Nicholas M. Kramer, Omri Gazitt, Radu Rares Palanca, Raja Krishnaswamy, Robert M. Howard, Ramasamy Krishnaswamy, Shawn P. Burke, Scott D. Guthrie, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Subhag P. Oak, Sreeram Nivarthi, Stefan H. Pharies, Suzanne M. Cook, Susan M. Warren, Tarun Anand, Travis J. Muhlestein, William A. Adams, Yan Leshinsky, Yann E. Christensen, Yung-shin Lin, Stephen J. Millet, Joseph Roxe, Alan Boshier, Henry L. Sanders, David Bau
  • Patent number: 7568205
    Abstract: Internet web servers provide processing services, in addition to data and visual content, to provide remote clients with access to processing services located on servers. The client processes communicate with these service providing servers over a distributed network like the Internet using standard HTTP communications protocol and XML data exchange language. Client processes send an HTTP request to a remote server for processing. This processing request may contain input data that is to be used in responding to the request. The server processes the request using the input data, and possibly other data obtained from remote databases, and returns a resultant XML specified data packet. This processing requests, may be initiated using a web browser from an HTML based web page or using a smart client process that simply sends a processing request along with input data and consumes the resultant data packet.
    Type: Grant
    Filed: May 2, 2005
    Date of Patent: July 28, 2009
    Assignee: Microsoft Corporation
    Inventors: Scott D Guthrie, Erik B Christensen, Yann E Christensen
  • Publication number: 20090187920
    Abstract: In accordance with certain aspects of configurable message pipelines, a service allows one or more applications running on a system to communicate with one or more other systems. The service includes a port having a send pipeline to allow the one or more applications to send messages to the one or more other systems and/or a receive pipeline to allow the one or more applications to receive messages from the one or more other systems. Each of the send pipeline and the receive pipeline is configurable by the one or more applications to include functionality desired by the one or more applications.
    Type: Application
    Filed: January 12, 2009
    Publication date: July 23, 2009
    Applicant: Microsoft Corporation
    Inventors: Erik B. Christensen, Michael J. Coulson
  • Patent number: 7565451
    Abstract: Mechanisms in which upon receiving a message, the message is passed through one or more receiving path components that are positioned in the receiving path of the message prior to being passed to a dispatching component. One or more of the receiving path components may modify the message to include information that may be helpful to the dispatching component in order to perform the dispatch. The dispatching component receives modified message, and uses information from the modified message (including potentially the modification itself) to perform the dispatch. Since the message is modified to include additional information helpful to the dispatching component, the dispatching component may be more flexible in identifying the processing that should occur with the message. Accordingly, specialized and flexible processing may be enabled that is ideally suited for the message.
    Type: Grant
    Filed: January 23, 2004
    Date of Patent: July 21, 2009
    Assignee: Microsoft Corporation
    Inventors: Luis Felipe Cabrera, David A. Wortendyke, George P. Copeland, Erik B. Christensen, David E. Levin, Dhananjay M. Mahajan, Scott Christopher Seely, Daniel W. Roth
  • Patent number: 7555757
    Abstract: An application program interface (API) provides a set of functions, including a set of base classes and types that are used in substantially all applications accessing the API, for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: June 23, 2005
    Date of Patent: June 30, 2009
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, Brian A. LaMacchia, Anders Hejlsberg, Brian M. Grunkemeyer, Caleb L. Doise, Christopher W. Brumme, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Takacs, David S. Ebbo, David O. Driver, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Gopala Krishna R. Kakivaya, George D. Fee, Hany E. Ramadan, Henry L. Sanders, II, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Krzysztof J. Cwalina, Lance E. Olson, Loren M. Kohnfelder, Michael M. Magruder, Manish S. Prabhu, Radu Rares Palanca, Raja Krishnaswamy, Shawn P. Burke, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Stefan H. Pharies, Suzanne M. Cook, Tarun Anand, Travis J. Muhlestein, Yann E. Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
  • Publication number: 20090112873
    Abstract: The present invention extends to methods, systems, and computer program products for processing model based commands for distributed applications. Embodiments facilitate execution of model-based commands, including software lifecycle commands, using model-based workflow instances. Data related to command execution is stored in a shared repository such that command processors can understand their status in relationship to workflow instances. Further, since the repository is shared, command execution can be distributed and balanced across a plurality of different executive services. Embodiments also include model-based error handling and error recovery mechanisms.
    Type: Application
    Filed: October 26, 2007
    Publication date: April 30, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Karthik Arun Nanjangud Bhaskar, Erik B. Christensen, Amol Sudhakar Kulkarni, Prasad Sripathi Panditharadhya, Sundeep Sahi, Igor Sedukhin, Haoran Andy Wu
  • Publication number: 20090112559
    Abstract: Enabling and processing events. To enable events, an application model correlated to an application is declaratively defined. The application model describes operations of the application. One or more event models correlated to the application model are declaratively defined. The event models describe application execution locations where events are desired to be emitted in the execution of the application. Based on the correlation of the event models to the application models, the applications are instrumented with instrumentation code to cause the application to emit events at the execution locations. To process events an application model is defined. The application model includes one or more observation models. The observation models include a correlation of events to the observation model by defining instrumentation models in the application model. An event is received. The event is applied to the observation model based on the correlation. The event is processed according to the observation model.
    Type: Application
    Filed: October 26, 2007
    Publication date: April 30, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Erik B. Christensen, Igor Sedukhin, Amol Sudhakar Kulkarni, Mariusz G. Borsa, Haoran Andy Wu, Mandyam N. Kishore, Leo S. Vannelli, III, Anubhav Dhoot
  • Publication number: 20090113457
    Abstract: The present invention extends to methods, systems, and computer program products for performing requested commands for model-based applications. Embodiments of the invention permit efficient implementation of operations for model-based applications. Since drivers that are to implement an operation request data for implementing the operation, embodiments significantly reduce the likelihood of superfluous data being exchanged between an executive service and drivers. Further, if an operation is interrupted before implementation is complete, the operation can be resumed without having to re-perform already completed portions of the operation. Additionally, a user can be regularly updated on the progress of their commands.
    Type: Application
    Filed: October 26, 2007
    Publication date: April 30, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Igor Sedukhin, Daniel Eshner, Erik B. Christensen, Amol Sudhakar Kulkarni, Prasad Sripathi Panditharadhya, Girish Mittur Venkataramanappa, Vladimir Pogrebinsky, Haoran Andy Wu, Stephen T. Swartz, Sundeep Sahi, Sumit Mohanty
  • Publication number: 20090113407
    Abstract: The present invention extends to methods, systems, and computer program products for managing software lifecycle. Based on declarative models and knowledge of their interpretation, embodiments of the present invention facilitate lifecycle management for model-based software applications. Lifecycle models, such as, for example, lifecycle state machine models are stored in a shared repository such that executive services can determine how software application lifecycles are to be managed and transitioned. Software lifecycle activities can verify that a transition is possible and identify any errors preventing a lifecycle transition. Model-based error handling and error recovery mechanisms can be used to correct any identified errors.
    Type: Application
    Filed: October 26, 2007
    Publication date: April 30, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Igor Sedukhin, Daniel Eshner, Erik B. Christensen, Amol Sudhakar Kulkarni, Prasad Sripathi Panditharadhya, Girish Mittur Venkataramanappa, Vladimir Pogrebinsky, Haoran Andy Wu
  • Patent number: 7496649
    Abstract: A method includes retrieving an intermediate node policy characterizing communication properties supported by an intermediate node, the intermediate node being between a source node and a destination node in a communication path. The method includes forming a first policy-compliant message in accordance with the intermediate node policy, the first policy-compliant message including a request for a destination node policy characterizing communication properties supported by the destination node. A system includes a policy retriever comparing a source policy to one to an intermediate policy to determine whether the source policy is compatible with the intermediate policy. A message generator generates a policy request message by applying the intermediate policy to a request for a policy related to a destination node.
    Type: Grant
    Filed: February 20, 2004
    Date of Patent: February 24, 2009
    Assignee: Microsoft Corporation
    Inventors: Alfred Lee, IV, David Levin, Erik B. Christensen, Sara Wong