Peter M. D. GrayUniversity of Aberdeen | ABDN · Department of Computing Science
Peter M. D. Gray
D.Phil. (Oxon), FBCS
About
146
Publications
6,472
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
1,920
Citations
Introduction
Additional affiliations
May 1968 - present
Education
October 1961 - November 1965
October 1958 - June 1961
University of Cambridge, Queens' College
Field of study
- Natural Sciences
Publications
Publications (146)
Reuse has long been a major goal of the knowledge engineering community. We present a case study of the reuse of constraint knowledge acquired for one problem solver, by two further problem solvers. For our analysis, we chose a well-known benchmark knowledge base (KB) system written in CLIPS, which was based on the propose and revise problem-solvin...
This paper explores the solution of the VT Sisyphus II challenge using a Constraint Satisfaction Problem (CSP) paradigm and
is an extension of the Ex-trAKTor work presented at EKAW 2006. ExtrAKTor takes a Protégé KB describing a propose and- revise
(PnR) problem, including both constraints & fixes. Subsequently, it extracts and transforms these com...
In this paper we present a proposal for representing soft constraint satisfaction problems (CSPs) within the Semantic Web architecture. The proposal is motivated by the need for a service-providing agent in a virtual organisation to reason about its commitments as soft constraints. The three essential requirements addressed are: (1) the need to hav...
In this paper, we propose a Blackboard Architecture as a means for coordinating hybrid reasoning over the Semantic Web. We
describe the components of traditional blackboard systems (Knowledge Sources, Blackboard, Controller) and then explain how
we have enhanced these by incorporating some of the principles of the Semantic Web to pro- duce our Sema...
As new semantic web standards evolve to allow quantifled rules in FOL, we need new ways to capture them from end users. We show how to do this against a graphic view of entities and their relationships (not just their subclasses). Some of these relationships can be derived from data values by algebraic expressions. For example scientists may use ad...
Reuse has long been a major goal of the Knowledge Engineering community. The focus of this paper is the reuse of domain knowledge acquired for an initial problem solver, with a further problem solver. For our analysis we chose a knowledge base system written in CLIPS based on the propose-and- revise (PnR) problem solver, and which had a lift/elevat...
In this paper, we discuss the need for a hybrid reasoning approach to handing Semantic Web (SW) data and explain why we believe that the Blackboard Architecture is particularly suitable. We describe how we have utilised it for coordinating a combination of ontological inference, rules and constraint based reasoning within a SW context.
After descri...
Constraints are commonly used to maintain data integrity and consistency in databases. This ability to store constraint knowledge,
however, can also be viewed as an attachment of instructions on how a data object should be used. In other words, data objects
are annotated with declarative knowledge which can be transformed and processed.
This abstr...
In this paper we present the design of an optimiser for the object-oriented database P/FDM. We explore the approach of using a navigational query language, based on Shipman's original Daplex language [Sh 81] for the optimisation. The advantage of this is that it fits the navigational style of querying very well, but it is also optimisable. The opti...
A method is described for implementing a general database supporting objects, which is tightly coupled to Prolog. This provides the Prolog interpreter with database storage for its clauses. It also allows one to create and access from Prolog objects of arbitrary type such as frames with attached procedures. The interface from Prolog allows the full...
The ability to create reliable, scalable virtual organisations (VOs) on demand in a dynamic, open and competitive environment is one of the challenges that underlie Grid computing. In response, in the CONOISE-G project, we are developing an infrastructure to support robust and resilient virtual organisation formation and operation. Specifically, CO...
Customers in the future are likely to obtain their services from coalitions of service providers. These coalitions can be described as virtual organisations (VOs); they are groups of service providers that form relationships to service customers' demands on an ad-hoc basis. For a VO to be effective, it must be reliable and scalable, and, realistica...
The ability to create reliable, scalable virtual organisations (VOs) on demand in a dynamic, open and competitive environment is one of the challenges that underlie Grid computing. In response, in the CONOISE-G project, we are developing an infrastructure to support robust and resilient virtual organisation formation and operation. Specifically, CO...
It is over 20 years since the functional data model and functional programming languages were first introduced to the computing community. Although developed by separate research communities, recent work, presented in this book, suggests there is powerful synergy in their integration. As database technology emerges as central to yet more complex an...
The ability to create reliable and scalable virtual organisations (VOs) on demand in a dynamic, open and competitive environment is one of the major challenges that underlie Grid computing. In response, in the CONOISE-G project, we are developing an infrastructure to support robust and resilient virtual organisation formation and operation. Specifi...
Our interest lies in exploring the interplay between onto- logical and rule based reasoning with instance data when applied to Constraint Satisfaction Problem (CSP) solving. The AKTive Workgroup Builder (AWB) is a Semantic Web application developed to help us achieve this aim. We share our experiences of developing the AWB - how the current technol...
The ability to create reliable, scalable virtual organisations (VOs) on demand in a dynamic, open and competitive environment is one of the challenges that underlie Grid computing. In response, in the CONOISE-G project, we are developing an infrastructure to support robust and resilient virtual organisation formation and operation. Specifically, CO...
A key challenge in Grid Computing is the ability to create reliable and scalable virtual organisations (VOs) which operate in an open, dynamic and competitive environment. In response, in the CONOISE-G project, we are developing an infrastructure to support robust and resilient virtual organisation formation and operation. Specifically, CONOISE-G p...
Drawing on experience gained over a series of distributed knowledge base and database projects, we argue for the utility of an expressive quantified constraint language for the Semantic Web logic layer. Our Constraint Interchange Format (CIF) is based on classical range-restricted FOL. CIF allows the expression of invariant conditions in Semantic W...
This paper describes our efforts to provide a collaborative problem solving architecture driven by semantic-based workflow orchestration and con-straint problem solving. These technologies are based on a shared ontology that allows two open systems of very different natures to communicate, perform spe-cialised tasks and achieve common goals. We giv...
In a virtual organisation (VO), a group of cooperating agents may offer resources (or services) consisting of all, or part, of the sum of their individual contributions. Some of these resources may already be in use for certain time periods (existing commitments), and these existing commitments may vary in value to the VO. Using constraint reificat...
This paper describes our efforts to provide a collaborative problem solving architecture driven by semantic-based workflow orchestration and constraint problem solving. These technologies are based on a shared ontology that allows two open systems of very different natures to communicate, perform specialised tasks and achieve common goals. We give...
The Semantic Web is a network of machine-processable resources existing in parallel with the traditional Web. Software systems can exploit the resources available on the Semantic Web to automate tasks for users. A variety of Semantic Web applications can be realised through constraint interchange and processing, including e-commerce and computer-su...
We report on experience with using RDF to provide a rich content language for use with FIPA agent toolkits, and on RDFS as a metadata language. We emphasise their utility for programmers working in agent applications and their value in Agent-Oriented Software Engineering. Agent applications covered include Intelligent Information Agents, and agents...
Functional data languages have been shown to have many attractive features for the implementers of database management systems. Perhaps the most important of these is the property of referential transparency, which functional expressions possess and which makes them very easy to analyse, combine and transform. In this chapter, we discuss how refere...
We argue the need for a federated information infrastructure that is perceived by users to be functionally integrated, yet maintaining its autonomy. There are various ways to do this, but the crucial issue is the provision of a common semantics and a shared data model. For this purpose we have adapted the Functional Data Model1 and the Daplex langu...
In this chapter we describe the architecture of two distributed systems based on the Functional Data Model (FDM): the P/FDM database management system and the P/FDM mediator. These systems are closely related to one another and they share several source modules. In describing these systems we shall focus on their modular design, and the different k...
This introductory chapter begins by arguing, by means of examples, that the basic idea of a function is quite straightforward and intuitive, when stripped of its mathematical jargon and notation. We further argue that it is particularly applicable to the management of data. We discuss the role and importance of data models and argue that, with mode...
The ability to create reliable and scalable virtual organisations (VOs) on demand in a dynamic, open and competitive environment is one of the challenges that underlie the Grid concept and research. In this paper, we describe the agent-based mechanisms that we are currently developing within the CONOISE and CONOISE-G projects for supporting VO form...
It is over 20 years since the functional data model and functional programming languages were first introduced to the computing community. Although developed by separate research communities, recent work, presented in this book, suggests there is powerful synergy in their integration. As database technology emerges as central to yet more complex an...
We report on experience with using RDF to provide a rich content language for use with FIPA agent toolkits, and on RDFS as a metadata language. We emphasise their utility for programmers working in agent applications and their value in Agent-Oriented Software Engineering. Agent applications covered include Intelligent Information Agents, and agents...
Virtual organisations underpin many important activities in distributed computing, including e-commerce and e-science. This paper describes a new technique by which software agents can intelligently form virtual organisations to meet some pre-specified requirements. Our approach builds on work in BDI agents and constraint satisfaction techniques. U...
Developments in our ability to integrate and analyze data held in existing heterogeneous data resources can lead to an increase in our understanding of biological function at all levels. However, supporting ad hoc queries across multiple data resources and correlating data retrieved from these is still difficult. To address this, we are building a...
We present a framework for semantic web applications based on constraint interchange and processing. At the core of the framework is a well-established semantic data model (P/FDM) with an associated expressive constraint language (Colan). To allow data instances to be transported across a network, we map our data model to the RDF Schema specificati...
The KRAFT project aims to investigate how a distributed architecture can support the transformation and reuse of a particular class of knowledge, namely constraints, and to fuse this knowledge so as to gain added value, by using it for constraint solving or data retrieval.
We show how quantified constraints expressed in a sub-language of firstorder logic, against a shared data model that is free to evolve, provide an excellent way of transporting domain-specific semantics along with the data. In this form it can be processed automatically by various intelligent components, instead of requiring human intervention. It...
We present a framework for semantic web applications based on constraint interchange and processing. At the core of the framework is a well-established semantic data model (P/FDM) with an associated expressive constraint language (Colan). To allow data instances to be transported across a network, we map our data model to the RDF Schema specificati...
Transforming queries for efficient execution is particularly important in federated database systems since a more efficient execution plan can require many fewer data requests to be sent to the component databases. Also, it is important to do as much as possible of the selection and processing close to where the data are stored, making best use of...
Transforming queries for efficient execution is particularly
important in federated database systems since a more efficient execution
plan can require many fewer data requests to be sent to the component
databases. Also, it is important to do as much as possible of the
selection and processing close to where the data are stored, making best
use of...
We describe a modular compiler architecture that has been developed for a functional data model DBMS. The architecture allows compilers for new sub-languages to be constructed rapidly, by reusing the components of the existing compiler, and allows new semantics and code generation strategies to be defined for existing language constructs. This poin...
Collection Views provide a means of coercing an object (or set of objects) of one type into an equivalent set of objects of
another, more useful type. For example, in some circumstances it may be more convenient to view a shape object as a set of
coordinate objects — in order to use a method to display the shape on the screen, for example. Collecti...
. We describe a technique for formulating a problem for solution by a nite domain constraint solver, where the nite domains can be modelled in correspondence with an Entity-Relationship diagram or UML Class diagram. This works particularly well where data for the problem is retrieved from database(s) over a network, but we believe the modelling dis...
The members of the KRAFT (Knowledge Reuse And Fusion/Transformation) consortium [3] are working together to design and build a system which will have intelligent mediators that act as knowledge brokers and, more significantly, transform knowledge to make it useable by powerful problem-solvers at various sites on the network. The project aims to inv...
The newly established standards of CORBA and XML make it much easier to interoperate between different database software running
on different platforms. We are using these in a mediator-based architecture that supports integrated access to biological
databases. We discuss, in turn, design issues that arise from using each of the standards. In CORBA...
The provision of more intelligent support for complex database applications is becoming an important research topic, and declaratively stated integrity constraints are increasingly being seen as a potential source of semantic information for such advanced DBMS’s. However, despite much research effort, the problem of efficiently compiling and checki...
P/FDM is an object-oriented database implemented in Prolog that is intended to provide a platform for the development of data intensive applications (e.g. scientific databases) . It is being used to store information about protein structures. A Prolog application has been developed that uses this large database to assist biochemists in homology mod...
This paper describes the use of a declarative constraint language to describe the semantics of a complex scientific domain, three-dimensional protein structure data, and assesses the requirements for integrity constraint mechanisms in this application area. The constraint language is based on the functional data manipulation language Daplex, and we...
In recent years, research about distributing databases over networks has become increasingly important. Here we concentrate on the issues of interoperability of heterogeneous DBMSes, and enforcing integrity across a multidatabase made in this fashion. This has been done through a cooperative project between Aberdeen and Link oping universities, wit...
The management and query processing of one dimensional intervals is a special case of extended object handling. One dimensional intervals play an important role in temporal databases and they can also be used for fuzzy matching, fuzzy logic and measuring quality classes, etc. Most existing multidimensional access methods for extended objects do not...
Developments in our ability to integrate and analyse the data held
in existing heterogeneous data resources can lead to an increase in our
understanding of biological function at all levels. However, supporting
ad-hoc queries across multiple data resources and correlating the data
retrieved from these is still difficult. To address this, we are
bui...
Agent-based architectures are an effective method for constructing open, dynamic, distributed information systems. The KRAFT system exploits such an architecture, focusing on the exchange of information --- in the form of constraints and data --- among participating agents. The KRAFT approach is particularly wellsuited to solving design and configu...
The formation and operation of dynamic and open virtual organisations is a central concern in business-to-business e-commerce. Virtual organisations enable partner companies to develop and manufacture customised products with low costs and rapid delivery. Agent-based architectures are an effective platform for such virtual organisations because the...
We describe how to express constraints in a functional
(semantic) data model, which has a working implementation in an
object database. We trace the development of such constraints from
being integrity checks embedded in procedural code to being something
declarative ...
We describe how to express constraints in a functional (semantic) data model, which has a working implementation in an object database. We trace the development of such constraints from being integrity checks embedded in procedural code to being something declarative and self-contained, combining data access and computation, that can be moved aroun...
We have implemented a Java-based visual interface for P/FDM which
has at its centre a graphical representation of the database schema.
Users construct queries by clicking on entity classes and relationships
in the schema diagram and constraining the values of attributes selected
from menus. As this is done, the Daplex text of the query under
constr...
In this chapter, we consider the use of active rules to implement not user applications but the database facilities that will
later be used to support application development. In particular, we focus on three important classes of database functionality
to which rules have been applied: integrity maintenance; support for database views and data inte...
The KRAFT project aims to investigate how a distributed architecture can support the transformation and reuse of a particular class of knowledge, namely constraints, and to fuse this knowledge so as to gain added value, by using it for constraint solving or data retrieval. 1. Introduction Currently most people are accustomed to using the Internet a...
The KRAFT project aims to investigate how a distributed
architecture can support the transformation and reuse of a particular
class of knowledge, namely constraints, and to fuse this knowledge so as
to gain added value, by using it for constraint solving or data
retrieval
We discuss the use of code-generated methods in Prolog as a flexible and efficient way to implement complex semantic constraints in an OODB. We introduce a high-level constraint language CoLan, based on functions and sets and including range quantifiers, from which fragments of code are generated to check the constraints. These fragments are attach...
this paper is organised as follows: Section 2 describes the generic architecture of a KRAFT system, Sections 3 to 5 describe each of the components of the KRAFT architecture in more detail, and Section 6 concludes the paper.
The KRAFT project aims to investigate how a distributed architecture can support the transformation and reuse of a particular class of knowledge, namely constraints, and to fuse this knowledge so as to gain added value, by using it for constraint solving or data retrieval.
In recent years, research on distributing databases over networks has become increasingly important. In this paper, we concentrate on the issues of the interoperability of heterogeneous DBMSs and enforcing integrity across a multi-database made in this fashion. This has been done through a cooperative project between Aberdeen and Linköping universi...
Large volumes of complicated data require advanced visual query systems. These advanced systems challenge the conventional user interface metaphors and require new solutions. This paper outlines the development of one such system, called AMAZE. The development of this database interface has gone through a number of stages. Limitations of the associ...
The current status and future outlook of macromolecular structure databases and information handling, with particular reference to European databases, are reviewed. Issues concerning the efficiency with which data are represented, validated, archived and accessed are discussed in view of the fast growing body of information on structures of biologi...
We describe a modular compiler architecture that has been developed over the years for a functional data model DBMS. This has proved itself in practice, when major extensions have been developed quickly by reuse of modules (possibly reordered) saving much development time. We analyse the reasons for success and discuss the intermediate code (ICode)...
There is unavoidable heterogeneity in the databanks and databases
currently used for biological data collections. The authors are aiming
to develop a system that will provide uniform access to heterogeneous
databases via a single high-level query language or graphical interface
and will enable multi-database queries. They have taken an approach in...
In scientific and design applications, updates typically require the creation of a set of database objects, which together form a complex structure exhibiting some desired property or semantics. To support this kind of data manipulation, we have extended the Daplex data manipulation language with constructs to express constraints over the creation...
The P/FDM object database is based on a semantic data model in which stored data is integrated with derived data which is computed by Prolog rules retrieved from the class descriptors stored in the database. These rules may also be inherited. They are generated from declarative definitions expressed in the functional data language Daplex. Other Pro...
This paper describes the distributed architecture of ASSASSIN and explains the constraint satisfaction algorithms which we have developed. 1. INTRODUCTION
One approach to the problem of automatically restoring consistency after a database transaction is to make use of constraint programming techniques to try to find some sequence of updates that will resatisfy the violated integrity constraints. However, the generation of the constrained search problem that will solve such a problem is a non-trivial...
The sequential assignment of protein 2D NMR data has been tackled by many automated and semi-automated systems. One area that these systems have not tackled is the searching of the TOCSY spectrum looking for cross peaks and chemical shift values for hydrogen nuclei that are at the end of long side chains. This paper describes our system for solving...
This paper is about the definition of CoLan, a high-level declarative Constraint Description Language, for use with an Object-Oriented Database (OODB). CoLan has features of both first-order logic and functional programming and is based on Daplex. CoLan expressions are translated into Prolog code that implements the operational semantics of the con...
We have used the technique of antibody reshaping to produce a humanized antibody specific for the alpha toxin of Clostridium perfringens. The starting antibody was from a mouse hybridoma from which variable (V) region nucleotide sequences were determined. The complementarity-determining regions (CDRs) from these V regions were then inserted into hu...
This paper discusses the designs behind Amaze, a graphical user interface to an object oriented database system. Amaze uses three dimensional graphics to visualise both query construction and result representation. The designs behind Amaze are introduced, and the visualisations of a prototype implementation are shown. It is felt that just as word p...
This paper describes the use of a declarative constraint language to describe the semantics of a complex scientific domain, three-dimensional protein structure data, and assesses the requirements for integrity constraint mechanisms in this application area. The constraint language is based on the functional data manipulation language Daplex, and we...
We have used the technique of antibody reshaping to produce a humanized antibody specific for the a toxin of Clostridium perfringens. The starting antibody was from a mouse hybridoma from which variable (V) region nucleo-tide sequences were determined. The
complementarity-determining regions (CDRs) from these V regions were then inserted into human...
The explosion of wide-band networks and the arrival of the information highway mean that large amounts of information are on-line, but where knowledge is in the form of procedures it is likely to be hard to reuse it or to adapt it to use knowledge in a variety of formats. Since database technology is about sharing information we need to rise to thi...
The P/FDM object-oriented database is based on the functional data model and has a modular design, allowing alternative kinds of object storage to be used. This is achieved by implementing a small set of basic data access and update routines for each kind of storage module. In this work, a relational database management system has been used to prov...
We discuss the important database theme of Data Independence and how object oriented database applications are failing to perceive its benefits, and instead put too much reliance on encapsulation. The P/FDM object-oriented database is based on the functional data model and has a modular design based on data independence, which allows alternative ki...
A new revolution is occurring in graphical interface design with multimedia and virtual metaphors taking their place beside menus and dialogue boxes. Nowhere is such a paradigm shift more needed than in visual query systems for databases.
Previous studies in visual query languages for database management systems have attempted to use solely the des...
This paper outlines the use of Prolog for implementing object-oriented databases (OODBs), to indicate both the benefits and costs associated with Prolog as an implementation platform. The different roles which Prolog can play in the implementation of an OODB are illustrated by reference to example systems which, although they use Prolog as an imple...
We discuss the use of code-generated methods in Prolog as a flexible and efficient way to implement complex semantic constraints in an OODB. We introduce a high-level constraint language CoLan, based on functions and sets and including range quantifiers, from which fragments of code are generated to check the constraints. These fragments are attach...
This abstract describes the design of a query optimiser for the object-oriented database P/FDM using Prolog. The translation of a database query into an efficient executable program in many ways resembles a specialised program transformation problem [Fr87]. From a user’s point of view, it is obviously desirable that they can write queries against a...
The theme of this book is the potential of new advanced database systems. The volume presents the proceedings of the 10th British National Conference on Databases, held in Aberdeen, Scotland, in July 1992. The volume contains two invited papers, one on the promise of distributed computing andthe challenges of legacy systems by M.L. Brodie, and the...
Rules have been proposed for providing active be-haviour in DBMS. Previous attempts to add rules to Object Oriented DBs have often resulted in a di-chotomy between rules and other kind of objects. Bere a uniform approach is presented, in which rules are described and handled in the same way as any other object in the system, without any additional...
A procedure for finding clusters of adjacent residues in protein hydrophobic cores--hydrophobic microdomains--has been proposed by Plochocka et al. A program is presented that finds hydrophobic microdomains, making use of protein structure data stored in an object-oriented database and the list-processing features of Prolog. Alternative definitions...
Network
Cited