Ranking Archived Documents for Structured Queries on Semantic Layers

Ranking Archived Documents for Structured Queries on Semantic Layers

Pavlos Fafalios 0000-0003-2788-526XL3S Research Center,
Leibniz University of Hannover
Hannover, Germany fafalios@L3S.de
Vaibhav Kasturia L3S Research Center,
Leibniz University of Hannover
Hannover, Germany kasturia@L3S.de
 and  Wolfgang Nejdl L3S Research Center,
Leibniz University of Hannover
Hannover, Germany nejdl@L3S.de
Abstract.

Archived collections of documents (like newspaper and web archives) serve as important information sources in a variety of disciplines, including Digital Humanities, Historical Science, and Journalism. However, the absence of efficient and meaningful exploration methods still remains a major hurdle in the way of turning them into usable sources of information. A semantic layer is an RDF graph that describes metadata and semantic information about a collection of archived documents, which in turn can be queried through a semantic query language (SPARQL). This allows running advanced queries by combining metadata of the documents (like publication date) and content-based semantic information (like entities mentioned in the documents). However, the results returned by such structured queries can be numerous and moreover they all equally match the query. In this paper, we deal with this problem and formalize the task of “ranking archived documents for structured queries on semantic layers”. Then, we propose two ranking models for the problem at hand which jointly consider: i) the relativeness of documents to entities, ii) the timeliness of documents, and iii) the temporal relations among the entities. The experimental results on a new evaluation dataset show the effectiveness of the proposed models and allow us to understand their limitations.

Semantic Layers; Archived documents; Ranking; Probabilistic modeling; Stochastic modeling
ccs: Information systems Probabilistic retrieval models

1. Introduction

Despite the increasing number of digital archives worldwide (like news and web archives), the absence of efficient and meaningful exploration methods still remains the major bottleneck in the way of turning them into usable information sources (Calhoun, 2014). Semantic models try to solve this problem by offering the means to describe and publish metadata and semantic information about a collection of archived documents in the standard RDF format. A repository of such data, called Semantic Layer (Fafalios et al., 2017), allows running advanced queries which combine metadata of the documents (like publication date) and content-based semantic information (like entities mentioned in the documents). For example, we can access a Semantic Layer over a newspaper archive and find articles of a specific time period discussing about a specific category of entities (e.g., philanthropists) or about entities that share some characteristics (e.g., lawyers born in Germany), while we can also integrate information coming from other knowledge bases like DBpedia. Such advanced information needs can be directly expressed through structured (SPARQL) queries or through user-friendly interactive interfaces which transparently transform user interactions to SPARQL queries (e.g., Faceted Search-like browsing interfaces (Tzitzikas et al., 2016)).

However, the results returned by such queries can be numerous and moreover they all equally match the query: there is no relevance ranking like in the case of keyword-based information retrieval. Thus, there arises the need for an effective method to rank the returned results for discovering and showing to the users the most important ones. For instance, when requesting articles from a news archive published within a specific time period and mentioning one or more query entities, important documents may be those whose main topic is about an important event related to the query entities during the requested time period. Thus, an effective ranking method should consider the different factors that affect the importance of documents to the query, while at the same time relying only on the data available in the semantic layer (there is no access to the full contents of the documents).

Although there is a plethora of works on ranking archived documents for keyword-based temporal queries, the problem of ranking such documents for the case of structured queries on knowledge graphs has not yet been recognized and studied. In this paper, we address this gap by first introducing and formalizing this type of problem. Then, to cope with this problem, we propose two ranking models, a probabilistic one and a Random Walk-based one, which jointly consider the following aspects: i) the relativeness of a document to the query entities, ii) the timeliness of a document’s publication date, iii) the temporal relatedness of the query entities to other entities mentioned in the documents. The idea is to promote documents that mention the query entities many times, that have been published in important (for the query entities) time periods, and that mention many other entities co-occurring frequently with the query entities in important time periods. Such an approach is widely applicable since it exploits the least amount of metadata.

In a nutshell, in this paper we make the following contributions:

  • We formulate and formalize the problem of ranking archived documents for structured queries over semantic layers.

  • Due to lack of evaluation datasets for this problem, we have created a new ground truth dataset for a news archive which we make publicly available.

  • We propose two ranking models for the problem at hand: a probabilistic one and a stochastic one (Random Walk with restart).

  • We present the results of an experimental evaluation which illustrate the effectiveness of the proposed models. We also analyze problematic cases for understanding when and why the models fail to provide good rankings.

The rest of the paper is organized as follows: Section 2 presents the required background and related literature. Section 3 defines the problem and describes a new evaluation dataset. Section 4 introduces the probabilistic model. Section 5 introduces the stochastic model. Section 6 presents evaluation results. Section 7 concludes the paper and discusses interesting directions for future research.

2. Background and Related Works

2.1. Semantic Layers

A Semantic Layer is an RDF repository (RDF graph) of structured data about a collection of archived documents (Fafalios et al., 2017). Structured data includes not only metadata information about a document (like publication date), but also entity annotations, i.e., disambiguated entities mentioned in each document extracted using an entity linking system (Shen et al., 2015). Figure 1 shows an example of (a part of) a Semantic Layer describing metadata and annotation information for a news article. We notice that the document was published on 6 January 2012 and mentions the entity name “Giuliani” at character position 512, which probably (with confidence score 0.9/1.0) corresponds to the known American lawyer and former politician Rudy Giuliani.

Figure 1. A part of a Semantic Layer describing metadata and entity annotations for a news article.

A semantic layer allows running advanced, entity-centric queries that can also directly integrate information from other knowledge bases like DBpedia. Listing 1 shows an example of a SPARQL query that can be answered by a semantic layer over a collection of old news articles. The query requests articles of 1989 mentioning New York lawyers born in Brooklyn. By accessing DBpedia at query-execution time, the query retrieves the entities that satisfy the query as well as additional information, in particular the birth date of each lawyer. We see that, using the entity URIs and type/category information, we can find documents about entities even if we do not know the names of the entities, or without needing to specify a long list of all the entity names. Moreover, using the SPARQL operators COUNT and GROUP BY, and exploiting the expressive power of SPARQL, we can aggregate information related to documents and entities.

 1 SELECT ?article ?title ?date ?nylawyer ?bdate WHERE    SERVICE ¡http://dbpedia.org/sparql¿      ?nylawyer dc:subject dbc:New_York_lawyers ; dbo:birthPlace dbr:Brooklyn .     OPTIONAL  ?nylawyer dbo:birthDate ?bdate     ?article dc:date ?date FILTER(year(?date) = 1989) .   ?article schema:mentions ?entity .   ?entity oae:hasMatchedURI ?nylawyer .   ?article dc:title ?title  ORDER BY ?nylawyer \@endparenv

