diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/GlobalSearchCriteriaTranslator.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/GlobalSearchCriteriaTranslator.java
index d39126898a4bf661c7d7507ca355cb04edb1f640..c31f20025beb91e7d5b2b59eea9830e90c63566b 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/GlobalSearchCriteriaTranslator.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/GlobalSearchCriteriaTranslator.java
@@ -25,6 +25,15 @@ public class GlobalSearchCriteriaTranslator
 
     public static final String IDENTIFIER_ALIAS = "identifier";
 
+    public static final String HEADLINE_ALIAS_SUFFIX = "_headline";
+
+    private static final String START_SEL = "<{(";
+
+    private static final String STOP_SEL = ")}>";
+
+    private static final String TS_HEADLINE_OPTIONS = "HighlightAll=TRUE, StartSel=" + START_SEL
+            +", StopSel=" + STOP_SEL;
+
     private GlobalSearchCriteriaTranslator()
     {
         throw new UnsupportedOperationException();
@@ -115,11 +124,16 @@ public class GlobalSearchCriteriaTranslator
         sqlBuilder.append(TS_RANK).append(LP).append(MAIN_TABLE_ALIAS).append(PERIOD).append(TSVECTOR_DOCUMENT).append(COMMA).append(SP);
 
         buildTsQueryPart(sqlBuilder, value, args);
-        sqlBuilder.append(RP).append(SP).append(RANK_ALIAS)/*.append(COMMA).append(SP)*/;
+        sqlBuilder.append(RP).append(SP).append(RANK_ALIAS).append(COMMA).append(SP);
 
 //        sqlBuilder.append(QU).append(SP).append(SEARCH_STRING_ALIAS).append(NL);
 //        args.add(value);
 
+        sqlBuilder.append(TS_HEADLINE).append(LP).append(MAIN_TABLE_ALIAS).append(PERIOD).append(CODE_COLUMN).append(COMMA).append(SP);
+        buildTsQueryPart(sqlBuilder, value, args);
+        sqlBuilder.append(COMMA).append(SP).append(SQ).append(TS_HEADLINE_OPTIONS).append(SQ).append(RP).append(SP)
+                .append(CODE_COLUMN).append(HEADLINE_ALIAS_SUFFIX);
+
         sqlBuilder.append(NL);
 
         // FROM
diff --git a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/SQLLexemes.java b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/SQLLexemes.java
index 05d0071e82dd0b6b96e4766ee7ecfa4b3acad9a1..3068cd0aaff0cf521d586b70b576de360402295c 100644
--- a/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/SQLLexemes.java
+++ b/openbis/source/java/ch/ethz/sis/openbis/generic/server/asapi/v3/search/translator/SQLLexemes.java
@@ -31,6 +31,8 @@ public class SQLLexemes
 
     public static final String TO_TSQUERY = "to_tsquery";
 
+    public static final String TS_HEADLINE = "ts_headline";
+
     public static final String PLAINTO_TSQUERY = "plainto_tsquery";
 
     public static final String NUMERIC = "numeric";