mirror of
				https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
				synced 2025-11-04 04:12:45 +00:00 
			
		
		
		
	Some fixes
This commit is contained in:
		@@ -144,28 +144,28 @@ class CQiWrapper(CQiClient):
 | 
				
			|||||||
        # Save them as list into on match entry at serial number 'i'
 | 
					        # Save them as list into on match entry at serial number 'i'
 | 
				
			||||||
        ordered_matches = collections.OrderedDict()
 | 
					        ordered_matches = collections.OrderedDict()
 | 
				
			||||||
        for i, match_pair in enumerate(match_boundaries):
 | 
					        for i, match_pair in enumerate(match_boundaries):
 | 
				
			||||||
            ordered_matches[i] = ({'match_cpos_list':
 | 
					            ordered_matches[i] = ({'match_cpos':
 | 
				
			||||||
                                   list(range(match_pair[0],
 | 
					                                   list(range(match_pair[0],
 | 
				
			||||||
                                              match_pair[1] + 1))})
 | 
					                                              match_pair[1] + 1))})
 | 
				
			||||||
        # Saves cpos form all match entries into one list
 | 
					        # Saves cpos form all match entries into one list
 | 
				
			||||||
        all_cpos_list = []
 | 
					        all_cpos_list = []
 | 
				
			||||||
        for key in ordered_matches.keys():
 | 
					        for key in ordered_matches.keys():
 | 
				
			||||||
            all_cpos_list += ordered_matches[key]['match_cpos_list']
 | 
					            all_cpos_list += ordered_matches[key]['match_cpos']
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        # Saves all cpos from before and after context into the list:
 | 
					        # Saves all cpos from before and after context into the list:
 | 
				
			||||||
        # all_context_cpos_list
 | 
					        # all_context_cpos_list
 | 
				
			||||||
        all_context_cpos_list = []
 | 
					        all_context_cpos_list = []
 | 
				
			||||||
        for key in ordered_matches.keys():
 | 
					        for key in ordered_matches.keys():
 | 
				
			||||||
            cpos_list = ordered_matches[key]['match_cpos_list']
 | 
					            cpos_list = ordered_matches[key]['match_cpos']
 | 
				
			||||||
            before_index = max([0, cpos_list[0] - self.context_len])
 | 
					            before_index = max([0, cpos_list[0] - self.context_len])
 | 
				
			||||||
            after_index = min([self.corpus_max_len,
 | 
					            after_index = min([self.corpus_max_len,
 | 
				
			||||||
                               cpos_list[-1] + self.context_len])
 | 
					                               cpos_list[-1] + self.context_len])
 | 
				
			||||||
            ordered_matches[key]['context_before_cpos_list'] = list(range(before_index,
 | 
					            ordered_matches[key]['left_context_cpos'] = list(range(before_index,
 | 
				
			||||||
                                                                          cpos_list[0]))
 | 
					                                                                          cpos_list[0]))
 | 
				
			||||||
            ordered_matches[key]['context_after_cpos_list'] = list(range(cpos_list[-1] + 1,
 | 
					            ordered_matches[key]['right_context_cpos'] = list(range(cpos_list[-1] + 1,
 | 
				
			||||||
                                                                         after_index + 1))
 | 
					                                                                         after_index + 1))
 | 
				
			||||||
            all_context_cpos_list += ordered_matches[key]['context_before_cpos_list']
 | 
					            all_context_cpos_list += ordered_matches[key]['left_context_cpos']
 | 
				
			||||||
            all_context_cpos_list += ordered_matches[key]['context_after_cpos_list']
 | 
					            all_context_cpos_list += ordered_matches[key]['right_context_cpos']
 | 
				
			||||||
        # Combines all_cpos_list with all_context_cpos_list as a sorted set
 | 
					        # Combines all_cpos_list with all_context_cpos_list as a sorted set
 | 
				
			||||||
        all_cpos_list += all_context_cpos_list
 | 
					        all_cpos_list += all_context_cpos_list
 | 
				
			||||||
        all_cpos_list = sorted(list(set(all_cpos_list)))
 | 
					        all_cpos_list = sorted(list(set(all_cpos_list)))
 | 
				
			||||||