Listing 1. Example SPARQL query over a Semantic Layer of a collection of old news articles. The query requests articles of 1989 discussing about New York lawyers born in Brooklyn.

As shown in (Fafalios et al., 2017), a semantic layer can answer information needs that existing keyword-based systems (like Google news) are not able to sufficiently satisfy. Such advanced (but also common) information needs can be directly expressed through SPARQL queries or by exploiting a user-friendly interface that transforms user interactions to SPARQL queries, like Sparklis (Ferré, 2014) or SemFacet (Arenas et al., 2014). Since the results returned by such structured queries can be numerous and have no ranking, in this paper we study how we can rank them based on their importance to the query entities.

2.2. Related Works

We report works on the related problems of time-aware document ranking and ranking in knowledge graphs, and we discuss the commonalities and differences of these research areas to our problem.

2.2.1. Time-aware Document Ranking

The impact of time on information retrieval has received a large share of attention in the last decade. The surveys in (Campos et al., 2015) and (Kanhabua et al., 2015) provide a comprehensive categorization and overview of temporal IR approaches and related applications. As regards time-aware ranking, existing works are classified into two different types based on two main notions of relevance with respect to time (Campos et al., 2015; Kanhabua et al., 2015): 1) recency-based ranking, and 2) time-dependent ranking. Since recency-based ranking methods promote documents that are recently created or updated (this preference of freshness is common in general web searching), below we discuss only time-dependent ranking methods which are useful when searching archived collections of documents.

Jin et al. (Jin et al., 2008) proposed a ranking algorithm to sort results by applying a linear interpolation of text similarity, temporal information, and page importance (based on PageRank), where temporal similarity is the ranking score of temporal relevance based on the set of intersection conditions between the temporal query and the temporal expressions found in the web page. Arikan et al. (Arikan et al., 2009) and Berberich et al. (Berberich et al., 2010) introduced approaches that integrate temporal expressions extracted from the documents into language modeling frameworks. Metzler et al. (Metzler et al., 2009) proposed a time-dependent ranking model to adjust the document scores based on an analysis of web query logs and a set of document fields to estimate the time of both the query and the document. The work by Perkio et al. (Cataldi et al., 2010) automatically detects topical trends and their importance over time within a news corpus using a statistical topic model and a simple variant of TF-IDF. These trends are then used as the basis for temporally adaptive rankings. Dakka et al. (Dakka et al., 2012) consider the publication time of documents to identify the important time intervals that are likely to be of interest to an implicit temporal query. Then, time is incorporated into language models to assign an estimated relevance value to each time period. Aji et al. (Aji et al., 2010) proposed a term weighting model that uses the revision history analysis of a document to redefine the importance of terms which is then incorporated into BM25 and statistical language models. Kanhabua and Nørvag (Kanhabua and Nørvåg, 2012) proposed a time-sensitive ranking model based on learning-to-rank techniques for explicit temporal queries. To learn the ranking model, temporal and entity-based features are applied.

Regarding more recent works, Singh et al. (Singh et al., 2016b) introduced the notion of Historical Query Intents and modeled it as a search result diversification task which intends to present the most relevant results from a topic-temporal space. For retrieving and ranking historical documents like news articles, the authors propose a retrieval algorithm, called HistDiv, which jointly considers the dimensions of aspect and time. Expedition (Singh et al., 2016a) is a time-aware search system for scholars which allows users to search articles in a news collection by entering free-text queries and choosing from four retrieval models: Temporal Relevance, Temporal Diversity, Topical Diversity, and Historical Diversity. Tempas (Holzmann and Anand, 2016) is a search system for web archives that exploits a social bookmarking service (Delicious) for temporally searching an archive by indexing tags and time. The new version of Tempas (Holzmann et al., 2017) exploits temporal link graphs and the corresponding anchor texts. The authors show how temporal anchor texts can be effective in answering queries beyond purely navigational intents, like finding the most central web pages of an entity in a given time period.

Difference of our case. Similar to the above works, our objective is to rank documents for a user information need. However, our case has the following three distinctive characteristics:

  • The full contents of the documents are not available and there are no term-based indexes on top of them. We have access only on the RDF triples existing in the semantic layer, i.e., on metadata about the documents and on the entities mentioned in the documents. Moreover, these entities have been extracted using automated entity linking systems and thus are prone to disambiguation errors.

  • The information needs are expressed through structured SPARQL queries, not keywords. These SPARQL queries request documents of a specific time period mentioning one or more specific entities, while these query entities are specified through URIs which means that there is no ambiguity about them.

  • We already know the documents that match the query, however there are no relevance scores, i.e., all documents equally match the query. Our objective is to identify (and rank higher) the documents that discuss important information about the entities given in the query.

2.2.2. Ranking in Knowledge Graphs

There is a plethora of works on ranking entities, concepts and resources in knowledge graphs (Ngonga Ngomo et al., 2017; Campinas et al., 2012; Hogan et al., 2011), as well as on ranking the results returned by SPARQL queries (Feyznia et al., 2014; Latifi and Nematbakhsh, 2014; Mulay and Kumar, 2011). The majority of these works exploits the structure of the graph and applies some variation of a popular link analysis algorithm. The survey in (Roa-Valverde and Sicilia, 2014) formalizes and contextualizes the problem of ranking in the Web of Data and provides an analysis and contrast of the similarities, differences and applicability of the different approaches.

An interesting related line of research tackles the problem of ad-hoc object retrieval (Pound et al., 2010; Tonon et al., 2012). In this problem, the input is a keyword query and the output is one or more resources (entity URIs) that satisfy the corresponding information need. To tackle this kind of problem, Pound et al. (Pound et al., 2010) propose an adaptation of TF-IDF, while Tonon et al. (Tonon et al., 2012) combine an inverted index with entity graph traversal. In the same context, the SemSearch challenge (Halpin et al., 2010) focused on finding the entity identifier of a specific entity described by a user query, while the TREC entity track (Balog et al., 2010) studied two related search tasks: i) finding all entities related to a given entity, and ii) finding entities with common properties given some examples.

