Búsqueda avanzada

El autor Jesus M. Almendros-Jimenez ha publicado 11 artículo(s):

1 - Property based Testing of XQuery Programs

In this paper we present the elements of an XQuery testing tool which makes possible to automatically test XQuery programs. The tool is able to systematically generate XML instances (i.e., test cases) from a given XML schema. The number and type of instances is defined by the human tester. These instances are used to execute the given XQuery program. In addition, the tool makes possible to provide an user defined property to be tested against the output of the XQuery program. The property can be specified with a Boolean XQuery function. The tool is implemented as an oracle able to report whether the XQuery program passes the test, that is, all the test cases satisfy the property, as well as the number of test cases used for testing. In the case when the XQuery program fails the testing, the tool shows counterexamples found in the test cases. The tool has been implemented as an XQuery library which makes possible to be used from any XQuery interpreter.

Autores: Jesus M. Almendros-Jiménez /  Antonio Becerra-Terón / 
Palabras Clave:

2 - Thresholded Debugging of XPath Queries

We have recently designed/implemented a method for debugging Fuzzy-XPath queries which produces a set of alternative Fuzzy-XPath expressions with higher chances for retrieving answers from XML files. The main goal of the present paper consists in the introduction of a new fuzzy command inside the Fuzzy-XPath debugger which comfortably relies on our implementation based on fuzzy logic programming. So, when <<[FILTER=r]>> precedes a fuzzy query the debugger lazily explores an input XML document for dynamically disregarding as soon as possible those branches of the XML tree leading to irrelevant solutions (i.e., with a chance degree degraded below r), thus allowing the possibility of efficiently managing large files without reducing the set of answers for which users are mainly interested in. Hence, advice that this dynamic thresholding technique embedded into the core of the Fuzzy-XPath debugger has two advantages: • firstly it permits to concentrate on significant answers (i.e., alternative queries which do not excessively deviate from the original one) without disturbing the attention with useless information, and • secondly, the computational behavior of the debugging process is highly improved (both in time and space) since a great amount of work is avoided when discriminating useless branches of the XML tree.

Autores: Jesus M. Almendros-Jiménez / Alejandro Luna / Ginés Moreno / 
Palabras Clave:

3 - Debugging Fuzzy XPath Queries

n this paper we report a preliminary work about XPath debugging. We will describe how we can manipulate an XPath expression in order to obtain a set of alternative XPath expressions that match to a given XML document. For each alternative XPath expression we will give a chance degree that represents the degree in which the expression deviates from the initial expression. Thus, our work is focused on providing the programmer a repertoire of paths that (s)he can use to retrieve answers. The approach has been implemented and tested.

Autores: Jesús M. Almendros-Jiménez / Alejandro Luna / Ginés Moreno / 
Palabras Clave: Debugging - Fuzzy (Multi-adjoint) Logic Programming - XPath

4 - PTL: A Prolog-based Model Transformation Language

In this paper we present a model transformation language based on logic programming. The language, called PTL (Prolog-based Transformation Language), can be considered as an hybrid language in which ATL-style rules are combined with logic rules for defining transformations. ATL-style rules are used to define mappings from source models to target models while logic rules are used as helpers. The proposal has been implemented so that a Prolog program is automatically obtained from a PTL program. We have equipped our language with debugging and tracing capabilities which help developers to detect programming errors in PTL rules.

Autores: Jesús M. Almendros-Jiménez / Luis Iribarne / 
Palabras Clave: Logic Programming - MDD - software engineering

5 - Testing of ATL programs from Randomly Generated Ecore Test Models

Model transformation testing is crucial to detect incorrect transformations. Buggy transformations can lead to incorrect target models, either violating target meta-model requirements or more complex target model properties. In this paper we present a tool for testing ATL transformations. This tool is an extension of a previously developed tool for testing XML-based languages. With this aim an Ecore to XML Schema transformation is defined which makes to automatically generate random Ecore models possible. These randomly generated Ecore models are used to test ATL transformations. Properties to be tested are specified by OCL constraints, describing input and output conditions on source and target models, respectively.

Autores: Jesús M. Almendros-Jiménez  /  Antonio Becerra-Terón / 
Palabras Clave:

6 - Type Checking and Testing of SPARQL Queries (Trabajo en progreso)

In this paper we describe a property-based testing tool for SPARQL. The tool randomly generates test cases in the form of instances of an ontology. The tool checks the well typed-ness of the SPARQL query as well as the consistency of the test cases with the ontology axioms. With this aim, a type system has been defined for SPARQL. Test cases are after used to execute queries. The output of the queries are tested with a Boolean property which is defined in terms of membership of ontology individuals to classes. The testing tool reports counterexamples when the Boolean property is not satisfied.

Autores: Jesús M. Almendros-Jiménez / Antonio Becerra-Terón / 
Palabras Clave: Semantic Web - SPARQL - Testing - Type Systems

7 - FSA-SPARQL: Fuzzy Queries in SPARQL (Trabajo en progreso)