@@ -178,37 +178,37 @@ class CQiWrapper(CQiClient):
 | 
				
			|||||||
            # loops over cpos in cpos_list which holds all match cpos
 | 
					            # loops over cpos in cpos_list which holds all match cpos
 | 
				
			||||||
            # Replaces one cpos with the corresponding cpos information created
 | 
					            # Replaces one cpos with the corresponding cpos information created
 | 
				
			||||||
            # by self.get_cpos_infos(all_cpos_list)
 | 
					            # by self.get_cpos_infos(all_cpos_list)
 | 
				
			||||||
            cpos_list = ordered_matches[key]['match_cpos_list']
 | 
					            cpos_list = ordered_matches[key]['match_cpos']
 | 
				
			||||||
            infos = []
 | 
					            infos = []
 | 
				
			||||||
            for cpos in cpos_list:
 | 
					            for cpos in cpos_list:
 | 
				
			||||||
                info = {cpos: all_cpos_infos.get(cpos)}
 | 
					                info = {cpos: all_cpos_infos.get(cpos)}
 | 
				
			||||||
                infos.append(info)
 | 
					                infos.append(info)
 | 
				
			||||||
            ordered_matches[key]['match_cpos_list'] = infos
 | 
					            ordered_matches[key]['match_cpos'] = infos
 | 
				
			||||||
            try:
 | 
					            try:
 | 
				
			||||||
                # loops over cpos in ordered_matches[key]['context_before_cpos_list']
 | 
					                # loops over cpos in ordered_matches[key]['left_context_cpos']
 | 
				
			||||||
                # which holds all cpos of the before context
 | 
					                # which holds all cpos of the before context
 | 
				
			||||||
                # Replaces one cpos with the corresponding cpos information created
 | 
					                # Replaces one cpos with the corresponding cpos information created
 | 
				
			||||||
                # by self.get_cpos_infos(all_cpos_list)
 | 
					                # by self.get_cpos_infos(all_cpos_list)
 | 
				
			||||||
                before_context_infos = []
 | 
					                before_context_infos = []
 | 
				
			||||||
                for context_before_cpos in ordered_matches[key]['context_before_cpos_list']:
 | 
					                for context_before_cpos in ordered_matches[key]['left_context_cpos']:
 | 
				
			||||||
                    before_context_info = {context_before_cpos:
 | 
					                    before_context_info = {context_before_cpos:
 | 
				
			||||||
                                           all_cpos_infos.get(context_before_cpos)}
 | 
					                                           all_cpos_infos.get(context_before_cpos)}
 | 
				
			||||||
                    before_context_infos.append(before_context_info)
 | 
					                    before_context_infos.append(before_context_info)
 | 
				
			||||||
                ordered_matches[key]['context_before_cpos_list'] = before_context_infos
 | 
					                ordered_matches[key]['left_context_cpos'] = before_context_infos
 | 
				
			||||||
            except UnboundLocalError:
 | 
					            except UnboundLocalError:
 | 
				
			||||||
                logger.warning('Context before cpos list is empty.')
 | 
					                logger.warning('Context before cpos list is empty.')
 | 
				
			||||||
                pass
 | 
					                pass
 | 
				
			||||||
            try:
 | 
					            try:
 | 
				
			||||||
                # loops over cpos in ordered_matches[key]['context_after_cpos_list']
 | 
					                # loops over cpos in ordered_matches[key]['right_context_cpos']
 | 
				
			||||||
                # which holds all cpos of the before context
 | 
					                # which holds all cpos of the before context
 | 
				
			||||||
                # Replaces one cpos with the corresponding cpos information created
 | 
					                # Replaces one cpos with the corresponding cpos information created
 | 
				
			||||||
                # by self.get_cpos_infos(all_cpos_list)
 | 
					                # by self.get_cpos_infos(all_cpos_list)
 | 
				
			||||||
                after_context_infos = []
 | 
					                after_context_infos = []
 | 
				
			||||||
                for context_after_cpos in ordered_matches[key]['context_after_cpos_list']:
 | 
					                for context_after_cpos in ordered_matches[key]['right_context_cpos']:
 | 
				
			||||||
                    after_context_info = {context_after_cpos:
 | 
					                    after_context_info = {context_after_cpos:
 | 
				
			||||||
                                          all_cpos_infos.get(context_after_cpos)}
 | 
					                                          all_cpos_infos.get(context_after_cpos)}
 | 
				
			||||||
                    after_context_infos.append(after_context_info)
 | 
					                    after_context_infos.append(after_context_info)
 | 
				
			||||||
                ordered_matches[key]['context_after_cpos_list'] = after_context_infos
 | 
					                ordered_matches[key]['right_context_cpos'] = after_context_infos
 | 
				
			||||||
            except UnboundLocalError:
 | 
					            except UnboundLocalError:
 | 
				
			||||||
                logger.warning('Context after cpos list is empty.')
 | 
					                logger.warning('Context after cpos list is empty.')
 | 
				
			||||||
                pass
 | 
					                pass
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -119,33 +119,39 @@
 | 
				
			|||||||
    if (results === null) {
 | 
					    if (results === null) {
 | 
				
			||||||
      M.toast({html: 'Query has no results!'});
 | 
					      M.toast({html: 'Query has no results!'});
 | 
				
			||||||
    } else {
 | 
					    } else {
 | 
				
			||||||
      html_txt = '<table class="highlight"> <thead><tr><th>Left context</th><th>Match</th><th>Right Context</th></tr></thead>';
 | 
					      console.log(results);
 | 
				
			||||||
 | 
					      html_txt = '<table class="highlight"> <thead><tr><th>Title</th><th>Left context</th><th>Match</th><th>Right Context</th></tr></thead>';
 | 
				
			||||||
      for (let [key, hit] of Object.entries(results)) {
 | 
					      for (let [key, hit] of Object.entries(results)) {
 | 
				
			||||||
        var left_context = hit['context_before_cpos_list']
 | 
					        var left_context = hit['left_context_cpos']
 | 
				
			||||||
        var match = hit['match_cpos_list']
 | 
					        var match = hit['match_cpos']
 | 
				
			||||||
        var right_context = hit['context_after_cpos_list']
 | 
					        var right_context = hit['right_context_cpos']
 | 
				
			||||||
        var l_text = getResultInfos(left_context)
 | 
					        var l_text = getResultInfos(left_context, 'word')
 | 
				
			||||||
        var m_text = getResultInfos(match)
 | 
					        var m_text = getResultInfos(match, 'word')
 | 
				
			||||||
        var r_text = getResultInfos(right_context)
 | 
					        var r_text = getResultInfos(right_context, 'word')
 | 
				
			||||||
        html_txt += '<tr><td>' + l_text + '</td><td>' + m_text + '</td><td>' + r_text + '</td></tr>';
 | 
					        var match_source = getResultInfos(match, 'text_title', 1)
 | 
				
			||||||
 | 
					        html_txt += '<tr> <td>' + match_source + '</td><td>' + l_text + '</td><td>' + m_text + '</td><td>' + r_text + '</td></tr>';
 | 
				
			||||||
        l_text = '';
 | 
					        l_text = '';
 | 
				
			||||||
        m_text = '';
 | 
					        m_text = '';
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      html_txt += '</table>';
 | 
					      html_txt += '</table>';
 | 
				
			||||||
      console.log(html_txt);
 | 
					 | 
				
			||||||
      queryResultsElement.innerHTML = html_txt;
 | 
					      queryResultsElement.innerHTML = html_txt;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
  function getResultInfos(matchObject) {
 | 
					  function getResultInfos(matchObject, info_key, slice) {
 | 
				
			||||||
    infos = '';
 | 
					    var infos = [];
 | 
				
			||||||
    for (var key in matchObject) {
 | 
					    for (let [infoKey, infoValue] of Object.entries(matchObject)) {
 | 
				
			||||||
        var token = matchObject[key];
 | 
					        var token = infoValue;
 | 
				
			||||||
        for (var key in token) {
 | 
					        for (let key in token) {
 | 
				
			||||||
          infos += token[key]['word'] + ' ';
 | 
					          infos.push(token[key][info_key]);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        var infos = infos;
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    return infos
 | 
					    if (slice) {
 | 
				
			||||||
 | 
					      console.log(infos);
 | 
				
			||||||
 | 
					      var infos = infos[slice];
 | 
				
			||||||
 | 
					      return infos;
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      return infos;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
</script>
 | 
					</script>
 | 
				
			||||||
{% endblock %}
 | 
					{% endblock %}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user