Difference of our case. In all these works, the result is a ranked list of well-structured RDF resources (like entities, properties, or triples). On the contrary, in our problem the units of retrieval represent unstructured (textual) documents returned by structured (SPARQL) queries. These works operate over knowledge graphs like DBpedia, where entities are described through properties and associations with other entities. A semantic layer is a special kind of a knowledge graph that represents metadata and annotation information about a collection of textual documents like news articles. Given a non-ambiguous SPARQL query and its result (the documents that match the query), our aim is to identify those documents that discuss important information about the query entities in the requested time-period by exploiting only the contents of the semantic layer.

3. Problem Definition and Evaluation Dataset

In this section, we formalize the problem of ranking documents returned by structured queries and describe a new ground truth dataset for the problem at hand. First we introduce the required notions and notations.

3.1. Notions and Notations

Entities.

In our problem, an entity is anything with a separate and meaningful existence that also has an identity expressed through a reference in a knowledge base (e.g., a Wikipedia/DBpedia URI). This does not only include persons, locations, organizations, etc., but also events (e.g., US 2016 presidential election) and more abstract concepts such as democracy or abortion. Let be a finite set of entities, e.g., all Wikipedia entities, where each entity is associated with a unique URI in the reference knowledge base.

Documents and extracted entities. Let be a set of documents (e.g., a set of news articles) published within a set of time periods of fixed granularity (e.g., day). For a document , let be the time period of granularity in which was published, while for a time period , let be the set of all documents published within , i.e., . Let also be all entities mentioned in extracted using an entity linking system (Shen et al., 2015). Inversely, for an entity , let be all documents that mention , i.e., .

3.2. Problem Definition

Given a corpus of documents , a set of entities mentioned in documents of , and a SPARQL query requesting documents from published within a time period and related to one or more query entities with logical AND (mentioning all the query entities) or OR (mentioning at least one of the query entities) semantics, the problem is how to rank the documents that match .

Listing 3 shows an example SPARQL query requesting documents published in 1990 discussing about the entities Nelson Mandela and Frederik Willem de Klerk (logical AND semantics), while the query in Listing 3 requests articles of 1990 discussing about state presidents of South Africa (logical OR semantics). Our objective is to rank the results returned by such SPARQL queries.

 1 SELECT DISTINCT ?article WHERE    ?article dc:date ?date FILTER(year(?date) = 1990) .   ?article oae:mentions ?entity1, ?entity2 .   ?entity1 oae:hasMatchedURI  dbr:Nelson_Mandela .   ?entity2 oae:hasMatchedURI  dbr:F._W._de_Klerk  \@endparenv

Listing 2. SPARQL query for retrieving articles of 1990 discussing about Nelson Mandela and Frederik Willem de Klerk (logical AND semantics).

 1 SELECT DISTINCT ?article WHERE    SERVICE ¡http://dbpedia.org/sparql¿      ?p dc:subject dbc:State_Presidents_of_South_Africa¿    ?article dc:date ?date FILTER(year(?date) = 1990) .   ?article oae:mentions ?entity .   ?entity oae:hasMatchedURI  ?p  \@endparenv

Listing 3. SPARQL query for retrieving articles of 1990 discussing about state presidents of South Africa (logical OR semantics).

3.3. Evaluation dataset

Due to the lack of benchmark datasets for our problem, and to enable empirical evaluations, we have created a new ground truth dataset. We used the New York Times (NYT) annotated corpus (Sandhaus, 2008) as the underlying document collection. The corpus contains over 1.8 million articles published by NYT between 1987 and 2007. We used Babelfy (Moro et al., 2014) for extracting DBpedia entities from each article, using a configuration proposed by the Babelfy developers111The configuration is available at: https://github.com/dice-group/gerbil/blob/master/src/main/java/org/aksw/gerbil/annotator/impl/babelfy/BabelfyAnnotator.java. We tested this configuration in the AIDA/CONLL-Test B ground truth dataset (Hoffart et al., 2011) and got the following evaluation scores: micro precision: 0.818, micro recall: 0.684, micro F1: 0.745 (the accuracy is almost the same with the one reported in the Babelfy paper for the same dataset (Moro et al., 2014)). Based on these annotations, we constructed a semantic layer following the process described in (Fafalios et al., 2017). Then, we created 24 SPARQL queries, each one requesting articles published in a specific time period and mentioning one or more entities. The queries are grouped into 4 categories:

  • Single-entity queries (Q1-Q6): 6 queries requesting articles related to 1 entity (e.g., articles of 1990 discussing about Nelson Mandela).

  • Multiple-entity AND queries (Q7-Q12): 6 queries requesting articles related to 2 or more entities with logical AND semantics (e.g., articles of 1990 discussing about Nelson Mandela and F.W. de Klerk).

  • Multiple-entity OR queries (Q13-Q18): 6 queries requesting articles related to 2 or more entities with logical OR semantics (e.g., articles of 1990 discussing about Nelson Mandela or F.W. de Klerk).

  • Category queries (Q19-Q24): 6 queries requesting articles related to entities belonging to a DBpedia category (e.g., articles of 1990 discussing about presidents of South Africa222Entities that have the value <http://dbpedia.org/resource/Category:Presidents_of_South_Africa> in their subject property (<http://purl.org/dc/terms/subject>).). This category is a special case of multiple-entity OR queries where the number of entities can be very large (hundreds or even thousands).

We manually evaluated all the results returned by these queries (773 results totally) using a graded relevance scale (from 0 to 3), following the criteria described below:

  • Score 0: The document has almost nothing to do with the query entities.

  • Score 1: The topic of the document is not about the query entities, however the query entities are related to the document context.

  • Score 2: The topic of the document is not about the query entities, however the query entities are important for the document context.

  • Score 3: The topic of the document is about the query entities and discusses something important about them.

Table 1 shows the number of results per relevance score for each of the queries. The semantic layer, the SPARQL queries, and the relevance scores (together with explanations for the provided scores) are publicly available333http://l3s.de/~fafalios/jcdl/evaluation_dataset.zip.

Query
Total number
of results
Score 0
results
Score 1
results
Score 2
results
Score 3
results
1 65 13 13 4 35
2 28 20 5 1 2
3 28 24 2 0 2
4 23 15 3 1 4
5 38 18 6 7 7
6 24 16 4 1 3
7 29 13 6 8 2
8 61 10 27 15 9
9 42 14 10 10 8
10 28 17 4 6 1
11 27 13 10 4 0
12 24 13 2 8 1
13 30 21 1 4 4
14 37 15 8 8 6
15 27 18 5 2 2
16 23 5 14 2 2
17 21 13 2 2 4
18 25 6 4 9 6
19 41 24 4 8 5
20 22 11 8 3 0
21 29 16 5 5 3
22 47 33 7 3 4
23 31 18 3 8 2
24 23 14 3 3 3
Table 1. Number of results per relevance score for each query of the evaluation dataset.

4. Probabilistic Modeling

The question is: ”what makes an archived document important given a time period and one or more query entities”? We focus on an approach that makes use of the least amount of metadata information about the archived documents. This includes the publication date and the extracted entities of each document. Given this data, we have identified the following aspects that can affect the importance of a document to a query:

  • the relativeness of a document with respect to the query entities (the document should talk about the query entities, ideally as its main topic).

  • the timeliness of a document with respect to its publication date (the document should have been published in a time period which is important for the query entities).

  • the relatedness of a document with respect to its reference to other entities (the document should discuss the relation of the query entities with other entities that are important for the query entities in important time periods).

The idea is to promote documents that: i) mention the query entities many times in their contents (because then, the topic of the document may be about these entities), ii) have been published in important (for the query entities) time periods, and iii) mention many other entities that co-occur frequently with the query entities in important time periods. For example, in case we want to rank articles of 1990 discussing about Nelson Mandela, we want to favor articles that i) discuss about Nelson Mandela as their main topic, ii) have been published in important (for Nelson Mandela) time periods (e.g., February of 1990 since during that period he was released from prison), and iii) mention other entities that seem to be important for Nelson Mandela during important time periods (e.g., Frederik Willem de Klerk who was South Africa’s State President in 1990).

