The complete Deliverable list can be found on the REWERSE Deliverable page.
I3-D8: Feedback report on requirements from other working groups
Abstract: For the composition ideas and technologies of the REWERSE working group I3 to be successful, it is vital to understand how the collaborating groups within the network view its work. It is important to understand, and take into consideration, the requirements of the collaborating working groups wrt. their languages and applications, which I3 is to support with composition technology. To this end, through a survey, we have collected such requirements and in this report present the collected result.
I3-D7: Prototypical composition ontology for rule-based languages
Abstract: This report presents an ontology for the composition of rule-based ontology languages. Since typing compositions is an important issue, the ontology consists of components: two upper-level ontologies, the metamodel of the ontology language, and a metamodel of reuse constructs that play an important role in composition. With the interplay of these components, type-safe composition of ontology components can be achieved.
I3-D6: Prototype typing tools for REWERSE languages
Abstract: This deliverable presents some prototype typing tools and meta-tools. We present a pattern matching compiler TOM, which is a suitable device to implement typing tools. Its usage is demonstrated by implementing typing rules for a subset of Xquery. We describe an implementation of a type system for Web query language Xcerpt. We also present an implementation of a type system for the rule and constraint language CHR.
I3-D5: Prototype component models and composition technology toolset for integration of logic-programming-like REWERSE languages
Abstract: Any software composition system requires, among other things, a component model, which describes how components look and how they can be interfaced with each other. Previously, the component models for languages have been hand-written. We demonstrate a prototype tool for automatic derivation of a component model for any language given the description of the language as a meta-model in the Web Ontology Language OWL. The Semantic Web endeavor has given rise to new declarative languages which will require composition and reuse in the same way as in the traditional software engineering community. Thus we focus on deriving component models for declarative languages that are of importance for the Semantic Web such as OWL and the XML query language Xcerpt. We demonstrate how component models are generated for these languages using our prototype.
I3-D4: Types for REWERSE reasoning and query languages
Abstract: This report presents proposals for type systems for a subset of REWERSE languages. We study two approaches to such a type system, which are based on descriptive and prescriptive typing. As an example rule language we use the XML query language Xcerpt.
I3-D3: Combining Rules and Ontologies. A survey.
Abstract: We survey existing approaches to the problem of combining rule languages with ontology languages for the Semantic Web. The focus is on the languages based on logic and on the reasoning in such languages. The objective is to give a uniform view of the approaches, and to outline related research topics important for REWERSE.
I3-D2: Types for Web Rule Languages: a preliminary study
Abstract: We survey and analyse the relevant existing work on typing of rules, in particular on typing of constraint logic programs and discuss applicability of these approaches to the REWERSE reasoning and query languages under development by WG I1 and by WG I4. This is related to WG I1, developing logic programming like languages for reasoning on the web and with WG I4 investigating development of declarative query languages such as XPathLog and Xcerpt.
I3-D1: Report on the design of component model and composition technology for the Datalog and Prolog variants of the REWERSE languages
Abstract: This design report outlines the elements of a component model for the REWERSE languages. Instead of defining a special component model for each and every language explicitly, we propose a novel concept to derive a component model from a definition of a language, i.e., from its metamodel. The component models will be used together with invasive software composition, and can thus be employed for generic programming, connector-based programming, view-based programming, and aspect-oriented programming. So far, invasive software composition has been developed for Java and has used Java-based component models. In this paper, we discuss the application of this technology for arbitrary languages and ask the question whether it is possible to derive an invasive component model from a given language. To this end, we present two proposals. The first will show that, in principle, every language construct can be generic (generic construct principle), that is, it is possible to define an isomorphic mapping from each language construct to the generic elements of its component model. By generalizing this principle to other languages, we can derive a component model by an isomorphic mapping of the language's metamodel. In our second proposal we will show that it is possible to define semantics for extensibility of components by introducing the notion of list-like language constructs. Thus, it is possible to derive from any given language a component model, which is generic and extensible, and which can thus be used for both generic programming and view-based programming. Once applied to the area of the languages used on the Web, this methodology gives a uniform approach to the composition of ontology languages and Web resources.