Declarative (e.g., Rule Based) Patents (Class 717/117)
  • Patent number: 8533689
    Abstract: An inter-language interface is created for an executable file written in a legacy language. The header associated with the legacy file is initially marked up language to generate a first marked header. The legacy file is then wrapped with a first wrapper based at least partially upon the first marked header to create a first wrapped file. Additionally, the first marked header is associated with type maps customized in accordance with the target language in order to generate a second marked header. An executable file may then be generated by wrapping the first wrapped file with a second wrapper so as to be executable in the target language, thereby creating a second wrapped file. Additionally, an interface layer is generated to associate functions in the legacy language with methods in the target language and to define the usage in the target language of the parameters in the legacy language.
    Type: Grant
    Filed: October 10, 2008
    Date of Patent: September 10, 2013
    Assignee: The Boeing Company
    Inventor: Paul Z. Thunemann
  • Patent number: 8522261
    Abstract: A design-time status schema model describes the progress of a data object through a computing process. The status schema model includes status variables, processing actions and constraints for performing actions. The status schema model also may describe permitted changes to a status variable in response to performing an action. At runtime, the status schema model is used to control processing performed by, or on, an instance of a data object corresponding to the status schema model.
    Type: Grant
    Filed: December 28, 2006
    Date of Patent: August 27, 2013
    Assignee: SAP AG
    Inventors: Frank Michael Kraft, Guenter Pecht-Seibert, Klaus Meyer, Bernhard Thimmel, Patrick Josef Bardroff, Gregor Schilberth, Wasim Sadiq
  • Patent number: 8522204
    Abstract: A method for creating a user program for a safety controller designed to control an automated installation having a plurality of sensors and a plurality of actuators involves several programming steps. The user program comprises a first program portion, in which safety-related program variables are processed in failsafe fashion, and comprises at least one second program portion, in which non-safety-related program variables are processed, wherein failsafe processing is not necessary for the non-safety-related program variables within the second program portion.
    Type: Grant
    Filed: August 11, 2011
    Date of Patent: August 27, 2013
    Assignee: Pilz GmbH & Co. KG
    Inventors: Peter Moosmann, Matthias Reusch, Herbert Walter, Andreas Heckel
  • Patent number: 8522256
    Abstract: A workflow hosting system is described herein that allows non-messaging workflows to be hosted by a message-based service host. The system provides a host implementation, which can be used to host non-messaging workflows, or workflows that either do not begin with a message activity or do not use messaging activities at all. When the host receives a message for a workflow service, if it is not already running (or persisted), the system creates a new workflow service instance. If a workflow does not begin with a message activity, it cannot be started by sending a message because there is no activity to receive the message. To host a non-messaging workflow, the system provides a translation layer that sits between the communication layer and the workflow with methods that a developer can override to correctly activate the workflow.
    Type: Grant
    Filed: October 12, 2010
    Date of Patent: August 27, 2013
    Assignee: Microsoft Corporation
    Inventors: Asad Jawahar, Suwat Chitphakdibodin
  • Patent number: 8516467
    Abstract: A method and apparatus that utilizes techniques for formatting assembly and/or machine code, including using arrows, indentations and textual symbols, so that a programmer who reads the code has an enhanced understanding of the program flow. Different methods of assessing computing time complexity (e.g., the up branch method and the strongly connected subgraph method) have strengths and weaknesses but benefit from being used together.
    Type: Grant
    Filed: August 31, 2010
    Date of Patent: August 20, 2013
    Assignee: Nintendo Co., Ltd.
    Inventors: Nathaniel Guy, Chad Hinkle, Mark Jawad, Steve Rabin
  • Patent number: 8504988
    Abstract: Disclosed is a rules based editor configured to edit an equation related element where the rules based editor may use at least one rule related to a pre-built application module that is included in a viewer module. The viewer module may include rendering and equation evaluation instructions. The edited equation related element may be configured to be included in a component description file. The combination of the viewer module and the component description file may be configured to be used to display a version of the equation related element that is analytically related to an input value.
    Type: Grant
    Filed: March 16, 2006
    Date of Patent: August 6, 2013
    Assignee: Duiloe Mgmt. Limited Liability Company
    Inventors: David Glenn DeGroote, David G. Grossman
  • Publication number: 20130191811
    Abstract: Declaratively implementing a command. A method includes declaring an input gesture in a declarative programming language. Declaring an input gesture includes declaring one or more user performed actions. A command name is declared in a declarative programming language. A workflow is declared in a declarative programming language. Declaring a workflow includes declaring schedulable activities that are to be performed without specific specifications of the low level algorithms that are used to accomplish the activities. In an alternative example, workflows may be declared by declaring a wrapper to wrap imperative programming commands. The declared input gestures are bound with the declared workflow through the declared command name.
    Type: Application
    Filed: December 21, 2012
    Publication date: July 25, 2013
    Applicant: Microsoft Corporation
    Inventor: Microsoft Corporation
  • Patent number: 8490052
    Abstract: A data set may be managed by a host that provides access to clients through a protocol, such as a RESTful HTTP interface. A resource script may be expressed according to a script language featuring two types of instructions: data set instructions that correspond to the verbs of the protocol, and flow control instructions that alter the flow of execution of the resource script. At runtime, an execution context for the resource script may be selected as a local execution context (through a local script processor that issues protocol verbs to the host based on the data set operations) or a remote execution context (by sending the resource script to a script processor located on the host.) The runtime selection of data context may be executed without having to reconfigure the resource script, and with an equivalent effect on the data set.
    Type: Grant
    Filed: October 14, 2008
    Date of Patent: July 16, 2013
    Assignee: Microsoft Corporation
    Inventors: Dharma Shukla, Aditya Bhandarkar, Ori Amiga, Raymond Endres, Abhay Parasnis
  • Patent number: 8479158
    Abstract: A method for use with an information (or data) warehouse comprises managing the information warehouse with instructions in a declarative language. The instructions specify information warehouse-level tasks to be done without specifying certain details of how the tasks are to be implemented, for example, using databases and text indexers. The details are hidden from the user and include, for example, in an information warehouse having a FACT table that joins two or more dimension tables, details of database level operations when structured data are being handled, including database command line utilities, database drivers, and structured query language (SQL) statements; and details of text-indexing engines when unstructured data are being handled. The information warehouse is managed in a dynamic way in which different tasks—such as data loading tasks and information warehouse construction tasks—may be interleaved (i.e., there is no particular order in which the different tasks must be completed).
    Type: Grant
    Filed: June 5, 2008
    Date of Patent: July 2, 2013
    Assignee: International Business Machines Corporation
    Inventors: Ying Chen, Bin He, Ana Lelescu, James J. Rhodes, Rui Wang
  • Patent number: 8479157
    Abstract: The present invention provides methods and systems for integrating a procedural computational model with a declarative computational model. For example, in one aspect, the present invention provides a method for integrating a plurality of procedural instructions in a procedural computational system with a plurality of declarative rules in a declarative computational system. In such a method, for each of the procedural instructions operating on one or more variables, a hash table indexed by variable names is utilized to determine whether any of these variables participate in at least one of the declarative rules. Upon execution of a procedural instruction that changes a variable participating in a declarative rule, other variables associated with the rule are updated so as to maintain a relationship imposed by the rule among the variables. The updating of the other variables is performed prior to execution of other procedural instructions.
    Type: Grant
    Filed: December 29, 2009
    Date of Patent: July 2, 2013
    Assignee: Pegasystems Inc.
    Inventors: Alan Trefler, Andreas G. Hofmann
  • Patent number: 8479255
    Abstract: A registry for a service oriented architecture (SOA) comprising a plurality of processing objects. The registry may include a plurality of non-formalized operation requirements for the plurality of SOA objects, a plurality of technical assertions for the plurality of SOA objects, and a plurality of links, linking each non-formalized operation requirement to at least one technical assertion of the registry.
    Type: Grant
    Filed: February 14, 2008
    Date of Patent: July 2, 2013
    Assignee: Software AG
    Inventors: Björn Brauel, Harald Schöning
  • Patent number: 8473932
    Abstract: Systems and methods that enhance expressibility in a programming language (e.g., Visual Basic) via relaxation of artificial restrictions and extension of delegates associated therewith, without changing the runtime infrastructure. A stub is employed that can replace an impermissible expression in the programming language, to leverage the existing permissible expressions.
    Type: Grant
    Filed: March 1, 2010
    Date of Patent: June 25, 2013
    Assignee: Microsoft Corporation
    Inventors: Henricus Johannes Maria Meijer, Brian C. Beckman, Peter F. Drayton, David N. Schach, Ralf Lammel, Avner Y. Aharoni
  • Patent number: 8473897
    Abstract: A common intermediate representation for a data scripting language is provided for efficient representation and direct specification of programming constructs in memory. The common intermediate representation of data scripts allows data intensive applications to be created and analyzed in a machine accessible format, and the elements of the common intermediate representation can be stored independent of underlying storage specifics. Stored elements of the common intermediate representation of code are thus available for fast loading in memory when desired by other applications and programs by mapping the stored elements to the in memory intermediate representation.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: June 25, 2013
    Assignee: Microsoft Corporation
    Inventors: Donald F. Box, Bradford H. Lovering, John D. Doty, Jeffrey C. Schlimmer, John L. Hamby, David E. Langworthy
  • Publication number: 20130159970
    Abstract: The present invention extends to methods, systems, and computer program products for creating and manipulating custom compound data types in declarative programs. The present invention allows a developer to create and use custom compound data types without requiring the custom type to be specifically defined (e.g. via registering a custom assembly) in the underlying framework. This is accomplished by providing a data container that is configurable to represent virtually any combination of primitive or compound types defined within the framework. The present invention also provides a declarative model for interacting with data containers representing custom compound data types. This declarative model employs a path-based syntax (or other type of syntax) for accessing the elements of a custom compound data type. Multiple paths can be defined within a single unit of developer input so that multiple elements of a custom data type can be manipulated by the single unit of input.
    Type: Application
    Filed: December 15, 2011
    Publication date: June 20, 2013
    Applicant: Microsoft Corporation
    Inventors: Leon E. Welicki, John Anthony Taylor, Clark Roberts, Kenneth David Wolf
  • Patent number: 8468512
    Abstract: A method that includes: obtaining a computer code usable to process insurance claims; building a computer readable directed graph representing a control flow of the code, by identifying decisions and actions in the code, the graph comprising nodes connected by edges, some of the nodes being decision nodes associated with the decisions and some of the nodes being action nodes associated with the actions; determining, on the graph, benefit action nodes that are each associated with at least one monetary outcome of a specified insurance claim; identifying all logic paths that lead to each benefit action node by traversing the graph from each benefit action node backwards, each logic path comprising a sequence of preceding decision nodes and action nodes connected by edges, each set of paths being associated with a specified benefit action node representing a benefit rule; and outputting all benefit rules by presenting each specified benefit action vis à vis grouped logic paths associated with the specified benef
    Type: Grant
    Filed: October 30, 2009
    Date of Patent: June 18, 2013
    Assignee: International Business Machines Corporation
    Inventors: Jonathan Bnayahu, Edward F Nazarko, Mordechai Nisenson, Yahalomit Simionovici
  • Patent number: 8464233
    Abstract: The present invention extends to methods, systems, and computer program products for compile time interpretation of markup codes. Embodiments of the invention can be used to specify custom behaviors to be taken in response to any of a number of ways that markup codes (e.g., XML data) can be constructed and in response to any number of ways that markup codes can be accessed. At compile time, the construction of objects and/or the modes of access for objects using mark up codes are known. As such, the compiler, type-system and development environment can use a known set of custom behaviors to regulate or give feedback on what constructions or modes of access are allowed, and what their characteristics are.
    Type: Grant
    Filed: June 21, 2010
    Date of Patent: June 11, 2013
    Assignee: Microsoft Corporation
    Inventors: Lucian Jules Wischik, Avner Y. Aharoni
  • Patent number: 8438539
    Abstract: A computer program product that includes a project object. The project object can be configured for linearly organizing a series of custom self-contained content. The project object can be a compliable object that includes at least one menu framework object and a set of project data objects. The menu framework object can define a menu. The menu framework object conforms to a standardized menu slideshow framework. The standardized menu slideshow framework can be a reusable templated framework. Each of the project data objects can include a self-contained content object. Each self-contained content object can be programmatically linked to the menu framework object without modifying source code of the self-contained content object. The menu framework object can define a linear ordering of the set of project data objects.
    Type: Grant
    Filed: April 11, 2008
    Date of Patent: May 7, 2013
    Assignee: International Business Machines Corporation
    Inventor: David Hertenstein
  • Patent number: 8434056
    Abstract: A rule engine system works with physical systems monitored by Internet-enabled endpoints on one hand and developer custom applications on the other. Endpoints operate in both the domain specific language of the rule engine, and communicate with participating applications in the native protocols thereof. Whether new or legacy, whether hardware, software, or firmware, whether having much, little, or no digital processing or communication capacity, the participating application may be monitored and controlled by an endpoint that communicates over the Internet with the rule engine. Individual developers prepare rule language files, containing data and instructions for the rule engine to implement through the end point. Any apparatus, whether exclusively mechanical, electrical, electronic, highly sophisticated electronic, or some combination may be monitored and controlled. Any participating application, from a mechanical lawn sprinkler to an Internet commerce server may be implemented thus.
    Type: Grant
    Filed: June 17, 2010
    Date of Patent: April 30, 2013
    Inventors: Phillip J. Windley, Samuel Curren
  • Patent number: 8429608
    Abstract: A method and apparatus for providing variability rules for component model and architecture design are provided. The apparatus includes a category-determination unit which determines a category of implicit variability rules with respect to variability-set component model elements and elements associated with the variability-set component model elements; and an implicit-variability-rule-application unit which applies the implicit variability rules, which are given to the category, to the elements associated with the variability-set component model elements.
    Type: Grant
    Filed: February 22, 2008
    Date of Patent: April 23, 2013
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Kyung-Ho Son, Ja-gun Kwon
  • Patent number: 8429395
    Abstract: A request is received from a software component of a software product to access a value of a public setting of the software component. A check is made as to whether the request conforms to an appropriate format for the public setting. If the request conforms to the appropriate format, then the requested access is performed. However, if the request does not conform to the appropriate format, then the requested access is denied. Multiple values for the public setting can be received and maintained concurrently.
    Type: Grant
    Filed: June 12, 2009
    Date of Patent: April 23, 2013
    Assignee: Microsoft Corporation
    Inventors: Christopher D. Russell, Eric P. Traut, Ravisankar Pudipeddi, Adam D. Stritzel, Suyash Sinha
  • Patent number: 8429624
    Abstract: An application programming interface (API) implementation that can interface between an application and a programming library. The implementation includes a Function Router Wrapper that receives a formatted string from the application. The formatted string includes a function name element filled with a function name, an input element filled with function input parameters, and an unfilled output element. The Function Router Wrapper converts the formatted string and passes it to a Function Router, which parses the converted formatted string to access the function name and the function input parameters. The Function Router calls a library function based on the accessed information. When the called library function is completed, the Function Router collects generated function outputs and embeds them into the formatted string output element. The Function Router passes the formatted string back up to the Function Router Wrapper, which converts the formatted string and passes it back up to the application.
    Type: Grant
    Filed: August 17, 2010
    Date of Patent: April 23, 2013
    Assignee: LSI Corporation
    Inventors: Jason Unrein, Louis Henry Odenwald, Jr., Rose George
  • Patent number: 8429607
    Abstract: Provided are a method and apparatus for managing variability points that represent variability of components of software. The method includes connecting variability points of components to each other and also connecting at least one variability point of the components to a corresponding variability point of at least one of source code and build script; receiving an input having a predetermined value and setting the predetermined value to a variability point of the components; reflecting corresponding values of the predetermined value to the connected variability point of at least one of the source code and build script.
    Type: Grant
    Filed: January 31, 2008
    Date of Patent: April 23, 2013
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Kyoung-ho Son, Ja-gun Kwon
  • Patent number: 8418135
    Abstract: Some embodiments of a method and an apparatus to abstract away rule languages from a rule engine have been presented. In one embodiment, rules written in a first rule language are parsed into descriptor classes, which are used to model concepts that can be expressed in a rule engine. An intermediate structure is generated from the parsed rules. The intermediate structure is input to a core of the rule engine, which is operable to execute the rules.
    Type: Grant
    Filed: May 31, 2007
    Date of Patent: April 9, 2013
    Assignee: Red Hat, Inc.
    Inventors: Mark Proctor, Edson Tirelli, Robert K. McWhirter
  • Patent number: 8413111
    Abstract: In various embodiments, a data-driven model is provided for an application detection engine for the detection and identification of network-based applications. In one embodiment, information can be input into an application detection database. The information may include a hostname, ports, transport protocol (TCP/UDP), higher layer protocol (SOCKS, HTTP, SMTP, FTP, etc), or the like. The information may be associated with a given application. The information may be used to create rule sets or custom program logic used by one or more various application detection engines for determining whether network traffic has been initiated by a given application. The information may be dynamically loaded and updated at the application detection engine.
    Type: Grant
    Filed: September 28, 2009
    Date of Patent: April 2, 2013
    Assignee: Actiance, Inc.
    Inventor: Steven B. Paster
  • Patent number: 8407661
    Abstract: There is described a method and system for developing for an automation process a screen viewable on a target computer that has user interface objects. A development computer has a set of common design time components from a general purpose software development kit that also has a databinding facility and a set of customization components. Those components have an interface that allows access to the available for use automation process data objects and a process object picker that act as a user interface to the databinding facility to allow the browsing of a subset of the available for use data objects and selecting of one or more of the objects in the subset for binding by the databinding facility either to one or more members of the user interface objects or one or more of the user interface objects or a combination of the same.
    Type: Grant
    Filed: July 28, 2008
    Date of Patent: March 26, 2013
    Assignee: ABB Research Ltd.
    Inventors: Jianjun Wang, Xiongzi Li, Carlos Martinez, Thomas Fuhlbrigge
  • Patent number: 8402436
    Abstract: A method of accessing layers in a multi-layer software architecture including a first layer, a second layer, and a third layer. The method includes: at the third layer, publishing an interface; and at the first layer, before execution of a first function, registering a callback routine with the third layer using the interface.
    Type: Grant
    Filed: October 27, 2008
    Date of Patent: March 19, 2013
    Assignee: International Business Machines Corporation
    Inventors: William R. Bireley, Delmar E. Blevins, Stephen A. Brodsky, Jaijeet Chakravorty, Anshul Dawra, Suavi A. Demir, Swaminathan Gounder, Paul Ostler
  • Patent number: 8402427
    Abstract: A method, system and apparatus for providing a web application or to generate the basis for a complete web application source code. Based on user interface input files provided by graphic designers, the web application or generates application framework code, an event handler skeleton and s logic foundation code. Web developers then prepare additional source code object-oriented programming language based on the event handler skeleton and business logic foundation code to create web application business logic objects and handler methods. Ultimately the graphical user interface input files prepared by the designers and web application source code prepared by the web developers dynamically bound at runtime.
    Type: Grant
    Filed: August 29, 2006
    Date of Patent: March 19, 2013
    Assignee: Gutenberg Printing LLC
    Inventor: Hiang-Swee Chiang
  • Patent number: 8397216
    Abstract: A compiler generates code providing an execution sequence, from a declarative event-driven model, for execution by a computer. To assist in debugging the declarative event-driven model, the compiler also generates cross-references that relate steps in the generated code to elements of the declarative source code. The cross-references may be used as input to a debugger, along with the declarative source and the generated code, to assist a user who is stepping through the generated code (for example) in understanding which portion of the declarative source gave rise to the current step in the generated execution sequence.
    Type: Grant
    Filed: February 29, 2008
    Date of Patent: March 12, 2013
    Assignee: International Business Machines Corporation
    Inventors: Joachim H. Frank, Wilfred C. Jamison
  • Patent number: 8370795
    Abstract: A method for explaining a value of a selected field includes obtaining a calculation tree for the selected field, where the calculation tree represents dependencies between the selected field and precedent data elements. The method further includes obtaining a first equation associated with the selected field from the calculation tree, and displaying a first value associated with the selected field and the first equation in symbolic form. The first equation includes a first precedent data element. The selected field is dependent on the first precedent data element. The method further includes receiving an expansion request for the first equation, obtaining a second equation associated with the first precedent data element, and displaying a second value associated with the first precedent data element and the second equation with the first value and the first equation in a dependency hierarchy.
    Type: Grant
    Filed: January 31, 2008
    Date of Patent: February 5, 2013
    Assignee: Intuit Inc.
    Inventor: Robert G. Sage
  • Patent number: 8356294
    Abstract: In an embodiment, a computer apparatus comprises a network interface; a processor; a packet forwarding unit; and instructions which when executed cause storing a first executable software module in computer storage; receiving and storing, in association with the first software module, a first human-readable declaration of one or more available extension points within the first software module; receiving and storing an extension software module that implements a particular one or more of the extension points; installing and executing the first software module and the extension software module; and invoking the extension software module when the particular extension point is reached during execution of the first software module. In an embodiment, a declaration of extension points enables extending a software module while running in a host, by registering an extension matching the extension points, yet the author of the extension does not need to access any code of the extended module.
    Type: Grant
    Filed: February 13, 2007
    Date of Patent: January 15, 2013
    Assignee: Cisco Technology, Inc.
    Inventors: Kollivakkam Raghavan, Venkateswara Siramdas, Ramakrishna Reddy Kandula
  • Patent number: 8356276
    Abstract: There are methods and apparatus, including computer program products, for a flexible generation framework. The generation framework encapsulates a variety of different code generation technologies within a common interface. This allows various types of generator cores operating in various development environments to be integrated into the framework, and enables the generation of code using various generating technologies.
    Type: Grant
    Filed: December 4, 2009
    Date of Patent: January 15, 2013
    Assignee: SAP AG
    Inventor: Joachim Bender
  • Patent number: 8341598
    Abstract: Declaratively implementing a command. A method includes declaring an input gesture in a declarative programming language. Declaring an input gesture includes declaring one or more user performed actions. A command name is declared in a declarative programming language. A workflow is declared in a declarative programming language. Declaring a workflow includes declaring schedulable activities that are to be performed without specific specifications of the low level algorithms that are used to accomplish the activities. In an alternative example, workflows may be declared by declaring a wrapper to wrap imperative programming commands. The declared input gestures are bound with the declared workflow through the declared command name.
    Type: Grant
    Filed: January 18, 2008
    Date of Patent: December 25, 2012
    Assignee: Microsoft Corporation
    Inventors: David K. Peck, Randy Kimmerly, Christopher L. Anderson
  • Patent number: 8332813
    Abstract: A service re-factoring method and system. The method includes selecting by a computing system, a first service comprising a first name. The computing system receives a second name for a second service to be generated from the first service. The computing system executes a service refactoring software application, adjusts a granularity of the first service, and generates the second service. The computing system retrieves first traceability links associated with the first service and a first value associated with a first service identification technique. The first traceability links are created within the second service. The computing system generates a second value associated with a second service identification technique. The first service, the first name, and the first value are removed from the computing system. The computing system stores the second service, the second name, the second value, and the first traceability link.
    Type: Grant
    Filed: December 11, 2008
    Date of Patent: December 11, 2012
    Assignee: International Business Machines Corporation
    Inventors: Ali P. Arsanjani, Ahamed Jalaldeen, Siddharth Purohit
  • Patent number: 8321833
    Abstract: The subject disclosure relates to a syntax for a scripting language that allows data intensive applications to be written in a compact, human friendly, textual format. The scripting language can be a declarative programming language, such as the “D” programming language, which is well suited to the authoring of data intensive programs. A compact query syntax is provided for D that simplifies the expression of complex and data intensive programs. In another non-limiting aspect, conventional operator precedence is modified to accommodate the compact syntax and other unique features of a general purpose declarative programming language.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: November 27, 2012
    Assignee: Microsoft Corporation
    Inventors: David E. Langworthy, Bradford H. Lovering, Donald F. Box, Giovanni M. Della-Libera, Jeffrey S. Pinkston, Jeffrey C. Schlimmer, John D. Doty, John L. Hamby
  • Patent number: 8307338
    Abstract: A method and system provides one or more product type descriptions, and constructs a map between the sub-conditions of the product type descriptions and constructs in a Web Ontological Language (OWL). The method converts the product type description rules into new OWL classes by creating a new OWL class for each corresponding rule; adding the new OWL class to the OWL ontology; for each condition of the corresponding rule, extracting sub-conditions; for each the sub-condition extracted; creating new constructs for the new OWL class using the map; and adding new class restrictions to the new OWL class, wherein each of the new class restrictions relates to a corresponding condition of the corresponding rule.
    Type: Grant
    Filed: April 1, 2008
    Date of Patent: November 6, 2012
    Assignee: Xerox Corporation
    Inventors: Kirk J. Ocke, Dale E. Gaucas, Michael D. Shepherd
  • Patent number: 8296744
    Abstract: Embodiments of tree-based directed graph programming structures for a declarative programming language are provided. In various embodiments, complex graph structured data, referred to as “DGraphs” herein in one non-limiting implementation, is authored using a compact, human friendly syntax without the use of explicit identifiers. In one non-limiting aspect, the syntax includes support for conformance relationships, also referred to as factored relationships. In another non-limiting aspect, the semistructured graph data is a tree-based representation and the syntax includes lexical resolution of references or lexical scoping, and/or non local initialization.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: October 23, 2012
    Assignee: Microsoft Corporation
    Inventors: David E. Langworthy, John L. Hamby, Bradford H. Lovering, Donald F. Box
  • Patent number: 8296729
    Abstract: A system features a back-end computing system that includes a library that contains objects for use with a computer programming language, and a front-end computing system that executes a development environment. The development environment includes a plug-in that supports the computer programming language, and the plug-in enables access to the library. The plug-in includes a first component to perform syntax checking for the computer programming language in the integrated development environment, and a second component to provide access to the library from the integrated development environment.
    Type: Grant
    Filed: November 17, 2005
    Date of Patent: October 23, 2012
    Assignee: SAP AG
    Inventors: Olivier Ficatier, Vincent Figari
  • Patent number: 8296731
    Abstract: Various technologies and techniques are disclosed that dynamically implement method selections based on declarative requirements and interaction scope. Requirements that describe when each of multiple methods that can perform a particular operation should be called can be declared using a declarative syntax. Based upon a program event, the system determines that a request should be made to select a most appropriate method of the available methods to call to perform the particular operation. Upon receiving the request to select the most appropriate method, a sort process is executed that uses an interaction scope of a current user context in combination with a plurality of sort rules to generate a sorted list of the available methods into a particular order based upon appropriateness. A most appropriate method, if any, is returned to the calling application, and then called to perform the particular operation.
    Type: Grant
    Filed: March 5, 2007
    Date of Patent: October 23, 2012
    Assignee: Microsoft Corporation
    Inventors: Anson Tsao, Blake Stone
  • Patent number: 8291006
    Abstract: Techniques for generating a distributed stream processing application are provided. The techniques include obtaining a declarative description of one or more data stream processing tasks, wherein the declarative description expresses at least one stream processing task, and generating one or more execution units from the declarative description of one or more data stream processing tasks, wherein the one or more execution units are deployable across one or more distributed computing nodes, and comprise a distributed data stream processing application.
    Type: Grant
    Filed: May 30, 2008
    Date of Patent: October 16, 2012
    Assignee: International Business Machines Corporation
    Inventors: Henrique Andrade, Bugra Gedik, Kun-Lung Wu
  • Patent number: 8266586
    Abstract: A unified programming environment allows application developers to work with declarative, procedural and service model based logic. In one aspect, instructions on a computer readable medium include at least one of a declarative logic module adapted to define an object and a procedural logic module adapted to define an object. A service model based logic module is adapted to define actions to be performed on the object with a reference to said at least one of the declarative and procedural logic module.
    Type: Grant
    Filed: October 29, 2004
    Date of Patent: September 11, 2012
    Assignee: Microsoft Corporation
    Inventor: Kuansan Wang
  • Publication number: 20120222003
    Abstract: A method of creating an application definition for a distributed application is disclosed. Constructs corresponding with a schema of the distributed application are defined in a declarative and technology agnostic manner. The constructs include the application definition, a module definition, and a component definition. Each construct includes metadata.
    Type: Application
    Filed: February 28, 2011
    Publication date: August 30, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Dharma Shukla, Akash Jeevan Sagar, Nathan C. Talbert, Muthukaruppan Annamalai, Robert B. Schmidt, Aditya Bhandarkar, Asad Jawahar
  • Patent number: 8250530
    Abstract: One embodiment is directed to a method that may be practiced in a declarative application with composites organized hierarchically, including composites in the same hierarchy, but not directly related by direct intervening child/parent relationships. The method includes acts for providing a link between composites unrelated by direct intervening child/parent relationships. The method includes rendering data at a user interface. The data is associated with a first composite in a declarative application. The method further includes detecting, at the user interface, user interaction with the rendered data. As a result of detecting user interaction with the rendered data, the method further includes defining a composite path to the first composite. The method further includes providing the name of the path as a local variable to a second composite such that the second composite can interact with the data.
    Type: Grant
    Filed: May 27, 2009
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Simon David Kent, William Emeric Aitken, Siddharth Jayadevan
  • Patent number: 8250529
    Abstract: A method of generating procedural language code for extracting data from a data warehouse comprising the steps of accepting a declarative specification and generating procedural language code to execute the declarative specification.
    Type: Grant
    Filed: August 7, 2007
    Date of Patent: August 21, 2012
    Assignee: SAP America, Inc.
    Inventors: Sachinder S. Chawla, Jason Chen, Alex Gorelik, Hon C. Thio, Dave Wang
  • Patent number: 8245189
    Abstract: A method for managing a configuration of heterogeneous software artifacts uses a common central configuration representation. An artifact of an unknown type, from an initial software solution, is submitted to a solution configuration tool. The solution configuration tool sends a request to a solution architect for locations of configuration files within the artifact. For each artifact whose configuration file locations have been requested from the solution architect, the solution configuration tool determines if each corresponding configuration file is a property file or an Extensible Markup Language (XML) file. If the corresponding configuration file is an XML file, then the solution architect provides a first and second xPath for locating the names and values of the configuration parameters in the XML configuration file. The configuration file and configuration parameter locator information is then stored in a configuration locator file.
    Type: Grant
    Filed: June 21, 2007
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventors: Karunakar Bojjireddy, Carroll E. Fulkerson, Jr., Amber Roy Chowdhury
  • Patent number: 8245191
    Abstract: A method, system and article of manufacture are disclosed for configuring software application components. The method comprises the steps of developing a set of policy application rules, assembling unconfigured software components into one or more software applications, and applying said application rules to the unconfigured software components to configure said software components. In the preferred embodiment, the applying step includes the steps of passing the unconfigured software components to a policy rule engine, and using said policy rule engine to apply said application rules to the unconfigured software components to produce the configured components. In addition, the method may be done to resolve ambiguities in the software components. In particular, the application rules may be designed to resolve ambiguities in the application of these rules to the unconfigured software components. Also, each application rule preferably includes a condition, an application template, and a policy.
    Type: Grant
    Filed: July 3, 2008
    Date of Patent: August 14, 2012
    Assignee: International Business Machines Corporation
    Inventors: Shinichi Hirose, Nirmal K. Mukhi, Yuichi Nakamura, Fumiko Satoh
  • Patent number: 8239820
    Abstract: A compliance system for design and testing of web services, having an artifact repository storing a set of artifacts and coupled to a runtime engine. The runtime engine includes a rules engine, a results processor and a manager interface, wherein the runtime engine applies a set of encoding requirements to the set of artifacts and a conformance output is generated.
    Type: Grant
    Filed: July 17, 2006
    Date of Patent: August 7, 2012
    Assignee: Progress Software Corporation
    Inventors: Aaron White, James Murphy, Timothy Ewald
  • Patent number: 8239882
    Abstract: Methods, systems, and computer products are provided for exposing the programming of an application user interface to allow modification of the associated user interface to include adding, removing, disabling, enabling and repurposing new or existing user interface components.
    Type: Grant
    Filed: August 30, 2005
    Date of Patent: August 7, 2012
    Assignee: Microsoft Corporation
    Inventors: Savraj Singh Dhanjal, Alex Mogilevsky, David Andrew Morton, Preethi Ramani, Dien Trang Luu, Eric Michael Faller, Andrew Fomichev, Andy Chung-An Chang
  • Patent number: 8234621
    Abstract: A method, system and a computer readable medium for performing a rule based instantiation of a generic software and/or system development process to provide a project specific implemented instantiated process. The proposed approach provides a gradual way to provide an implemented instantiated process adapted to project specific needs by using a staggered instantiation mode. The approach distinguishes between high level instantiation and detailed instantiation depending on the nature of the instantiation operation. The approach is flexibly applicable to software and systems development processes and the set of instantiation operations is extendable.
    Type: Grant
    Filed: July 15, 2008
    Date of Patent: July 31, 2012
    Assignee: Siemens Aktiengesellschaft
    Inventors: Peter Killisperger, Beate Nothhelfer-Kolb, Thomas Stückl
  • Patent number: 8234625
    Abstract: Pre-lookup index search blocks and multidimensional interpolation blocks that use the results of the pre-lookup index search blocks in a block diagram to graphically specify (and perform) multidimensional interpolation calculations. The pre-lookup index search and interpolation blocks are defined so as to provide for a separation of breakpoint set data and table data, thus enabling a user to explicitly manage the use of common breakpoint set data. A block diagram created using pre-lookup index search blocks and interpolation using pre-lookup index search blocks shows all tables that use a particular breakpoint set via graphical connections on the block diagram between the pre-lookup index search blocks and the interpolation using pre-lookup index search blocks.
    Type: Grant
    Filed: July 24, 2007
    Date of Patent: July 31, 2012
    Assignee: The MathWorks, Inc.
    Inventor: Robert O. Aberg
  • Patent number: 8230386
    Abstract: The present invention extends to methods, systems, and computer program products for monitoring distributed applications. Declarative application models are used. Operational data for a deployed application can be compared to an application intent expressed in a corresponding declarative application to provide more effective monitoring of application behavior. Application components can subscribe to an event fabric to receive configurations that indicate what events the application is to emit (i.e., publish into the event fabric) for monitoring. Thus, applications essentially subscribe to produce information (as opposed to subscribing to receive information). Monitoring can be dynamically adjusted in response to environment changes.
    Type: Grant
    Filed: August 23, 2007
    Date of Patent: July 24, 2012
    Assignee: Microsoft Corporation
    Inventors: Igor Sedukhin, Gueorgui Bonov Chkodrov, Amol Sudhakar Kulkarni, Mariusz Gerard Borsa, Haoran Andy Wu, Daniel Eshner, Gilles C. J. A. Zunino