4.1. Relativeness

We consider that if the query entities are mentioned multiple times within a document, the document should receive a high score since the document’s topic may be about these entities. The term frequency (in our case entity frequency) is a classic numerical statistic that is intended to reflect how important a word (entity) is to a document (Leskovec et al., 2014).

We first define a relativeness score of a document based on the frequency of the query entities in . First, let be the number of occurrences of in document . For the case of AND semantics (“”), the score is defined as:

(1)

Notice that the score of a document will be if it contains the query entities and no other entity. For the case of OR semantics (“”), we can also consider the number of query entities mentioned in the document (since a document does not probably contain all the query entities as in the case of AND semantics). In this case, the relativeness score can be defined as follows:

(2)

where is the percentage of query entities discussed in the document. The score of a document will be 1.0 if it contains all the query entities and no other entity. This formula favors documents mentioning many of the query entities multiple times.

Now, the probability of a retrieved document given only the query entities can be defined as:

(3)

4.2. Timeliness

Previous works on searching document archives have shown that, considering the fraction of documents published in a time period and mentioning the query entities can improve the effectiveness of document retrieval (compared to an approach that assumes equal distribution) (Singh et al., 2016b). In a similar way, and for the case of AND semantics, we define the following importance score of a time period :

(4)

This scoring formula favors time periods in which there is a large number of documents discussing about the query entities.

For the case of OR semantics, in a time period there may be a large number of documents discussing only for one of the query entities, while in another time period there may be a smaller number of documents discussing though for many of the query entities. For also taking into account the number of query entities discussed in documents of a specific time period, we consider the following formula:

(5)

where, is the average percentage of query entities discussed in articles of , i.e.:

(6)

Now, the probability of a retrieved document given only its publication date can be defined as:

(7)

4.3. Relatedness

Recent works have shown that the co-occurrence of entities in documents of a specific time period is a strong indicator of their relatedness during that period (Zhang et al., 2016; Tran et al., 2017). We also consider that entities that are co-mentioned frequently with the query entities in important time periods are probably important for them. However, there may be also some general entities that co-occur with the query entities in almost all documents (independently of the time period). Thus, we should also avoid over-emphasizing documents mentioning such “common” entities.

For the case of AND semantics, we consider the following relatedness score for an entity :

(8)

where is the inverse document frequency of entity in the set of documents discussing about the query entities in the entire corpus, which can be defined as follows:

(9)

The formula considers the percentage of documents in which the entity co-occurs with the query entities in important time periods.

For the case of OR semantics, the above formula does not consider the number of different query entities discussed in documents together with the entity . To also handle this aspect, we consider the following relatedness score for the case of OR semantics:

(10)

where is the average percentage of query entities discussed in articles together with entity , i.e.:

(11)

Now the inverse document frequency includes documents mentioning at least one of the query entities, i.e.:

(12)

This formula favors related entities that i) co-occur frequently with many of the query entities, ii) are discussed in documents published in important (for the query entities) time periods.

Now, the probability of a document given only other entities mentioned in the retrieved documents () can be defined as:

(13)

4.4. Joining the Models

We can now combine the different models in a single probability score:

(14)

where the denominator can be ignored as it does not influence the ranking.

5. Stochastic Modeling

Here we model the problem as a random walker on the graph (Markov chain) defined by the query-entities , the returned documents , and the entities mentioned in the documents . Then, we propose a biased (personalized-like) PageRank algorithm for analyzing the graph and scoring its nodes. Similar modeling and scoring methods have been applied for the problems of results re-ranking (Fafalios and Tzitzikas, 2017) and enrichment (Fafalios and Tzitzikas, 2014) in information retrieval.

5.1. The Transition Graph

The walker starts from a query-entity and can move either to a document mentioning the entity or to a related entity that co-occurs with the query-entity in at least one document. From a document, the walker can move to an entity mentioned in it, while from a no query-entity, the walker can only move to a document mentioning that entity.

In the case of logical AND semantics, the query-entities are connected with all documents, while in the case of OR semantics, each query-entity is connected with at least one document. Figure 2 shows an example of a transition graph for the case of OR semantics. In this example, the query-entities are two (the black nodes), while we notice that three of the documents mention both query-entities (, and ).

Figure 2. An example of the considered transition graph for the case of logical OR semantics (with the query-entities being the black nodes).

5.2. The Transition Probabilities

From query-entities to documents or related entities

When the walker lies at a query-entity , he can either move to a document mentioning the entity or to a related entity . When moving to a document, we consider its relativeness and timeliness scores as introduced in the previous section. Specifically, the weight of the edge from a query-entity to a document is defined as:

