3 research outputs found

    A type-theoretical approach for ontologies: The case of roles

    Get PDF
    International audienceIn the domain of ontology design as well as in Knowledge Representation, modeling universals is a challenging problem. Most approaches that have addressed this problem rely on Description Logics (DLs) but many difficulties remain, due to under-constrained representation which reduces the inferences that can be drawn and further causes problems in expressiveness. In mathematical logic and program checking, type theories have proved to be appealing but, so far they have not been applied in the formalization of ontologies. To bridge this gap, we present in this paper a theory for representing ontologies in a dependently-typed framework which relies on strong formal foundations including both a constructive logic and a functional type system. The language of this theory defines in a precise way what ontological primitives such as classes, relations, properties, etc., and thereof roles, are. The first part of the paper details how these primitives are defined and used within the theory. In a second part, we focus on the formalization of the role primitive. A review of significant role properties leads to the specification of a role profile and most of the remaining work details through numerous examples, how the proposed theory is able to fully satisfy this profile. It is demonstrated that dependent types can model several non-trivial aspects of roles including a formal solution for generalization hierarchies, identity criteria for roles and other contributions. A discussion is given on how the theory is able to cope with many of the constraints inherent in a good role representation

    Proceedings of the 4th International Conference on Principles and Practices of Programming in Java

    Full text link
    This book contains the proceedings of the 4th international conference on principles and practices of programming in Java. The conference focuses on the different aspects of the Java programming language and its applications

    Social roles, from agents back to objects

    No full text
    Abstract — In this paper we introduce a new view on roles in Object Oriented programming languages. This view is based on an ontological analysis of roles and attributes to roles the following properties: first, a role is always associated not only with an object instance playing the role, but also to another object instance which constitutes the context of the role and which we call institution. Second, the definition of a role depends on the definition of the institution which constitutes its context. Third, this second property allows to endow players of roles with powers to modify the state of the institution and of the other roles of the same institution. As an example of this model of roles in Object Oriented programming languages, we introduce a role construct in Java. We interpret these three features of roles in Java as the fact that, first, roles are implemented as classes which can be instantiated only in presence of an instance of the player of the role and of an instance of the class representing the institution. Second, the definition of a class implementing a role is included in the class definition of the institution the role belongs to. Thirdly, powers are methods of roles which can access private fields and methods of the institution they belong to and of the other roles of the same institution. I
    corecore