5731309
Synchronizing clipboards of multiple computers
This paper describes a new technique for transferring data between computers, the synchronized clipboard. Multiple computers can share a synchronized clipboard for all clipboard operations, so that data copied to the clipboard from one computer, using the standard Copy command, can be pasted directly on another computer using the standard Paste command. Synchronized clipboards are well-suited for a single user moving data among several computers in close proximity. We describe an implementation of synchronized clipboards that works across a wide range of existing systems, including 3Com PalmPilots, Microsoft Windows PCs, Unix workstations, and other Java-capable platforms. Our implementation adds no noticeable overhead to local copy and paste operations.
14511628
Interactive Simultaneous Editing of Multiple Text Regions
Simultaneous editing is a new method for automating repetitive text editing. After describing a set of regions to edit (the records), the user can edit any one record and see equivalent edits applied simultaneously to all other records. The essence of simultaneous editing is generalizing the user’s selection in one record to equivalent selections in the other records. We describe a generalization method that is fast (suitable for interactive use), domain-specific (capable of using high-level knowledge such as Java and HTML syntax), and under user control (generalizations can be corrected or overridden). Simultaneous editing is useful for source code editing, HTML editing, and scripting, as well as many other applications.
6575212
Lightweight Structured Text Processing
Text is a popular storage and distribution format for information, partly due to generic text-processing tools like Unix grep and sort. Unfortunately, existing generic tools make assumptions about text format (e.g., each line is a record) that limit their applicability. Custom-built tools are one alternative, but they require substantial time investment and programming expertise. We describe a new approach, lightweight structured text processing, which overcomes these difficulties by enabling users to define text structure interactively and manipulate the structure with generic tools. Our prototype system, LAPIS, is a web browser that can highlight, filter, and sort text regions described by the user. LAPIS has several advantages over other systems: (1) the ability to define custom structure with a simple, intuitive pattern language; (2) interactive specification, showing pattern matches in context and letting users choose the most convenient combination of manual selection and pattern matching; and (3) external parsers for standard text formats. The pattern language in LAPIS, text constraints, describes text structure in high-level terms, with region relationships like before, after, in, and contains. We describe an implementation of text constraints using a novel, compact representation of region sets as collections of rectangles, or region intervals. We also illustrate some examples of applying LAPIS to web pages, text files, and source code.
9330046
User interface continuations
Dialog boxes that collect parameters for commands often create ephemeral, unnatural interruptions of a program's normal execution flow, encouraging the user to complete the dialog box as quickly as possible in order for the program to process that command. In this paper we examine the idea of turning the act of collecting parameters from a user into a first class object called a user interface continuation. Programs can create user interface continuations by specifying what information is to be collected from the user and supplying a callback (i.e., a continuation) to be notified with the collected information. A partially completed user interface continuation can be saved as a new command, much as currying and partially evaluating a function with a set of parameters produces a new function. Furthermore, user interface continuations, like other continuation-passing paradigms, can be used to allow program execution to continue uninterrupted while the user determines a command's parameters at his or her leisure.
18318781
Schema Discovery
Structured data is distinguished from unstructured data by the presence of a schema describing the logical structure and semantics of the data. The schema is th e means through which we understand and query the underlying data. The schema permits the more sophi ticated structured queries that are not possible over schema-less data. Most systems assume that th e schema is predefined and is an accurate reflection of the data. This assumption is often not valid in n etworked databases that may contain data originating from many sources and may not be valid within leg acy databases where the semantics of data have evolved over time. As a result, querying and tasks that d epend on structured queries (including data integration and schema mapping) may not be effective. I n this paper, we consider the problem of discovering schemas from data. We focus on discovering prop erties of data that can be exploited in querying and transforming data. Finally, we very briefly con sider the suitability of mining approaches to the task of schema discovery.
2047708
Planning with Incomplete Information
Planning is a natural domain of application for frameworks of reasoning about actions and change. In this paper we study how one such framework, the Language E, can form the basis for planning under (possibly) incomplete information. We define two types of plans: weak and safe plans, and propose a planner, called the E-Planner, which is often able to extend an initial weak plan into a safe plan even though the (explicit) information available is incomplete, e.g. for cases where the initial state is not completely known. The E-Planner is based upon a reformulation of the Language E in argumentation terms and a natural proof theory resulting from the reformulation. It uses an extension of this proof theory by means of abduction for the generation of plans and adopts argumentation-based techniques for extending weak plans into safe plans. We provide representative examples illustrating the behaviour of the E-Planner, in particular for cases where the status of fluents is incompletely known.
5333493
A Heuristic Approach to the Multiple Diagnoses Problem
A new heuristic model for the diagnosis of multiple related disorders in a patient case is presented. The model constructs differential diagnoses of single and related disorders, based on a medical knowledge base containing disease descriptions and linkages among diseases in the knowledge base.
28952345
Consistency enforcement in medical knowledge base construction
Some aspects of knowledge base creation can be partially or completely automated, resulting in higher quality and smaller effort. Computer assistance is particularly valuable in ensuring the internal consistency of a knowledge base. The article describes several techniques for consistency enforcement in QMR-KAT, an interactive knowledge base editor for the INTERNIST-I/QMR medical knowledge base. Two strategies that improve consistency are applicable to a wide range of situations. The first strategy prevents simple (but common) inconsistencies. The second strategy reveals facts that are potentially (but not necessarily) inconsistent with known data, and may require further evaluation. Both strategies use the contents of the existing knowledge base in the evaluation of new facts.
7371269
Translating Web Data
We present a novel framework for mapping between any combination of XML and relational schemas, in which a high-level, user-specified mapping is translated into semantically meaningful queries that transform source data into the target representation. Our approach works in two phases. In the first phase, the high-level mapping, expressed as a set of inter-schema correspondences, is converted into a set of mappings that capture the design choices made in the source and target schemas (including their hierarchical organization as well as their nested referential constraints). The second phase translates these mappings into queries over the source schemas that produce data satisfying the constraints and structure of the target schema, and preserving the semantic relationships of the source. Nonnull target values may need to be invented in this process. The mapping algorithm is complete in that it produces all mappings that are consistent with the schema constraints. We have implemented the translation algorithm in Clio, a schema mapping tool, and present our experience using Clio on several real schemas.