(15)

For moving from a query-entity to a related entity , we consider the relatedness score of :

(16)

where is the set of nodes connected to through outgoing edges starting from .

However, the weights of the outgoing edges of a single node represent transition probabilities and must sum to 1. Thus, the weight of the edge from a query-entity to a connected node (that can be either a document or a related entity) is defined as:

(17)

where is the probability that the walker selects to move to a document node.

From documents to entities

For moving from a document to an entity mentioned in , it is more likely that the walker moves to an entity that is mentioned many times within its contents. Thus, we simply consider the normalized frequency of in . Specifically:

(18)

From no query-entities to documents

Likewise, when moving from a no query-entity to a document , it is more likely that the walker moves to a document that mentions many times. Thus, we again consider the normalized frequency of in . Specifically:

(19)

5.3. The Stochastic Analysis (Random Walk with Restart)

For analyzing the transition graph, we follow a PageRank-like algorithm. The walker starts from the query-entities and can either follow an edge or perform a “restart”, i.e., jump to a query-entity and start again the traversal . Formally, the score of a graph node is defined as:

(20)

where is the probability that the walker performs a restart, is the probability the walker to restart by jumping to node , is the set of nodes connected to through incoming edges, and (as defined in Formulas 15-19) is the probability that the walker visits when being at node connected to (there should be an edge from to ).

As regards the restart, we allow equiprobable jumps only to query entities, i.e.:

(21)

Regarding the initial scores of the graph nodes, we assign the same score to the query entities (), while the score of all other entities is zero. Finally, the algorithm must iteratively run to convergence.

6. Evaluation

We evaluated the performance of the proposed models using the ground truth dataset described in Section 3.3 and two evaluation measures: Normalized Discounted Cumulative Gain (NDCG) at positions 5, 10, full list, and Precision (P) at 5 and 10 (precision for full list is the same in all cases). Precision is the fraction of relevant results among the top retrieved results, while NDCG uses a graded relevance scale and measures the usefulness, or gain, of a document based on its position in the result list (Järvelin and Kekäläinen, 2002). For precision, we consider a document as relevant if its relevance score is either 2 or 3 and irrelevant if it is either 0 or 1. As regards timeliness, we considered day granularity. We also tested the case of random rankings of the results. In this case, we computed 10 different random lists for each query and considered the average NDCG and precision scores.

6.1. Effectiveness of Probabilistic Models

We investigated the performance of each model described in Section 4 as well as their combinations.

6.1.1. Overall Results

Table 2 shows the average NDCG and precision scores for all queries. We notice that joining all three models provides the best results. The improvement of the top-5 results compared to relativeness is about 17% in NDCG and 18% in precision, which is statistically significant (paired t-test, ). Note that relativeness can be considered a baseline model for our problem since it considers entity frequency which is a classic numerical statistic (Leskovec et al., 2014). The results also show that relatedness performs very well, outperforming the joined models for P@10. This means that considering other entities that co-occur frequently with the query entities in important time periods has a positive effect on the ranking.

Measure
Random
ranking
Relativeness
[A]
Timeliness
[B]
Relatedness
[C]
[A][B]
[A][C]
[B][C]
[A][B][C]
NDCG@5 0.26 0.48 0.27 0.41 0.53 0.52 0.45 0.56
NDCG@10 0.33 0.52 0.36 0.50 0.55 0.56 0.51 0.58
NDCG@all 0.68 0.79 0.69 0.76 0.80 0.81 0.76 0.82
P@5 0.27 0.44 0.28 0.48 0.48 0.50 0.45 0.52
P@10 0.29 0.38 0.30 0.45 0.37 0.42 0.41 0.41
Table 2. Average NDCG and Precision of the probabilistic models for all queries.
Measure
[A]
[B]
[C]
[A][B]
[A][C]
[B][C]
[A][B][C]
NDCG@5 0.66 0.30 0.40 0.68 0.69 0.45 0.70
NDCG@10 0.69 0.38 0.51 0.70 0.71 0.51 0.70
NDCG@all 0.88 0.67 0.75 0.87 0.88 0.72 0.87
P@5 0.57 0.23 0.50 0.57 0.60 0.40 0.60
P@10 0.40 0.27 0.45 0.40 0.40 0.38 0.40
Table 3. Average NDCG and Precision of the probabilistic models for single-entity queries (Q1-Q6).

6.1.2. Detailed results per query type.

Tables 3-6 show the results per query type.

Measure
[A]
[B]
[C]
[A][B]
[A][C]
[B][C]
[A][B][C]
NDCG@5 0.34 0.28 0.31 0.42 0.35 0.38 0.40
NDCG@10 0.43 0.33 0.40 0.46 0.45 0.46 0.47
NDCG@all 0.76 0.71 0.75 0.78 0.76 0.77 0.77
P@5 0.43 0.33 0.30 0.50 0.47 0.43 0.50
P@10 0.50 0.32 0.42 0.48 0.53 0.47 0.50
Table 4. Average NDCG and Precision of the probabilistic models for multiple-entity AND queries (Q7-Q12).
Measure
[A]
[B]
[C]
[A][B]
[A][C]
[B][C]
[A][B][C]
NDCG@5 0.68 0.24 0.44 0.70 0.72 0.46 0.71
NDCG@10 0.69 0.36 0.55 0.69 0.72 0.54 0.73
NDCG@all 0.87 0.69 0.79 0.87 0.88 0.79 0.88
P@5 0.60 0.27 0.57 0.60 0.63 0.43 0.63
P@10 0.42 0.30 0.48 0.40 0.45 0.42 0.45
Table 5. Average NDCG and Precision of the probabilistic models for multiple-entity OR queries (Q13-Q18).
Measure
[A]
[B]
[C]
[A][B]
[A][C]
[B][C]
[A][B][C]
NDCG@5 0.22 0.27 0.48 0.34 0.34 0.52 0.41
NDCG@10 0.28 0.37 0.53 0.36 0.38 0.53 0.43
NDCG@all 0.66 0.68 0.78 0.70 0.71 0.77 0.73
P@5 0.17 0.27 0.53 0.23 0.30 0.53 0.33
P@10 0.20 0.30 0.45 0.20 0.28 0.37 0.28
Table 6. Average NDCG and Precision of the probabilistic models for category queries (Q19-Q22).

