2 research outputs found

    Designing an Aspect-Oriented Persistence Layer Supporting Object-Oriented Query Using the .NET Framework 3.5

    Get PDF
    In this article, we discuss aspect persistence, how it can be implemented in the .NET framework, and how to use the .NET framework to provide object-oriented queries for aspect-oriented persistence layers. The manner in which aspect-orientation can be available in the .NET framework is investigated in the first part of this article. Then the procedure through which adding persistence concepts to the .NET framework as aspects will be explained. In the next step, providing object-oriented querying is discussed, which is the main part of this article. Having object-oriented querying ability helps processes query in the same object-oriented domain in which objects are defined (not in the relation entities' domain). Language Integrated Query (LINQ) is used to provide the ability of querying in an object-oriented manner. Then, the translation of queries from the real objects' domain to the storage-objects' domain is explained. After such translation, the queries can be run by using the existing LINQ providers (for example LINQ to SQL). Finally, translating the result of queries back into the real objects' domain is discussed

    Controlling Reuse in Pattern-Based Model-to-Model Transformations

    Get PDF
    Model-to-model transformation is a central activity in Model-Driven Engineering that consists of transforming models from a source to a target language. Pattern-based model-to-model transformation is our approach for specifying transformations in a declarative, relational and formal style. The approach relies on patterns describing allowed or forbidden relations between two models. These patterns are compiled into operational mechanisms to perform forward and backward transformations. Inspired by QVT-Relations, in this paper we incorporate into our framework the so-called check-before-enforce semantics, which checks the existence of suitable elements before creating them (i.e. it promotes reuse). Moreover, we enable the use of keys in order to describe when two elements are considered equal. The presented techniques are illustrated with a bidirectional transformation between Web Services Description Language and Enterprise Java Beans models.Work partially supported by the Spanish Ministry of Science and Innovation, with projects METEORIC (TIN2008-02081) and FORMALISM (TIN2007-66523), and the R&D program of the Community of Madrid (S2009/TIC-1650, project “e-Madrid”). Moreover, part of this work was done during a post-doctoral stay of the first author at the University of York, and sabbatical leaves of the second and third authors to the University of York and TU Berlin respectively, all with financial support from the Spanish Ministry of Science and Innovation (grant refs. JC2009-00015, PR2009-0019 and PR2008-0185).Publicad
    corecore