SPARQL has been adopted as query language for the Semantic Web. RDF and OWL have been also established as vocabularies to describe ontologies in this setting. While RDF/OWL/SPARQL have been designed for querying crisp information, some contexts require to manage uncertainty, vagueness and imprecise knowledge. In this paper we propose a SPARQL extension, called FSA-SPARQL (Fuzzy Sets and Aggregators based SPARQL) in which queries can involve different fuzzy connectives and (aggregation) operators. The language has been implemented as an extension of the ARQ Jena SPARQL engine and it is equipped with a Web tool from which queries can be executed on-line.

Autores: Jesús M. Almendros-Jiménez / Antonio Becerra-Terón / Ginés Moreno / 
Palabras Clave: Fuzzy Logic - Semantic Web - SPARQL

8 - Tuning Fuzzy SPARQL Queries in a Fuzzy Logic Programming Environment

We have recently designed FSA-SPARQL, an extension of the SPARQL query language for querying fuzzy RDF datasets. Answers of FSA-SPARQL queries are usually annotated with truth degrees which are computed from fuzzy connectives and operators that act on truth degrees associated to RDF triples. While FSA-SPARQL offers a rich repertoire of fuzzy connectives and operators, it is not always easy to retrieve the user’s expected answers. This is very often due to wrong formulation of queries, caused by inadequate use/combination of fuzzy connectives, operators and thresholds. For instance, a high threshold for truth degrees in some RDF datasets can lead to an empty set of answers, some strong or weak restrictive combination of fuzzy conditions might produce few or too many answers, etc. On the other hand, our research group has also developed the fuzzy logic programming language FASILL, which has been equipped with tuning techniques for enabling the customization of queries from test cases. In this paper, our goals are: (1) to provide a FSA-SPARQL translation to FASILL and (2) apply the tuning techniques to FSA-SPARQL queries for getting more precise formulation of queries from test cases.Artículo pendiente de publicación en el 2019 IEEE International Conference on Fuzzy Systems (FUZZ-IEEE 2019):

Autores: Jesus M. Almendros-Jimenez / Antonio Becerra-Teron / Gines Moreno / Jose Antonio Riaza Valverde / 
Palabras Clave: Databases - Fuzzy - Logic Programming - SPARQL

9 - Ontology and Constraint Reasoning Based Analysis of SPARQL Queries

The discovery and diagnosis of wrong queries in database query languages have gained more attention in recent years. While for imperative languages well-known and mature debugging tools exist, the case of database query languages has traditionally attracted less attention. SPARQL is a database query language proposed for the retrieval of information in Semantic Web resources. RDF and OWL are standardized formats for representing Semantic Web information, and SPARQL acts on RDF/OWL resources allowing to retrieve answers of user’s queries. In spite of the SPARQL apparent simplicity, the number of mistakes a user can make in queries can be high and their detection, localization, and correction can be difficult to carry out. Wrong queries have as consequence most of the times empty answers, but also wrong and missing (expected but not found) answers. In this paper we present two ontology and constraint reasoning based methods for the discovery and diagnosis of wrong queries in SPARQL. The first method is used for detecting wrongly typed and inconsistent queries. The second method is used for detecting mismatching between user intention and queries, reporting incomplete, faulty queries as well as counterexamples. We formally define the above concepts and a batch of examples to illustrate the methods is shown.

Autores: Jesus M. Almendros-Jimenez / Antonio Becerra-Teron / 
Palabras Clave: Databases - Debugging - Program analysis - SPARQL

10 - Declarative Debugging of SPARQL Queries

The debugging of database queries is a research topic of increasing interest in recent years. The Semantic Web query language SPARQL should be equipped with a debugger for helping users to detect bugs which usually cause empty results as well as wrong and missing answers. Declarative debugging is a well-known debugging method successfully used in other database query languages. In this paper we present a declarative debuggerfor SPARQL. The debugging is based on the building of a debugging tree, and the detection of buggy and failure nodes in the debugging tree causing empty results as well as wrong and missing answers. The debugger has been implemented and it is available as Web tool.

Autores: Jesus M. Almendros-Jimenez / Antonio Becerra-Teron / 
Palabras Clave: Debugging - Semantic Web - SPARQL - Tools

11 - Flexible Aggregation in FSA-SPARQL

Aggregation is a very useful operation in database query languages. Through count, sum, min, max and avg operators database instances can be counted and summarized. Attached to such operators, group by and having clauses make it possible to define partitions on database instances as well as filter partitions according to Boolean conditions. In this paper, we define aggregation operators for the language FSA-SPARQL, which is a fuzzy extension of the Semantic Web query language SPARQL. We present the semantics of such operators with regard to fuzzy RDF triple patterns. We also provide mechanisms in FSA-SPARQL for the partition of fuzzy RDF triple patterns with regard to fuzzy sets, as well as for the filtering of partitions. The proposed extension has been implemented and it can be tested from the FSA-SPARQL Web site.Paper accepted in IEEE International Conf. on Fuzzy Systems 2021

Autores: Jesus M. Almendros-Jimenez / Antonio Becerra-Teron / Gines Moreno / José Antonio Riaza Valverde / 
Palabras Clave: Fuzzy Logic - Semantic Web - SPARQL