Regarding single entity queries (Table 3), we observe that combining relativeness with relatedness has almost the same performance with the case of joining all models. This means that timeliness seems to have a minor negative effect on the rankings. For this query type, query 4 has the best performance on the joined model with NDCG@5 and NDCG@10 . On the contrary, query 5 does not perform well with NDCG@5 = 0.29 and NDCG@10 = 0.37 (this query returns several ”headlines” articles summarizing what is inside today’s paper, which may confuse our modeling).

As regards multiple-entity AND queries (Table 4), we observe that joining relativeness with timeliness seems to perform better with small difference compared to the case of joining of all models, which means that here timeliness has a positive effect on the ranking. We also notice that all models perform worst compared to the single-entity case. For this query type, the NDCG@10 score of all queries ranges from 0.35 (for query 8) to 0.67 (for query 12).

The case of multiple-entity OR queries (Table 5) is very similar to the case of single entity queries where timeliness seems to have a minor negative impact. Here almost all queries have very good performance with NDCG@10 score .

As regards category queries (Table 6), it is very interesting that the performance of relativeness is very low, while relatedness performs very well and timeliness has a positive impact especially for the top-5 lists. By thoroughly checking the results of queries that perform very bad in relativeness (like queries 19 and 22), we noticed that the reason for this bad performance is the presence of a large number of disambiguation errors in the returned documents. A characteristic of this type of queries is the big number of query entities which in turn increases the probability of disambiguation errors. Note that relativeness favors documents containing many instances of the query entities. However, if an irrelevant document contains many instances of entity names that have been wrongly linked to query entities, this document will receive a high relativeness score (since it contains many “false positive” query entities). For example, query 19 in our dataset has a very bad performance in relativeness (NDCG@5 = 0.02, NDCG@10 = 0.10). This query requests articles mentioning NASA civilian astronauts, however many instances of the entity name Armstrong have been incorrectly linked to the American astronaut Neil Armstrong (like the referee Hank Armstrong or the company Armstrong World Industries). Likewise, in query 22 several instances of the entity names Teresa and Theresa are incorrectly mapped to Mother Teresa. Nevertheless, we see that relatedness somehow fixes this problem. This model considers the co-occurrence of entities in important time periods and favors documents that contain many instances of other important entities. The probability that many false positive cases co-occur with the same related entities in many documents is very low, and thus considering entity associations has a positive effect on the ranking. In query 19, for example, the incorrect instances of the query entity Neil Armstrong co-occur with entities that do not exist in the documents in which Neil Armstrong has been correctly identified, and thus the relatedness score (Equation 10) of these entities is low.

6.2. Effectiveness of Stochastic Model

We run experiments for different values of probability (probability to perform a restart, cf. Equation 20) and different values of probability (probability to move to a document node when being at a query-entity node, cf. Equation 17). For the restart probability, we tested the following 5 cases: . Note that testing does not make sense, since the walker will never reach document nodes. Regarding the probability, we tested 6 cases (). Empirically, provides the best results independently of the value. Thus, all the results reported below correspond to . Moreover, in all experiments, we set the number of iterations to 30.

Tables 7-10 show the results per query type and for different values of probability. For the first three types of queries, we observe that provides the best results and that, as the probability gets lower, the results get worse. Using , the walker can move only to document nodes. This means that for small values of probability, the algorithm overemphasizes the association between the entities resulting in worst performance. Thus, the results show that reaching documents through related entities affects negatively the rankings for these types of queries.

Compared to the results of the probabilistic modeling, we see that: i) the performance of the two models is almost the same for single-entity queries, while the stochastic model outperforms the best probabilistic model for multiple-entity AND queries, and ii) the best probabilistic model outperforms the stochastic model for multiple-entity OR queries. Regarding (ii), this failure of the stochastic model is probably due to the fact that the graph in the case of OR queries is not as well-connected as in the case of AND queries (for OR queries, the graph may contain disconnected components, e.g., in cases where there are no documents mentioning all query entities).

Measure
=0.0
=0.2
=0.4
=0.6
=0.8
=1.0
NDCG@5 0.09 0.27 0.48 0.63 0.65 0.67
NDCG@10 0.18 0.35 0.54 0.69 0.72 0.74
NDCG@all 0.60 0.68 0.77 0.85 0.87 0.87
P@5 0.07 0.23 0.43 0.47 0.53 0.60
P@10 0.12 0.23 0.33 0.37 0.42 0.43
Table 7. Average NDCG and Precision of the stochastic model for single entity queries (Q1-Q6).
Measure
=0.0
=0.2
=0.4
=0.6
=0.8
=1.0
NDCG@5 0.29 0.29 0.32 0.31 0.37 0.48
NDCG@10 0.36 0.36 0.40 0.45 0.47 0.52
NDCG@all 0.72 0.73 0.74 0.75 0.78 0.80
P@5 0.27 0.27 0.27 0.30 0.37 0.57
P@10 0.30 0.30 0.38 0.45 0.47 0.50
Table 8. Average NDCG and Precision of the stochastic model for multiple-entity AND queries (Q7-Q12).
Measure
=0.0
=0.2
=0.4
=0.6
=0.8
=1.0
NDCG@5 0.20 0.30 0.32 0.38 0.45 0.59
NDCG@10 0.27 0.38 0.42 0.51 0.52 0.65
NDCG@all 0.66 0.71 0.72 0.75 0.76 0.84
P@5 0.27 0.33 0.33 0.37 0.47 0.53
P@10 0.30 0.33 0.35 0.42 0.42 0.45
Table 9. Average NDCG and Precision of the stochastic model for multiple-entity OR queries (Q13-Q18).
Measure
=0.0
=0.2
=0.4
=0.6
=0.8
=1.0
NDCG@5 0.43 0.47 0.53 0.50 0.46 0.23
NDCG@10 0.48 0.54 0.55 0.52 0.54 0.36
NDCG@all 0.74 0.77 0.79 0.77 0.77 0.68
P@5 0.57 0.57 0.60 0.60 0.60 0.23
P@10 0.42 0.43 0.40 0.40 0.43 0.28
Table 10. Average NDCG and Precision of the stochastic model for category queries (Q19-Q24).

