summaryrefslogtreecommitdiffstats
path: root/config-model/src/test/derived/complex
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@yahoo-inc.com>2016-06-15 23:09:44 +0200
committerJon Bratseth <bratseth@yahoo-inc.com>2016-06-15 23:09:44 +0200
commit72231250ed81e10d66bfe70701e64fa5fe50f712 (patch)
tree2728bba1131a6f6e5bdf95afec7d7ff9358dac50 /config-model/src/test/derived/complex
Publish
Diffstat (limited to 'config-model/src/test/derived/complex')
-rw-r--r--config-model/src/test/derived/complex/attributes.cfg171
-rw-r--r--config-model/src/test/derived/complex/complex.sd150
-rw-r--r--config-model/src/test/derived/complex/documentmanager.cfg119
-rw-r--r--config-model/src/test/derived/complex/ilscripts.cfg48
-rw-r--r--config-model/src/test/derived/complex/rank-profiles.cfg68
-rw-r--r--config-model/src/test/derived/complex/summary.cfg43
-rw-r--r--config-model/src/test/derived/complex/summarymap.cfg34
7 files changed, 633 insertions, 0 deletions
diff --git a/config-model/src/test/derived/complex/attributes.cfg b/config-model/src/test/derived/complex/attributes.cfg
new file mode 100644
index 00000000000..b6ae59b5c24
--- /dev/null
+++ b/config-model/src/test/derived/complex/attributes.cfg
@@ -0,0 +1,171 @@
+attribute[0].name "prefixenabled"
+attribute[0].datatype STRING
+attribute[0].collectiontype SINGLE
+attribute[0].removeifzero false
+attribute[0].createifnonexistent false
+attribute[0].fastsearch false
+attribute[0].huge true
+attribute[0].sortascending true
+attribute[0].sortfunction UCA
+attribute[0].sortstrength PRIMARY
+attribute[0].sortlocale ""
+attribute[0].enablebitvectors false
+attribute[0].enableonlybitvector false
+attribute[0].fastaccess false
+attribute[0].arity 8
+attribute[0].lowerbound -9223372036854775808
+attribute[0].upperbound 9223372036854775807
+attribute[0].densepostinglistthreshold 0.4
+attribute[0].tensortype ""
+attribute[1].name "fleeting"
+attribute[1].datatype FLOAT
+attribute[1].collectiontype ARRAY
+attribute[1].removeifzero false
+attribute[1].createifnonexistent false
+attribute[1].fastsearch false
+attribute[1].huge false
+attribute[1].sortascending true
+attribute[1].sortfunction UCA
+attribute[1].sortstrength PRIMARY
+attribute[1].sortlocale ""
+attribute[1].enablebitvectors false
+attribute[1].enableonlybitvector false
+attribute[1].fastaccess false
+attribute[1].arity 8
+attribute[1].lowerbound -9223372036854775808
+attribute[1].upperbound 9223372036854775807
+attribute[1].densepostinglistthreshold 0.4
+attribute[1].tensortype ""
+attribute[2].name "fleeting2"
+attribute[2].datatype FLOAT
+attribute[2].collectiontype SINGLE
+attribute[2].removeifzero false
+attribute[2].createifnonexistent false
+attribute[2].fastsearch false
+attribute[2].huge false
+attribute[2].sortascending true
+attribute[2].sortfunction UCA
+attribute[2].sortstrength PRIMARY
+attribute[2].sortlocale ""
+attribute[2].enablebitvectors false
+attribute[2].enableonlybitvector false
+attribute[2].fastaccess false
+attribute[2].arity 8
+attribute[2].lowerbound -9223372036854775808
+attribute[2].upperbound 9223372036854775807
+attribute[2].densepostinglistthreshold 0.4
+attribute[2].tensortype ""
+attribute[3].name "foundat"
+attribute[3].datatype INT64
+attribute[3].collectiontype SINGLE
+attribute[3].removeifzero false
+attribute[3].createifnonexistent false
+attribute[3].fastsearch false
+attribute[3].huge false
+attribute[3].sortascending true
+attribute[3].sortfunction UCA
+attribute[3].sortstrength PRIMARY
+attribute[3].sortlocale ""
+attribute[3].enablebitvectors false
+attribute[3].enableonlybitvector false
+attribute[3].fastaccess false
+attribute[3].arity 8
+attribute[3].lowerbound -9223372036854775808
+attribute[3].upperbound 9223372036854775807
+attribute[3].densepostinglistthreshold 0.4
+attribute[3].tensortype ""
+attribute[4].name "collapseby"
+attribute[4].datatype INT32
+attribute[4].collectiontype SINGLE
+attribute[4].removeifzero false
+attribute[4].createifnonexistent false
+attribute[4].fastsearch false
+attribute[4].huge false
+attribute[4].sortascending true
+attribute[4].sortfunction UCA
+attribute[4].sortstrength PRIMARY
+attribute[4].sortlocale ""
+attribute[4].enablebitvectors false
+attribute[4].enableonlybitvector false
+attribute[4].fastaccess false
+attribute[4].arity 8
+attribute[4].lowerbound -9223372036854775808
+attribute[4].upperbound 9223372036854775807
+attribute[4].densepostinglistthreshold 0.4
+attribute[4].tensortype ""
+attribute[5].name "ts"
+attribute[5].datatype INT64
+attribute[5].collectiontype SINGLE
+attribute[5].removeifzero false
+attribute[5].createifnonexistent false
+attribute[5].fastsearch false
+attribute[5].huge false
+attribute[5].sortascending true
+attribute[5].sortfunction UCA
+attribute[5].sortstrength PRIMARY
+attribute[5].sortlocale ""
+attribute[5].enablebitvectors false
+attribute[5].enableonlybitvector false
+attribute[5].fastaccess false
+attribute[5].arity 8
+attribute[5].lowerbound -9223372036854775808
+attribute[5].upperbound 9223372036854775807
+attribute[5].densepostinglistthreshold 0.4
+attribute[5].tensortype ""
+attribute[6].name "combineda"
+attribute[6].datatype INT32
+attribute[6].collectiontype SINGLE
+attribute[6].removeifzero false
+attribute[6].createifnonexistent false
+attribute[6].fastsearch false
+attribute[6].huge false
+attribute[6].sortascending true
+attribute[6].sortfunction UCA
+attribute[6].sortstrength PRIMARY
+attribute[6].sortlocale ""
+attribute[6].enablebitvectors false
+attribute[6].enableonlybitvector false
+attribute[6].fastaccess false
+attribute[6].arity 8
+attribute[6].lowerbound -9223372036854775808
+attribute[6].upperbound 9223372036854775807
+attribute[6].densepostinglistthreshold 0.4
+attribute[6].tensortype ""
+attribute[7].name "year_arr"
+attribute[7].datatype INT32
+attribute[7].collectiontype ARRAY
+attribute[7].removeifzero false
+attribute[7].createifnonexistent false
+attribute[7].fastsearch false
+attribute[7].huge false
+attribute[7].sortascending true
+attribute[7].sortfunction UCA
+attribute[7].sortstrength PRIMARY
+attribute[7].sortlocale ""
+attribute[7].enablebitvectors false
+attribute[7].enableonlybitvector false
+attribute[7].fastaccess false
+attribute[7].arity 8
+attribute[7].lowerbound -9223372036854775808
+attribute[7].upperbound 9223372036854775807
+attribute[7].densepostinglistthreshold 0.4
+attribute[7].tensortype ""
+attribute[8].name "year_sub"
+attribute[8].datatype INT32
+attribute[8].collectiontype SINGLE
+attribute[8].removeifzero false
+attribute[8].createifnonexistent false
+attribute[8].fastsearch false
+attribute[8].huge false
+attribute[8].sortascending true
+attribute[8].sortfunction UCA
+attribute[8].sortstrength PRIMARY
+attribute[8].sortlocale ""
+attribute[8].enablebitvectors false
+attribute[8].enableonlybitvector false
+attribute[8].fastaccess false
+attribute[8].arity 8
+attribute[8].lowerbound -9223372036854775808
+attribute[8].upperbound 9223372036854775807
+attribute[8].densepostinglistthreshold 0.4
+attribute[8].tensortype "" \ No newline at end of file
diff --git a/config-model/src/test/derived/complex/complex.sd b/config-model/src/test/derived/complex/complex.sd
new file mode 100644
index 00000000000..6dcce8689f8
--- /dev/null
+++ b/config-model/src/test/derived/complex/complex.sd
@@ -0,0 +1,150 @@
+# Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+search complex {
+
+ document complex {
+
+ field title type string {
+ indexing: index | summary
+ index default: prefix
+ rank-type: about
+ query-command: some-custom-command # Some command handled in a qustom searcher
+ query-command: some-other
+ alias default: some.default
+ alias: titlez
+ match: token
+ }
+
+ field location type string {
+
+ }
+
+ field dyntitle type string {
+ indexing: summary
+ summary: dynamic
+ }
+
+ field special1 type string {
+ indexing: index
+ stemming: none
+ }
+
+ field special2 type string {
+ indexing: index
+ stemming: none
+ }
+
+ field special3 type string {
+ indexing: index
+ stemming: none
+ }
+
+ field prefixenabled type string {
+ indexing: index | attribute
+ index: prefix
+ attribute: prefetch
+ attribute: huge
+ normalizing: none
+ stemming: shortest
+ }
+
+ field source type uri {
+ indexing: summary | index
+ }
+
+ field docurl type uri {
+ indexing: index
+ alias docurl: url
+ }
+
+ field fleeting type array<float> {
+ indexing: index | attribute
+ attribute: prefetch
+ }
+
+ field fleeting2 type float {
+ indexing: index | attribute
+ attribute: prefetch
+ }
+
+ field foundat type long {
+ indexing: index
+ }
+
+ field collapseby type int {
+ indexing: index
+ }
+
+ field yEaR type int {
+
+ }
+
+ field stringfield type string {
+ indexing: summary | index
+ }
+
+ field exactemento type string {
+ indexing: index
+ }
+
+ field exactagain type string {
+ indexing: index
+ }
+
+ field ts type long {
+ indexing: attribute
+ }
+
+ field combineda type int {
+ indexing: index
+ }
+
+ field combinedb type string {
+ indexing: index
+ }
+
+ field category type string {
+
+ }
+
+ }
+
+ field woe type string {
+ indexing: input location | summary | index
+ }
+
+ field year_sub type int {
+ indexing: input yEaR - 1900 | attribute year_sub
+ }
+
+ field year_arr type array<int> {
+ indexing: input yEaR | to_array | attribute
+ }
+
+ # A field defined outside an index
+ field exact type string {
+ indexing {
+ input title . input category | summary | index;
+ }
+ stemming: none
+ normalizing: none
+ rank-type: identity
+ }
+
+ # Some experimental ranking changes
+ rank-profile experimental inherits default {
+ }
+
+ rank-profile other inherits experimental {
+ rank-type source: identity
+ }
+ fieldset default {
+ fields: title, stringfield
+ }
+ fieldset special {
+ fields: special1, special2, special3
+ }
+ fieldset all {
+ fields: combineda, combinedb
+ }
+
+}
diff --git a/config-model/src/test/derived/complex/documentmanager.cfg b/config-model/src/test/derived/complex/documentmanager.cfg
new file mode 100644
index 00000000000..66ebbbb2846
--- /dev/null
+++ b/config-model/src/test/derived/complex/documentmanager.cfg
@@ -0,0 +1,119 @@
+enablecompression false
+datatype[0].id 1381038251
+datatype[0].structtype[0].name "position"
+datatype[0].structtype[0].version 0
+datatype[0].structtype[0].compresstype NONE
+datatype[0].structtype[0].compresslevel 0
+datatype[0].structtype[0].compressthreshold 95
+datatype[0].structtype[0].compressminsize 800
+datatype[0].structtype[0].field[0].name "x"
+datatype[0].structtype[0].field[0].datatype 0
+datatype[0].structtype[0].field[1].name "y"
+datatype[0].structtype[0].field[1].datatype 0
+datatype[1].id 1650586661
+datatype[1].arraytype[0].datatype 1
+datatype[2].id -1245117006
+datatype[2].arraytype[0].datatype 0
+datatype[3].id -1749463923
+datatype[3].structtype[0].name "complex.header"
+datatype[3].structtype[0].version 0
+datatype[3].structtype[0].compresstype NONE
+datatype[3].structtype[0].compresslevel 0
+datatype[3].structtype[0].compressthreshold 95
+datatype[3].structtype[0].compressminsize 800
+datatype[3].structtype[0].field[0].name "title"
+datatype[3].structtype[0].field[0].datatype 2
+datatype[3].structtype[0].field[1].name "location"
+datatype[3].structtype[0].field[1].datatype 2
+datatype[3].structtype[0].field[2].name "dyntitle"
+datatype[3].structtype[0].field[2].datatype 2
+datatype[3].structtype[0].field[3].name "special1"
+datatype[3].structtype[0].field[3].datatype 2
+datatype[3].structtype[0].field[4].name "special2"
+datatype[3].structtype[0].field[4].datatype 2
+datatype[3].structtype[0].field[5].name "special3"
+datatype[3].structtype[0].field[5].datatype 2
+datatype[3].structtype[0].field[6].name "prefixenabled"
+datatype[3].structtype[0].field[6].datatype 2
+datatype[3].structtype[0].field[7].name "source"
+datatype[3].structtype[0].field[7].datatype 10
+datatype[3].structtype[0].field[8].name "docurl"
+datatype[3].structtype[0].field[8].datatype 10
+datatype[3].structtype[0].field[9].name "fleeting"
+datatype[3].structtype[0].field[9].datatype 1650586661
+datatype[3].structtype[0].field[10].name "fleeting2"
+datatype[3].structtype[0].field[10].datatype 1
+datatype[3].structtype[0].field[11].name "foundat"
+datatype[3].structtype[0].field[11].datatype 4
+datatype[3].structtype[0].field[12].name "collapseby"
+datatype[3].structtype[0].field[12].datatype 0
+datatype[3].structtype[0].field[13].name "yEaR"
+datatype[3].structtype[0].field[13].datatype 0
+datatype[3].structtype[0].field[14].name "stringfield"
+datatype[3].structtype[0].field[14].datatype 2
+datatype[3].structtype[0].field[15].name "exactemento"
+datatype[3].structtype[0].field[15].datatype 2
+datatype[3].structtype[0].field[16].name "exactagain"
+datatype[3].structtype[0].field[16].datatype 2
+datatype[3].structtype[0].field[17].name "ts"
+datatype[3].structtype[0].field[17].datatype 4
+datatype[3].structtype[0].field[18].name "combineda"
+datatype[3].structtype[0].field[18].datatype 0
+datatype[3].structtype[0].field[19].name "combinedb"
+datatype[3].structtype[0].field[19].datatype 2
+datatype[3].structtype[0].field[20].name "category"
+datatype[3].structtype[0].field[20].datatype 2
+datatype[3].structtype[0].field[21].name "woe"
+datatype[3].structtype[0].field[21].datatype 2
+datatype[3].structtype[0].field[22].name "year_sub"
+datatype[3].structtype[0].field[22].datatype 0
+datatype[3].structtype[0].field[23].name "year_arr"
+datatype[3].structtype[0].field[23].datatype -1245117006
+datatype[3].structtype[0].field[24].name "exact"
+datatype[3].structtype[0].field[24].datatype 2
+datatype[3].structtype[0].field[25].name "rankfeatures"
+datatype[3].structtype[0].field[25].datatype 2
+datatype[3].structtype[0].field[26].name "summaryfeatures"
+datatype[3].structtype[0].field[26].datatype 2
+datatype[4].id -1665926686
+datatype[4].structtype[0].name "complex.body"
+datatype[4].structtype[0].version 0
+datatype[4].structtype[0].compresstype NONE
+datatype[4].structtype[0].compresslevel 0
+datatype[4].structtype[0].compressthreshold 95
+datatype[4].structtype[0].compressminsize 800
+datatype[5].id -1402929550
+datatype[5].documenttype[0].name "complex"
+datatype[5].documenttype[0].version 0
+datatype[5].documenttype[0].inherits[0].name "document"
+datatype[5].documenttype[0].inherits[0].version 0
+datatype[5].documenttype[0].headerstruct -1749463923
+datatype[5].documenttype[0].bodystruct -1665926686
+datatype[5].documenttype[0].fieldsets{default}.fields[0] "stringfield"
+datatype[5].documenttype[0].fieldsets{default}.fields[1] "title"
+datatype[5].documenttype[0].fieldsets{special}.fields[0] "special1"
+datatype[5].documenttype[0].fieldsets{special}.fields[1] "special2"
+datatype[5].documenttype[0].fieldsets{special}.fields[2] "special3"
+datatype[5].documenttype[0].fieldsets{all}.fields[0] "combineda"
+datatype[5].documenttype[0].fieldsets{all}.fields[1] "combinedb"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[0] "category"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[1] "collapseby"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[2] "combineda"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[3] "combinedb"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[4] "docurl"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[5] "dyntitle"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[6] "exactagain"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[7] "exactemento"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[8] "fleeting"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[9] "fleeting2"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[10] "foundat"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[11] "location"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[12] "prefixenabled"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[13] "source"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[14] "special1"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[15] "special2"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[16] "special3"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[17] "stringfield"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[18] "title"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[19] "ts"
+datatype[5].documenttype[0].fieldsets{[document]}.fields[20] "yEaR"
diff --git a/config-model/src/test/derived/complex/ilscripts.cfg b/config-model/src/test/derived/complex/ilscripts.cfg
new file mode 100644
index 00000000000..05de728e16e
--- /dev/null
+++ b/config-model/src/test/derived/complex/ilscripts.cfg
@@ -0,0 +1,48 @@
+maxtermoccurrences 100
+ilscript[0].doctype "complex"
+ilscript[0].docfield[0] "title"
+ilscript[0].docfield[1] "location"
+ilscript[0].docfield[2] "dyntitle"
+ilscript[0].docfield[3] "special1"
+ilscript[0].docfield[4] "special2"
+ilscript[0].docfield[5] "special3"
+ilscript[0].docfield[6] "prefixenabled"
+ilscript[0].docfield[7] "source"
+ilscript[0].docfield[8] "docurl"
+ilscript[0].docfield[9] "fleeting"
+ilscript[0].docfield[10] "fleeting2"
+ilscript[0].docfield[11] "foundat"
+ilscript[0].docfield[12] "collapseby"
+ilscript[0].docfield[13] "yEaR"
+ilscript[0].docfield[14] "stringfield"
+ilscript[0].docfield[15] "exactemento"
+ilscript[0].docfield[16] "exactagain"
+ilscript[0].docfield[17] "ts"
+ilscript[0].docfield[18] "combineda"
+ilscript[0].docfield[19] "combinedb"
+ilscript[0].docfield[20] "category"
+ilscript[0].content[0] "clear_state | guard { input title . input category | tokenize | summary exact | index exact; }"
+ilscript[0].content[1] "clear_state | guard { input location | tokenize normalize stem:\"SHORTEST\" | summary woe | index woe; }"
+ilscript[0].content[2] "clear_state | guard { input yEaR | to_array | attribute year_arr; }"
+ilscript[0].content[3] "clear_state | guard { input yEaR - 1900 | attribute year_sub; }"
+ilscript[0].content[4] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | index title | summary title; }"
+ilscript[0].content[5] "clear_state | guard { input dyntitle | tokenize normalize stem:\"SHORTEST\" | summary dyntitle; }"
+ilscript[0].content[6] "clear_state | guard { input special1 | tokenize normalize | index special1; }"
+ilscript[0].content[7] "clear_state | guard { input special2 | tokenize normalize | index special2; }"
+ilscript[0].content[8] "clear_state | guard { input special3 | tokenize normalize | index special3; }"
+ilscript[0].content[9] "clear_state | guard { input prefixenabled | tokenize stem:\"SHORTEST\" | index prefixenabled | attribute prefixenabled; }"
+ilscript[0].content[10] "clear_state | guard { input source | summary source | index source; }"
+ilscript[0].content[11] "clear_state | guard { input docurl | index docurl; }"
+ilscript[0].content[12] "clear_state | guard { input fleeting | attribute fleeting; }"
+ilscript[0].content[13] "clear_state | guard { input fleeting2 | attribute fleeting2; }"
+ilscript[0].content[14] "clear_state | guard { input foundat | attribute foundat; }"
+ilscript[0].content[15] "clear_state | guard { input collapseby | attribute collapseby; }"
+ilscript[0].content[16] "clear_state | guard { input stringfield | tokenize normalize stem:\"SHORTEST\" | summary stringfield | index stringfield; }"
+ilscript[0].content[17] "clear_state | guard { input exactemento | tokenize normalize stem:\"SHORTEST\" | index exactemento; }"
+ilscript[0].content[18] "clear_state | guard { input exactagain | tokenize normalize stem:\"SHORTEST\" | index exactagain; }"
+ilscript[0].content[19] "clear_state | guard { input ts | attribute ts; }"
+ilscript[0].content[20] "clear_state | guard { input combineda | attribute combineda; }"
+ilscript[0].content[21] "clear_state | guard { input combinedb | tokenize normalize stem:\"SHORTEST\" | index combinedb; }"
+ilscript[0].content[22] "input category | passthrough category"
+ilscript[0].content[23] "input location | passthrough location"
+ilscript[0].content[24] "input yEaR | passthrough yEaR" \ No newline at end of file
diff --git a/config-model/src/test/derived/complex/rank-profiles.cfg b/config-model/src/test/derived/complex/rank-profiles.cfg
new file mode 100644
index 00000000000..5e2804d0ee6
--- /dev/null
+++ b/config-model/src/test/derived/complex/rank-profiles.cfg
@@ -0,0 +1,68 @@
+rankprofile[0].name "default"
+rankprofile[0].fef.property[0].name "nativeFieldMatch.firstOccurrenceTable.exact"
+rankprofile[0].fef.property[0].value "expdecay(100,12.50)"
+rankprofile[0].fef.property[1].name "nativeFieldMatch.occurrenceCountTable.exact"
+rankprofile[0].fef.property[1].value "loggrowth(1500,4000,19)"
+rankprofile[0].fef.property[2].name "nativeProximity.proximityTable.exact"
+rankprofile[0].fef.property[2].value "expdecay(5000,3)"
+rankprofile[0].fef.property[3].name "nativeProximity.reverseProximityTable.exact"
+rankprofile[0].fef.property[3].value "expdecay(3000,3)"
+rankprofile[0].fef.property[4].name "nativeFieldMatch.firstOccurrenceTable.title"
+rankprofile[0].fef.property[4].value "expdecay(8000,12.50)"
+rankprofile[0].fef.property[5].name "nativeFieldMatch.occurrenceCountTable.title"
+rankprofile[0].fef.property[5].value "loggrowth(1500,4000,19)"
+rankprofile[0].fef.property[6].name "nativeProximity.proximityTable.title"
+rankprofile[0].fef.property[6].value "expdecay(500,3)"
+rankprofile[0].fef.property[7].name "nativeProximity.reverseProximityTable.title"
+rankprofile[0].fef.property[7].value "expdecay(400,3)"
+rankprofile[1].name "unranked"
+rankprofile[1].fef.property[0].name "vespa.rank.firstphase"
+rankprofile[1].fef.property[0].value "value(0)"
+rankprofile[1].fef.property[1].name "vespa.hitcollector.heapsize"
+rankprofile[1].fef.property[1].value "0"
+rankprofile[1].fef.property[2].name "vespa.hitcollector.arraysize"
+rankprofile[1].fef.property[2].value "0"
+rankprofile[1].fef.property[3].name "vespa.dump.ignoredefaultfeatures"
+rankprofile[1].fef.property[3].value "true"
+rankprofile[2].name "experimental"
+rankprofile[2].fef.property[0].name "nativeFieldMatch.firstOccurrenceTable.exact"
+rankprofile[2].fef.property[0].value "expdecay(100,12.50)"
+rankprofile[2].fef.property[1].name "nativeFieldMatch.occurrenceCountTable.exact"
+rankprofile[2].fef.property[1].value "loggrowth(1500,4000,19)"
+rankprofile[2].fef.property[2].name "nativeProximity.proximityTable.exact"
+rankprofile[2].fef.property[2].value "expdecay(5000,3)"
+rankprofile[2].fef.property[3].name "nativeProximity.reverseProximityTable.exact"
+rankprofile[2].fef.property[3].value "expdecay(3000,3)"
+rankprofile[2].fef.property[4].name "nativeFieldMatch.firstOccurrenceTable.title"
+rankprofile[2].fef.property[4].value "expdecay(8000,12.50)"
+rankprofile[2].fef.property[5].name "nativeFieldMatch.occurrenceCountTable.title"
+rankprofile[2].fef.property[5].value "loggrowth(1500,4000,19)"
+rankprofile[2].fef.property[6].name "nativeProximity.proximityTable.title"
+rankprofile[2].fef.property[6].value "expdecay(500,3)"
+rankprofile[2].fef.property[7].name "nativeProximity.reverseProximityTable.title"
+rankprofile[2].fef.property[7].value "expdecay(400,3)"
+rankprofile[3].name "other"
+rankprofile[3].fef.property[0].name "nativeFieldMatch.firstOccurrenceTable.source"
+rankprofile[3].fef.property[0].value "expdecay(100,12.50)"
+rankprofile[3].fef.property[1].name "nativeFieldMatch.occurrenceCountTable.source"
+rankprofile[3].fef.property[1].value "loggrowth(1500,4000,19)"
+rankprofile[3].fef.property[2].name "nativeProximity.proximityTable.source"
+rankprofile[3].fef.property[2].value "expdecay(5000,3)"
+rankprofile[3].fef.property[3].name "nativeProximity.reverseProximityTable.source"
+rankprofile[3].fef.property[3].value "expdecay(3000,3)"
+rankprofile[3].fef.property[4].name "nativeFieldMatch.firstOccurrenceTable.exact"
+rankprofile[3].fef.property[4].value "expdecay(100,12.50)"
+rankprofile[3].fef.property[5].name "nativeFieldMatch.occurrenceCountTable.exact"
+rankprofile[3].fef.property[5].value "loggrowth(1500,4000,19)"
+rankprofile[3].fef.property[6].name "nativeProximity.proximityTable.exact"
+rankprofile[3].fef.property[6].value "expdecay(5000,3)"
+rankprofile[3].fef.property[7].name "nativeProximity.reverseProximityTable.exact"
+rankprofile[3].fef.property[7].value "expdecay(3000,3)"
+rankprofile[3].fef.property[8].name "nativeFieldMatch.firstOccurrenceTable.title"
+rankprofile[3].fef.property[8].value "expdecay(8000,12.50)"
+rankprofile[3].fef.property[9].name "nativeFieldMatch.occurrenceCountTable.title"
+rankprofile[3].fef.property[9].value "loggrowth(1500,4000,19)"
+rankprofile[3].fef.property[10].name "nativeProximity.proximityTable.title"
+rankprofile[3].fef.property[10].value "expdecay(500,3)"
+rankprofile[3].fef.property[11].name "nativeProximity.reverseProximityTable.title"
+rankprofile[3].fef.property[11].value "expdecay(400,3)"
diff --git a/config-model/src/test/derived/complex/summary.cfg b/config-model/src/test/derived/complex/summary.cfg
new file mode 100644
index 00000000000..1cf6ad457b3
--- /dev/null
+++ b/config-model/src/test/derived/complex/summary.cfg
@@ -0,0 +1,43 @@
+defaultsummaryid 1506848752
+classes[0].id 1506848752
+classes[0].name "default"
+classes[0].fields[0].name "woe"
+classes[0].fields[0].type "longstring"
+classes[0].fields[1].name "exact"
+classes[0].fields[1].type "longstring"
+classes[0].fields[2].name "title"
+classes[0].fields[2].type "longstring"
+classes[0].fields[3].name "dyntitle"
+classes[0].fields[3].type "longstring"
+classes[0].fields[4].name "source"
+classes[0].fields[4].type "longstring"
+classes[0].fields[5].name "stringfield"
+classes[0].fields[5].type "longstring"
+classes[0].fields[6].name "rankfeatures"
+classes[0].fields[6].type "featuredata"
+classes[0].fields[7].name "summaryfeatures"
+classes[0].fields[7].type "featuredata"
+classes[0].fields[8].name "documentid"
+classes[0].fields[8].type "longstring"
+classes[1].id 28214929
+classes[1].name "attributeprefetch"
+classes[1].fields[0].name "year_sub"
+classes[1].fields[0].type "integer"
+classes[1].fields[1].name "prefixenabled"
+classes[1].fields[1].type "longstring"
+classes[1].fields[2].name "fleeting"
+classes[1].fields[2].type "jsonstring"
+classes[1].fields[3].name "fleeting2"
+classes[1].fields[3].type "float"
+classes[1].fields[4].name "foundat"
+classes[1].fields[4].type "int64"
+classes[1].fields[5].name "collapseby"
+classes[1].fields[5].type "integer"
+classes[1].fields[6].name "ts"
+classes[1].fields[6].type "int64"
+classes[1].fields[7].name "combineda"
+classes[1].fields[7].type "integer"
+classes[1].fields[8].name "rankfeatures"
+classes[1].fields[8].type "featuredata"
+classes[1].fields[9].name "summaryfeatures"
+classes[1].fields[9].type "featuredata" \ No newline at end of file
diff --git a/config-model/src/test/derived/complex/summarymap.cfg b/config-model/src/test/derived/complex/summarymap.cfg
new file mode 100644
index 00000000000..37721347b1c
--- /dev/null
+++ b/config-model/src/test/derived/complex/summarymap.cfg
@@ -0,0 +1,34 @@
+defaultoutputclass -1
+override[0].field "dyntitle"
+override[0].command "dynamicteaser"
+override[0].arguments "dyntitle"
+override[1].field "rankfeatures"
+override[1].command "rankfeatures"
+override[1].arguments ""
+override[2].field "summaryfeatures"
+override[2].command "summaryfeatures"
+override[2].arguments ""
+override[3].field "year_sub"
+override[3].command "attribute"
+override[3].arguments "year_sub"
+override[4].field "prefixenabled"
+override[4].command "attribute"
+override[4].arguments "prefixenabled"
+override[5].field "fleeting"
+override[5].command "attribute"
+override[5].arguments "fleeting"
+override[6].field "fleeting2"
+override[6].command "attribute"
+override[6].arguments "fleeting2"
+override[7].field "foundat"
+override[7].command "attribute"
+override[7].arguments "foundat"
+override[8].field "collapseby"
+override[8].command "attribute"
+override[8].arguments "collapseby"
+override[9].field "ts"
+override[9].command "attribute"
+override[9].arguments "ts"
+override[10].field "combineda"
+override[10].command "attribute"
+override[10].arguments "combineda" \ No newline at end of file