However, for the category queries (Table 10), we see that provides the worst results, while performs better. This means that, for this type of queries, considering the associations of the query entities with other entities mentioned in the retrieved documents affects positively the results. However, at the same time, we see that we should not give too much emphasis to this (by giving very low value to ). Notice that this is in correspondence to the evaluation results of the probabilistic models for the same type of queries. Moreover, we notice that the stochastic model for performs better than the best probabilistic model, providing better rankings and more relevant results in the top positions.

6.3. Synopsis of Evaluation Results

Based on the evaluation results, we can conclude that:

  • Category queries is a special case where the number of query entities can be very large and this makes the results more susceptible to disambiguation errors of the used entity linking system. Thereby, for this type of queries one should select a model which considers the associations between the query-entities and other entities mentioned in the returned documents, since this limits the negative impact of this problem. Finally, a stochastic model with outperforms the best probabilistic model (relatedness).

  • For the other types of queries, a model which considers both relativeness and relatedness should be selected, while timeliness does not seem to significantly affect the rankings. For single-entity and multiple-entity AND queries, one may select the stochastic model which seems to perform better than the probabilistic models, however for multiple-entity OR queries where the graph is not so well connected, one may opt for a probabilistic model.

7. Conclusions

We have formalized the problem of ranking archived documents for structured (SPARQL) queries on semantic layers, i.e., on RDF graphs describing metadata and annotation information about the documents. To cope with this problem, we have proposed two ranking models, a probabilistic one and a stochastic one, which jointly consider the following aspects: i) the relativeness of the documents to the query entities, ii) the timeliness of the documents, and iii) the temporal relatedness of other entities mentioned in the documents to the query entities. To evaluate our approach, and due to lack of evaluation datasets for the problem at hand, we carefully created a new ground truth dataset which we make publicly available for fostering further research on similar problems. The evaluation results showed that the proposed models can identify important - for the query entities - documents, achieving high NDCG and precision scores and outperforming a classic, frequency-based baseline model. The results also showed that relatedness, i.e., considering the temporal association of the query entities with other entities mentioned in the results, has a high positive impact on the ranking and can limit the negative effect caused by disambiguation errors of entity linking.

Regarding future work, we plan to study the applicability of similar models on other types of archives, like web archives where much more noisy (and probably spam) data exists and the archived documents (web pages) contain multiple similar or identical versions. Another interesting direction is the study of diversity-aware ranking methods that can reflect the diversity of the retrieved documents. We also plan to build user-friendly interfaces on top of semantic layers which will make use of the proposed ranking models and will allow end-users to easily explore the archives.

Acknowledgements.
The work was partially funded by the European Commission for the ERC Advanced Grant ALEXANDRIA (No. 339233).

References

  • (1)
  • Aji et al. (2010) Ablimit Aji, Yu Wang, Eugene Agichtein, and Evgeniy Gabrilovich. 2010. Using the past to score the present: Extending term weighting models through revision history analysis. In 19th CIKM. ACM.
  • Arenas et al. (2014) Marcelo Arenas, Bernardo Cuenca Grau, Evgeny Kharlamov, Sarunas Marciuska, Dmitriy Zheleznyakov, and Ernesto Jimenez-Ruiz. 2014. SemFacet: semantic faceted search over yago. In International Conference on World Wide Web. ACM.
  • Arikan et al. (2009) Irem Arikan, Srikanta Bedathur, and Klaus Berberich. 2009. Time Will Tell: Leveraging Temporal Expressions in IR. In 2nd ACM International Conference on Web Search and Data Mining. ACM.
  • Balog et al. (2010) Krisztian Balog, Pavel Serdyukov, and Arjen P De Vries. 2010. Overview of the trec 2010 entity track. In In TREC 2010.
  • Berberich et al. (2010) Klaus Berberich, Srikanta Bedathur, Omar Alonso, and Gerhard Weikum. 2010. A Language Modeling Approach for Temporal Information Needs. In European Conference on Information Retrieval. Springer, 13–25.
  • Calhoun (2014) Karen Calhoun. 2014. Exploring digital libraries: foundations, practice, prospects. Facet Publishing.
  • Campinas et al. (2012) Stéphane Campinas, Renaud Delbru, and Giovanni Tummarello. 2012. Effective retrieval model for entity with multi-valued attributes: Bm25mf and beyond. In International Conference on Knowledge Engineering and Knowledge Management. Springer, 200–215.
  • Campos et al. (2015) Ricardo Campos, Gaël Dias, Alípio M Jorge, and Adam Jatowt. 2015. Survey of temporal information retrieval and related applications. ACM Computing Surveys (CSUR) 47, 2 (2015), 15.
  • Cataldi et al. (2010) Mario Cataldi, Luigi Di Caro, and Claudio Schifanella. 2010. Emerging topic detection on twitter based on temporal and social terms evaluation. In Proceedings of the tenth international workshop on multimedia data mining. ACM, 4.
  • Dakka et al. (2012) Wisam Dakka, Luis Gravano, and Panagiotis Ipeirotis. 2012. Answering general time-sensitive queries. IEEE Transactions on Knowledge and Data Engineering 24, 2 (2012), 220–235.
  • Fafalios et al. (2017) P. Fafalios, H. Holzmann, V. Kasturia, and W. Nejdl. 2017. Building and Querying Semantic Layers for Web Archives. In ACM/IEEE-CS Joint Conference on Digital Libraries (JCDL’17). Toronto, Ontario, Canada.
  • Fafalios and Tzitzikas (2014) P. Fafalios and Y. Tzitzikas. 2014. Post-Analysis of Keyword-based Search Results using Entity Mining, Linked Data and Link Analysis at Query Time. In 2014 IEEE Eighth International Conference on Semantic Computing (ICSC 2014). IEEE, Newport Beach, California, USA.
  • Fafalios and Tzitzikas (2017) Pavlos Fafalios and Yannis Tzitzikas. 2017. Stochastic reranking of biomedical search results based on extracted entities. Journal of the Association for Information Science and Technology 68, 11 (2017), 2572–2586.
  • Ferré (2014) Sébastien Ferré. 2014. Sparklis: a sparql endpoint explorer for expressive question answering. In ISWC Posters & Demonstrations Track.
  • Feyznia et al. (2014) Azam Feyznia, Mohsen Kahani, and Fattane Zarrinkalam. 2014. COLINA: A Method for Ranking SPARQL Query Results through Content and Link Analysis.. In International Semantic Web Conference (Posters & Demos). 273–276.
  • Halpin et al. (2010) Harry Halpin, Daniel M Herzig, Peter Mika, Roi Blanco, Jeffrey Pound, Henry S Thompson, and Thanh Tran Duc. 2010. Evaluating ad-hoc object retrieval. In International Workshop on Evaluation of Semantic Technologies, IWEST. Citeseer.
  • Hoffart et al. (2011) Johannes Hoffart, Mohamed Amir Yosef, Ilaria Bordino, Hagen Fürstenau, Manfred Pinkal, Marc Spaniol, Bilyana Taneva, Stefan Thater, and Gerhard Weikum. 2011. Robust disambiguation of named entities in text. In Conference on Empirical Methods in Natural Language Processing.
  • Hogan et al. (2011) Aidan Hogan, Andreas Harth, Jürgen Umbrich, Sheila Kinsella, Axel Polleres, and Stefan Decker. 2011. Searching and browsing linked data with SWSE: the semantic Web search engine. Web Semantics: Science, Services and Agents on the World Wide Web 9, 4 (2011), 365–401.
  • Holzmann and Anand (2016) Helge Holzmann and Avishek Anand. 2016. Tempas: Temporal Archive Search Based on Tags. In International Conference on World Wide Web.
  • Holzmann et al. (2017) Helge Holzmann, Wolfgang Nejdl, and Avishek Anand. 2017. Exploring Web Archives Through Temporal Anchor Texts. In Proceedings of the 2017 ACM on Web Science Conference. ACM, 289–298.
  • Järvelin and Kekäläinen (2002) Kalervo Järvelin and Jaana Kekäläinen. 2002. Cumulated gain-based evaluation of IR techniques. ACM Transactions on Information Systems (TOIS) 20, 4 (2002), 422–446.
  • Jin et al. (2008) Peiquan Jin, Jianlong Lian, Xujian Zhao, and Shouhong Wan. 2008. Tise: A temporal search engine for web contents. In Intelligent Information Technology Application, 2008. IITA’08. Second International Symposium on, Vol. 3. IEEE.
  • Kanhabua et al. (2015) Nattiya Kanhabua, Roi Blanco, Kjetil Nørvåg, et al. 2015. Temporal information retrieval. Foundations and Trends® in Information Retrieval 9, 2 (2015), 91–208.
  • Kanhabua and Nørvåg (2012) Nattiya Kanhabua and Kjetil Nørvåg. 2012. Learning to rank search results for time-sensitive queries. In Proceedings of the 21st ACM international conference on Information and knowledge management. ACM, 2463–2466.
  • Latifi and Nematbakhsh (2014) Sara Latifi and Mohammadali Nematbakhsh. 2014. Query-independent learning to rank RDF entity results of SPARQL queries. In Computer and Knowledge Engineering (ICCKE), 2014 4th International eConference on. IEEE.
  • Leskovec et al. (2014) Jure Leskovec, Anand Rajaraman, and Jeffrey David Ullman. 2014. Mining of massive datasets. Cambridge University Press.
  • Metzler et al. (2009) Donald Metzler, Rosie Jones, Fuchun Peng, and Ruiqiang Zhang. 2009. Improving search relevance for implicitly temporal queries. In 32nd international ACM SIGIR conference on Research and development in information retrieval. ACM, 700–701.
  • Moro et al. (2014) Andrea Moro, Alessandro Raganato, and Roberto Navigli. 2014. Entity linking meets word sense disambiguation: a unified approach. Transactions of the Association for Computational Linguistics 2 (2014).
  • Mulay and Kumar (2011) Kunal Mulay and P Sreenivasa Kumar. 2011. SPRING: Ranking the results of SPARQL queries on Linked Data. In Proceedings of the 17th International Conference on Management of Data. Computer Society of India, 12.
  • Ngonga Ngomo et al. (2017) Axel-Cyrille Ngonga Ngomo, Michael Hoffmann, Ricardo Usbeck, and Kunal Jha. 2017. Holistic and Scalable Ranking of RDF Data. In 2017 IEEE International Conference on Big Data.
  • Pound et al. (2010) Jeffrey Pound, Peter Mika, and Hugo Zaragoza. 2010. Ad-hoc object retrieval in the web of data. In 19th international conference on World wide web. ACM.
  • Roa-Valverde and Sicilia (2014) Antonio J Roa-Valverde and Miguel-Angel Sicilia. 2014. A survey of approaches for ranking on the web of data. Information Retrieval 17, 4 (2014), 295–325.
  • Sandhaus (2008) Evan Sandhaus. 2008. The new york times annotated corpus. Linguistic Data Consortium, Philadelphia 6, 12 (2008).
  • Shen et al. (2015) Wei Shen, Jianyong Wang, and Jiawei Han. 2015. Entity linking with a knowledge base: Issues, techniques, and solutions. IEEE Transactions on Knowledge and Data Engineering 27, 2 (2015), 443–460.
  • Singh et al. (2016a) Jaspreet Singh, Wolfgang Nejdl, and Avishek Anand. 2016a. Expedition: A Time-Aware Exploratory Search System Designed for Scholars. In SIGIR conference on Research and Development in Information Retrieval.
  • Singh et al. (2016b) Jaspreet Singh, Wolfgang Nejdl, and Avishek Anand. 2016b. History by diversity: Helping historians search news archives. In ACM Conference on Human Information Interaction and Retrieval.
  • Tonon et al. (2012) Alberto Tonon, Gianluca Demartini, and Philippe Cudré-Mauroux. 2012. Combining inverted indices and structured search for ad-hoc object retrieval. In ACM SIGIR. ACM, 125–134.
  • Tran et al. (2017) Nam Khanh Tran, Tuan Tran, and Claudia Niederée. 2017. Beyond Time: Dynamic Context-Aware Entity Recommendation. In European Semantic Web Conference.
  • Tzitzikas et al. (2016) Yannis Tzitzikas, Nikos Manolis, and Panagiotis Papadakos. 2016. Faceted exploration of RDF/S datasets: a survey. Journal of Intelligent Information Systems (2016), 1–36.
  • Zhang et al. (2016) Lei Zhang, Achim Rettinger, and Ji Zhang. 2016. A Probabilistic Model for Time-Aware Entity Recommendation. In International Semantic Web Conference.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
""
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
   
Add comment
Cancel
Loading ...
313726
This is a comment super asjknd jkasnjk adsnkj
Upvote
Downvote
""
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters
Submit
Cancel

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test
Test description