summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2022-03-17 14:49:03 +0000
committerArne H Juul <arnej@yahooinc.com>2022-03-17 14:49:06 +0000
commitf0194fdde045012da135e16e2df8b8beb367f52f (patch)
tree8351ef2a0fede27384ed919007163d040253b58f /config-model
parent5083f5800147aface5fa9918ffbb222eb297410c (diff)
remove array indexes
* from config files in src/test/derived directories * for easier diff * add script for stripping these indexes
Diffstat (limited to 'config-model')
-rwxr-xr-xconfig-model/remove-indexes-from-temp-files.sh3
-rw-r--r--config-model/src/test/derived/attributeprefetch/summarymap.cfg48
-rw-r--r--config-model/src/test/derived/complex/summarymap.cfg60
-rw-r--r--config-model/src/test/derived/declstruct/documentmanager.cfg174
-rw-r--r--config-model/src/test/derived/imported_fields_inherited_reference/documenttypes.cfg13
-rw-r--r--config-model/src/test/derived/imported_position_field/imported-fields.cfg6
-rw-r--r--config-model/src/test/derived/imported_position_field/summarymap.cfg12
-rw-r--r--config-model/src/test/derived/imported_struct_fields/imported-fields.cfg42
-rw-r--r--config-model/src/test/derived/imported_struct_fields/summarymap.cfg48
-rw-r--r--config-model/src/test/derived/indexschema/index-info.cfg4
-rw-r--r--config-model/src/test/derived/inheritance/documentmanager.cfg208
-rw-r--r--config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg136
-rw-r--r--config-model/src/test/derived/inheritfromparent/documentmanager.cfg138
-rw-r--r--config-model/src/test/derived/inheritfromparent/documenttypes.cfg34
-rw-r--r--config-model/src/test/derived/inheritstruct/index-info.cfg102
-rw-r--r--config-model/src/test/derived/renamedfeatures/rank-profiles.cfg164
-rw-r--r--config-model/src/test/derived/schemainheritance/summarymap.cfg6
-rw-r--r--config-model/src/test/derived/schemainheritance/vsmsummary.cfg6
-rw-r--r--config-model/src/test/derived/structinheritance/documenttypes.cfg200
-rw-r--r--config-model/src/test/derived/tensor/rank-profiles.cfg1
20 files changed, 703 insertions, 702 deletions
diff --git a/config-model/remove-indexes-from-temp-files.sh b/config-model/remove-indexes-from-temp-files.sh
new file mode 100755
index 00000000000..41feb65d3f0
--- /dev/null
+++ b/config-model/remove-indexes-from-temp-files.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+perl -pi -e 's{[[][0-9]*[]][.]}{[].}g;s{[[][0-9]*[]] }{[] }' temp/*/*.cfg
diff --git a/config-model/src/test/derived/attributeprefetch/summarymap.cfg b/config-model/src/test/derived/attributeprefetch/summarymap.cfg
index 28bc686a266..2e4bec651e7 100644
--- a/config-model/src/test/derived/attributeprefetch/summarymap.cfg
+++ b/config-model/src/test/derived/attributeprefetch/summarymap.cfg
@@ -1,25 +1,25 @@
defaultoutputclass -1
-override[0].field "rankfeatures"
-override[0].command "rankfeatures"
-override[0].arguments ""
-override[1].field "summaryfeatures"
-override[1].command "summaryfeatures"
-override[1].arguments ""
-override[2].field "singlebyte"
-override[2].command "attribute"
-override[2].arguments "singlebyte"
-override[3].field "singleint"
-override[3].command "attribute"
-override[3].arguments "singleint"
-override[4].field "singlelong"
-override[4].command "attribute"
-override[4].arguments "singlelong"
-override[5].field "singlefloat"
-override[5].command "attribute"
-override[5].arguments "singlefloat"
-override[6].field "singledouble"
-override[6].command "attribute"
-override[6].arguments "singledouble"
-override[7].field "singlestring"
-override[7].command "attribute"
-override[7].arguments "singlestring" \ No newline at end of file
+override[].field "rankfeatures"
+override[].command "rankfeatures"
+override[].arguments ""
+override[].field "summaryfeatures"
+override[].command "summaryfeatures"
+override[].arguments ""
+override[].field "singlebyte"
+override[].command "attribute"
+override[].arguments "singlebyte"
+override[].field "singleint"
+override[].command "attribute"
+override[].arguments "singleint"
+override[].field "singlelong"
+override[].command "attribute"
+override[].arguments "singlelong"
+override[].field "singlefloat"
+override[].command "attribute"
+override[].arguments "singlefloat"
+override[].field "singledouble"
+override[].command "attribute"
+override[].arguments "singledouble"
+override[].field "singlestring"
+override[].command "attribute"
+override[].arguments "singlestring"
diff --git a/config-model/src/test/derived/complex/summarymap.cfg b/config-model/src/test/derived/complex/summarymap.cfg
index f7ad249ae86..6f65e7d3bc3 100644
--- a/config-model/src/test/derived/complex/summarymap.cfg
+++ b/config-model/src/test/derived/complex/summarymap.cfg
@@ -1,31 +1,31 @@
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 "fleeting2"
-override[5].command "attribute"
-override[5].arguments "fleeting2"
-override[6].field "foundat"
-override[6].command "attribute"
-override[6].arguments "foundat"
-override[7].field "collapseby"
-override[7].command "attribute"
-override[7].arguments "collapseby"
-override[8].field "ts"
-override[8].command "attribute"
-override[8].arguments "ts"
-override[9].field "combineda"
-override[9].command "attribute"
-override[9].arguments "combineda" \ No newline at end of file
+override[].field "dyntitle"
+override[].command "dynamicteaser"
+override[].arguments "dyntitle"
+override[].field "rankfeatures"
+override[].command "rankfeatures"
+override[].arguments ""
+override[].field "summaryfeatures"
+override[].command "summaryfeatures"
+override[].arguments ""
+override[].field "year_sub"
+override[].command "attribute"
+override[].arguments "year_sub"
+override[].field "prefixenabled"
+override[].command "attribute"
+override[].arguments "prefixenabled"
+override[].field "fleeting2"
+override[].command "attribute"
+override[].arguments "fleeting2"
+override[].field "foundat"
+override[].command "attribute"
+override[].arguments "foundat"
+override[].field "collapseby"
+override[].command "attribute"
+override[].arguments "collapseby"
+override[].field "ts"
+override[].command "attribute"
+override[].arguments "ts"
+override[].field "combineda"
+override[].command "attribute"
+override[].arguments "combineda"
diff --git a/config-model/src/test/derived/declstruct/documentmanager.cfg b/config-model/src/test/derived/declstruct/documentmanager.cfg
index d9c48ddc42f..0286af0eade 100644
--- a/config-model/src/test/derived/declstruct/documentmanager.cfg
+++ b/config-model/src/test/derived/declstruct/documentmanager.cfg
@@ -1,89 +1,89 @@
enablecompression false
usev8geopositions false
-doctype[0].name "document"
-doctype[0].idx 10000
-doctype[0].contentstruct 10001
-doctype[0].primitivetype[0].idx 10002
-doctype[0].primitivetype[0].name "bool"
-doctype[0].primitivetype[1].idx 10003
-doctype[0].primitivetype[1].name "byte"
-doctype[0].primitivetype[2].idx 10004
-doctype[0].primitivetype[2].name "double"
-doctype[0].primitivetype[3].idx 10005
-doctype[0].primitivetype[3].name "float"
-doctype[0].primitivetype[4].idx 10006
-doctype[0].primitivetype[4].name "float16"
-doctype[0].primitivetype[5].idx 10007
-doctype[0].primitivetype[5].name "int"
-doctype[0].primitivetype[6].idx 10008
-doctype[0].primitivetype[6].name "long"
-doctype[0].primitivetype[7].idx 10010
-doctype[0].primitivetype[7].name "predicate"
-doctype[0].primitivetype[8].idx 10011
-doctype[0].primitivetype[8].name "raw"
-doctype[0].primitivetype[9].idx 10012
-doctype[0].primitivetype[9].name "string"
-doctype[0].primitivetype[10].idx 10014
-doctype[0].primitivetype[10].name "uri"
-doctype[0].wsettype[0].idx 10013
-doctype[0].wsettype[0].elementtype 10012
-doctype[0].wsettype[0].createifnonexistent true
-doctype[0].wsettype[0].removeifzero true
-doctype[0].structtype[0].idx 10001
-doctype[0].structtype[0].name "document.header"
-doctype[0].structtype[1].idx 10009
-doctype[0].structtype[1].name "position"
-doctype[0].structtype[1].field[0].name "x"
-doctype[0].structtype[1].field[0].internalid 914677694
-doctype[0].structtype[1].field[0].type 10007
-doctype[0].structtype[1].field[1].name "y"
-doctype[0].structtype[1].field[1].internalid 900009410
-doctype[0].structtype[1].field[1].type 10007
-doctype[1].name "common"
-doctype[1].idx 10015
-doctype[1].inherits[0].idx 10000
-doctype[1].contentstruct 10016
-doctype[1].structtype[0].idx 10016
-doctype[1].structtype[0].name "common.header"
-doctype[1].structtype[1].idx 10017
-doctype[1].structtype[1].name "mystruct"
-doctype[1].structtype[1].field[0].name "f0"
-doctype[1].structtype[1].field[0].internalid 111558427
-doctype[1].structtype[1].field[0].type 10012
-doctype[2].name "foo"
-doctype[2].idx 10018
-doctype[2].inherits[0].idx 10000
-doctype[2].inherits[1].idx 10015
-doctype[2].contentstruct 10019
-doctype[2].structtype[0].idx 10019
-doctype[2].structtype[0].name "foo.header"
-doctype[2].structtype[1].idx 10020
-doctype[2].structtype[1].name "mystructinfoo"
-doctype[2].structtype[1].field[0].name "f1"
-doctype[2].structtype[1].field[0].internalid 1911889118
-doctype[2].structtype[1].field[0].type 10012
-doctype[3].name "bar"
-doctype[3].idx 10021
-doctype[3].inherits[0].idx 10000
-doctype[3].inherits[1].idx 10015
-doctype[3].contentstruct 10022
-doctype[3].structtype[0].idx 10022
-doctype[3].structtype[0].name "bar.header"
-doctype[3].structtype[1].idx 10023
-doctype[3].structtype[1].name "mystructinbar"
-doctype[3].structtype[1].field[0].name "f2"
-doctype[3].structtype[1].field[0].internalid 84639357
-doctype[3].structtype[1].field[0].type 10012
-doctype[4].name "foobar"
-doctype[4].idx 10024
-doctype[4].inherits[0].idx 10000
-doctype[4].inherits[1].idx 10018
-doctype[4].inherits[2].idx 10021
-doctype[4].contentstruct 10025
-doctype[4].structtype[0].idx 10025
-doctype[4].structtype[0].name "foobar.header"
-doctype[4].structtype[1].idx 10026
-doctype[4].structtype[1].name "mystructinfoobar"
-doctype[4].structtype[1].field[0].name "f3"
-doctype[4].structtype[1].field[0].internalid 63940691
-doctype[4].structtype[1].field[0].type 10012
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "common"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "common.header"
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "mystruct"
+doctype[].structtype[].field[].name "f0"
+doctype[].structtype[].field[].internalid 111558427
+doctype[].structtype[].field[].type 10012
+doctype[].name "foo"
+doctype[].idx 10018
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10015
+doctype[].contentstruct 10019
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "foo.header"
+doctype[].structtype[].idx 10020
+doctype[].structtype[].name "mystructinfoo"
+doctype[].structtype[].field[].name "f1"
+doctype[].structtype[].field[].internalid 1911889118
+doctype[].structtype[].field[].type 10012
+doctype[].name "bar"
+doctype[].idx 10021
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10015
+doctype[].contentstruct 10022
+doctype[].structtype[].idx 10022
+doctype[].structtype[].name "bar.header"
+doctype[].structtype[].idx 10023
+doctype[].structtype[].name "mystructinbar"
+doctype[].structtype[].field[].name "f2"
+doctype[].structtype[].field[].internalid 84639357
+doctype[].structtype[].field[].type 10012
+doctype[].name "foobar"
+doctype[].idx 10024
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10018
+doctype[].inherits[].idx 10021
+doctype[].contentstruct 10025
+doctype[].structtype[].idx 10025
+doctype[].structtype[].name "foobar.header"
+doctype[].structtype[].idx 10026
+doctype[].structtype[].name "mystructinfoobar"
+doctype[].structtype[].field[].name "f3"
+doctype[].structtype[].field[].internalid 63940691
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/imported_fields_inherited_reference/documenttypes.cfg b/config-model/src/test/derived/imported_fields_inherited_reference/documenttypes.cfg
index 311c85a6bb1..c3ea1318d33 100644
--- a/config-model/src/test/derived/imported_fields_inherited_reference/documenttypes.cfg
+++ b/config-model/src/test/derived/imported_fields_inherited_reference/documenttypes.cfg
@@ -25,7 +25,7 @@ documenttype[].datatype[].sstruct.field[].name "ref_from_a"
documenttype[].datatype[].sstruct.field[].id 300427062
documenttype[].datatype[].sstruct.field[].datatype 427398467
documenttype[].datatype[].sstruct.field[].detailedtype ""
-documenttype[].fieldsets{[]}.fields[] "ref_from_a"
+documenttype[].fieldsets{[document]}.fields[] "ref_from_a"
documenttype[].referencetype[].id 427398467
documenttype[].referencetype[].target_type_id 1175161836
documenttype[].id -94852095
@@ -54,8 +54,8 @@ documenttype[].datatype[].sstruct.field[].name "ref_from_b"
documenttype[].datatype[].sstruct.field[].id 185778735
documenttype[].datatype[].sstruct.field[].datatype 427398467
documenttype[].datatype[].sstruct.field[].detailedtype ""
-documenttype[].fieldsets{[]}.fields[] "ref_from_a"
-documenttype[].fieldsets{[]}.fields[] "ref_from_b"
+documenttype[].fieldsets{[document]}.fields[] "ref_from_a"
+documenttype[].fieldsets{[document]}.fields[] "ref_from_b"
documenttype[].id -94851134
documenttype[].name "child_c"
documenttype[].version 0
@@ -78,8 +78,8 @@ documenttype[].datatype[].sstruct.compression.type NONE
documenttype[].datatype[].sstruct.compression.level 0
documenttype[].datatype[].sstruct.compression.threshold 95
documenttype[].datatype[].sstruct.compression.minsize 200
-documenttype[].fieldsets{[]}.fields[] "ref_from_a"
-documenttype[].fieldsets{[]}.fields[] "ref_from_b"
+documenttype[].fieldsets{[document]}.fields[] "ref_from_a"
+documenttype[].fieldsets{[document]}.fields[] "ref_from_b"
documenttype[].importedfield[].name "from_a_int_field"
documenttype[].importedfield[].name "from_b_int_field"
documenttype[].id 1175161836
@@ -107,5 +107,4 @@ documenttype[].datatype[].sstruct.field[].name "int_field"
documenttype[].datatype[].sstruct.field[].id 2128822283
documenttype[].datatype[].sstruct.field[].datatype 0
documenttype[].datatype[].sstruct.field[].detailedtype ""
-documenttype[].fieldsets{[]}.fields[] "int_field"
-
+documenttype[].fieldsets{[document]}.fields[] "int_field"
diff --git a/config-model/src/test/derived/imported_position_field/imported-fields.cfg b/config-model/src/test/derived/imported_position_field/imported-fields.cfg
index 5ce853e17f2..72aebeaafc1 100644
--- a/config-model/src/test/derived/imported_position_field/imported-fields.cfg
+++ b/config-model/src/test/derived/imported_position_field/imported-fields.cfg
@@ -1,3 +1,3 @@
-attribute[0].name "my_pos_zcurve"
-attribute[0].referencefield "parent_ref"
-attribute[0].targetfield "pos_zcurve"
+attribute[].name "my_pos_zcurve"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "pos_zcurve"
diff --git a/config-model/src/test/derived/imported_position_field/summarymap.cfg b/config-model/src/test/derived/imported_position_field/summarymap.cfg
index 42b6e811ee6..8956a146b74 100644
--- a/config-model/src/test/derived/imported_position_field/summarymap.cfg
+++ b/config-model/src/test/derived/imported_position_field/summarymap.cfg
@@ -1,7 +1,7 @@
defaultoutputclass -1
-override[0].field "rankfeatures"
-override[0].command "rankfeatures"
-override[0].arguments ""
-override[1].field "summaryfeatures"
-override[1].command "summaryfeatures"
-override[1].arguments "" \ No newline at end of file
+override[].field "rankfeatures"
+override[].command "rankfeatures"
+override[].arguments ""
+override[].field "summaryfeatures"
+override[].command "summaryfeatures"
+override[].arguments ""
diff --git a/config-model/src/test/derived/imported_struct_fields/imported-fields.cfg b/config-model/src/test/derived/imported_struct_fields/imported-fields.cfg
index 699a3045075..f5f7ebdc614 100644
--- a/config-model/src/test/derived/imported_struct_fields/imported-fields.cfg
+++ b/config-model/src/test/derived/imported_struct_fields/imported-fields.cfg
@@ -1,21 +1,21 @@
-attribute[0].name "my_elem_array.name"
-attribute[0].referencefield "parent_ref"
-attribute[0].targetfield "elem_array.name"
-attribute[1].name "my_elem_array.weight"
-attribute[1].referencefield "parent_ref"
-attribute[1].targetfield "elem_array.weight"
-attribute[2].name "my_elem_map.key"
-attribute[2].referencefield "parent_ref"
-attribute[2].targetfield "elem_map.key"
-attribute[3].name "my_elem_map.value.name"
-attribute[3].referencefield "parent_ref"
-attribute[3].targetfield "elem_map.value.name"
-attribute[4].name "my_elem_map.value.weight"
-attribute[4].referencefield "parent_ref"
-attribute[4].targetfield "elem_map.value.weight"
-attribute[5].name "my_str_int_map.key"
-attribute[5].referencefield "parent_ref"
-attribute[5].targetfield "str_int_map.key"
-attribute[6].name "my_str_int_map.value"
-attribute[6].referencefield "parent_ref"
-attribute[6].targetfield "str_int_map.value"
+attribute[].name "my_elem_array.name"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "elem_array.name"
+attribute[].name "my_elem_array.weight"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "elem_array.weight"
+attribute[].name "my_elem_map.key"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "elem_map.key"
+attribute[].name "my_elem_map.value.name"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "elem_map.value.name"
+attribute[].name "my_elem_map.value.weight"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "elem_map.value.weight"
+attribute[].name "my_str_int_map.key"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "str_int_map.key"
+attribute[].name "my_str_int_map.value"
+attribute[].referencefield "parent_ref"
+attribute[].targetfield "str_int_map.value"
diff --git a/config-model/src/test/derived/imported_struct_fields/summarymap.cfg b/config-model/src/test/derived/imported_struct_fields/summarymap.cfg
index ccb61354ccb..cd19a75e85f 100644
--- a/config-model/src/test/derived/imported_struct_fields/summarymap.cfg
+++ b/config-model/src/test/derived/imported_struct_fields/summarymap.cfg
@@ -1,25 +1,25 @@
defaultoutputclass -1
-override[0].field "my_elem_array"
-override[0].command "attributecombiner"
-override[0].arguments ""
-override[1].field "my_elem_map"
-override[1].command "attributecombiner"
-override[1].arguments ""
-override[2].field "my_str_int_map"
-override[2].command "attributecombiner"
-override[2].arguments ""
-override[3].field "rankfeatures"
-override[3].command "rankfeatures"
-override[3].arguments ""
-override[4].field "summaryfeatures"
-override[4].command "summaryfeatures"
-override[4].arguments ""
-override[5].field "elem_array_filtered"
-override[5].command "matchedattributeelementsfilter"
-override[5].arguments "my_elem_array"
-override[6].field "elem_map_filtered"
-override[6].command "matchedattributeelementsfilter"
-override[6].arguments "my_elem_map"
-override[7].field "str_int_map_filtered"
-override[7].command "matchedattributeelementsfilter"
-override[7].arguments "my_str_int_map" \ No newline at end of file
+override[].field "my_elem_array"
+override[].command "attributecombiner"
+override[].arguments ""
+override[].field "my_elem_map"
+override[].command "attributecombiner"
+override[].arguments ""
+override[].field "my_str_int_map"
+override[].command "attributecombiner"
+override[].arguments ""
+override[].field "rankfeatures"
+override[].command "rankfeatures"
+override[].arguments ""
+override[].field "summaryfeatures"
+override[].command "summaryfeatures"
+override[].arguments ""
+override[].field "elem_array_filtered"
+override[].command "matchedattributeelementsfilter"
+override[].arguments "my_elem_array"
+override[].field "elem_map_filtered"
+override[].command "matchedattributeelementsfilter"
+override[].arguments "my_elem_map"
+override[].field "str_int_map_filtered"
+override[].command "matchedattributeelementsfilter"
+override[].arguments "my_str_int_map"
diff --git a/config-model/src/test/derived/indexschema/index-info.cfg b/config-model/src/test/derived/indexschema/index-info.cfg
index fd58423b868..4e81a0ae4a8 100644
--- a/config-model/src/test/derived/indexschema/index-info.cfg
+++ b/config-model/src/test/derived/indexschema/index-info.cfg
@@ -114,11 +114,11 @@ indexinfo[].command[].command "type WeightedSet<string>"
indexinfo[].command[].indexname "sh"
indexinfo[].command[].command "index"
indexinfo[].command[].indexname "sh"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "sh"
indexinfo[].command[].command "plain-tokens"
indexinfo[].command[].indexname "sh"
indexinfo[].command[].command "fullurl"
-indexinfo[].command[].indexname "sh"
-indexinfo[].command[].command "lowercase"
indexinfo[].command[].indexname "sh.sh"
indexinfo[].command[].command "fullurl"
indexinfo[].command[].indexname "sh.sh"
diff --git a/config-model/src/test/derived/inheritance/documentmanager.cfg b/config-model/src/test/derived/inheritance/documentmanager.cfg
index 321bf9979cd..f0917864ebd 100644
--- a/config-model/src/test/derived/inheritance/documentmanager.cfg
+++ b/config-model/src/test/derived/inheritance/documentmanager.cfg
@@ -1,106 +1,106 @@
enablecompression false
usev8geopositions false
-doctype[0].name "document"
-doctype[0].idx 10000
-doctype[0].contentstruct 10001
-doctype[0].primitivetype[0].idx 10002
-doctype[0].primitivetype[0].name "bool"
-doctype[0].primitivetype[1].idx 10003
-doctype[0].primitivetype[1].name "byte"
-doctype[0].primitivetype[2].idx 10004
-doctype[0].primitivetype[2].name "double"
-doctype[0].primitivetype[3].idx 10005
-doctype[0].primitivetype[3].name "float"
-doctype[0].primitivetype[4].idx 10006
-doctype[0].primitivetype[4].name "float16"
-doctype[0].primitivetype[5].idx 10007
-doctype[0].primitivetype[5].name "int"
-doctype[0].primitivetype[6].idx 10008
-doctype[0].primitivetype[6].name "long"
-doctype[0].primitivetype[7].idx 10010
-doctype[0].primitivetype[7].name "predicate"
-doctype[0].primitivetype[8].idx 10011
-doctype[0].primitivetype[8].name "raw"
-doctype[0].primitivetype[9].idx 10012
-doctype[0].primitivetype[9].name "string"
-doctype[0].primitivetype[10].idx 10014
-doctype[0].primitivetype[10].name "uri"
-doctype[0].wsettype[0].idx 10013
-doctype[0].wsettype[0].elementtype 10012
-doctype[0].wsettype[0].createifnonexistent true
-doctype[0].wsettype[0].removeifzero true
-doctype[0].structtype[0].idx 10001
-doctype[0].structtype[0].name "document.header"
-doctype[0].structtype[1].idx 10009
-doctype[0].structtype[1].name "position"
-doctype[0].structtype[1].field[0].name "x"
-doctype[0].structtype[1].field[0].internalid 914677694
-doctype[0].structtype[1].field[0].type 10007
-doctype[0].structtype[1].field[1].name "y"
-doctype[0].structtype[1].field[1].internalid 900009410
-doctype[0].structtype[1].field[1].type 10007
-doctype[1].name "grandparent"
-doctype[1].idx 10015
-doctype[1].inherits[0].idx 10000
-doctype[1].contentstruct 10016
-doctype[1].fieldsets{[document]}.fields[0] "onlygrandparent"
-doctype[1].fieldsets{[document]}.fields[1] "overridden"
-doctype[1].structtype[0].idx 10016
-doctype[1].structtype[0].name "grandparent.header"
-doctype[1].structtype[0].field[0].name "onlygrandparent"
-doctype[1].structtype[0].field[0].internalid 1456982690
-doctype[1].structtype[0].field[0].type 10007
-doctype[1].structtype[0].field[1].name "overridden"
-doctype[1].structtype[0].field[1].internalid 1314355415
-doctype[1].structtype[0].field[1].type 10007
-doctype[2].name "mother"
-doctype[2].idx 10017
-doctype[2].inherits[0].idx 10015
-doctype[2].inherits[1].idx 10000
-doctype[2].contentstruct 10018
-doctype[2].fieldsets{[document]}.fields[0] "onlygrandparent"
-doctype[2].fieldsets{[document]}.fields[1] "onlymother"
-doctype[2].fieldsets{[document]}.fields[2] "overridden"
-doctype[2].structtype[0].idx 10018
-doctype[2].structtype[0].name "mother.header"
-doctype[2].structtype[0].field[0].name "onlymother"
-doctype[2].structtype[0].field[0].internalid 1390999339
-doctype[2].structtype[0].field[0].type 10012
-doctype[2].structtype[0].field[1].name "overridden"
-doctype[2].structtype[0].field[1].internalid 1314355415
-doctype[2].structtype[0].field[1].type 10007
-doctype[3].name "father"
-doctype[3].idx 10019
-doctype[3].inherits[0].idx 10015
-doctype[3].inherits[1].idx 10000
-doctype[3].contentstruct 10020
-doctype[3].fieldsets{[document]}.fields[0] "onlyfather"
-doctype[3].fieldsets{[document]}.fields[1] "onlygrandparent"
-doctype[3].fieldsets{[document]}.fields[2] "overridden"
-doctype[3].structtype[0].idx 10020
-doctype[3].structtype[0].name "father.header"
-doctype[3].structtype[0].field[0].name "onlyfather"
-doctype[3].structtype[0].field[0].internalid 1083094308
-doctype[3].structtype[0].field[0].type 10012
-doctype[3].structtype[0].field[1].name "overridden"
-doctype[3].structtype[0].field[1].internalid 1314355415
-doctype[3].structtype[0].field[1].type 10007
-doctype[4].name "child"
-doctype[4].idx 10021
-doctype[4].inherits[0].idx 10000
-doctype[4].inherits[1].idx 10019
-doctype[4].inherits[2].idx 10017
-doctype[4].contentstruct 10022
-doctype[4].fieldsets{[document]}.fields[0] "onlychild"
-doctype[4].fieldsets{[document]}.fields[1] "onlyfather"
-doctype[4].fieldsets{[document]}.fields[2] "onlygrandparent"
-doctype[4].fieldsets{[document]}.fields[3] "onlymother"
-doctype[4].fieldsets{[document]}.fields[4] "overridden"
-doctype[4].structtype[0].idx 10022
-doctype[4].structtype[0].name "child.header"
-doctype[4].structtype[0].field[0].name "onlychild"
-doctype[4].structtype[0].field[0].internalid 1737375598
-doctype[4].structtype[0].field[0].type 10012
-doctype[4].structtype[0].field[1].name "overridden"
-doctype[4].structtype[0].field[1].internalid 1314355415
-doctype[4].structtype[0].field[1].type 10007
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "grandparent"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "onlygrandparent"
+doctype[].fieldsets{[document]}.fields[] "overridden"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "grandparent.header"
+doctype[].structtype[].field[].name "onlygrandparent"
+doctype[].structtype[].field[].internalid 1456982690
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "overridden"
+doctype[].structtype[].field[].internalid 1314355415
+doctype[].structtype[].field[].type 10007
+doctype[].name "mother"
+doctype[].idx 10017
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10015
+doctype[].contentstruct 10018
+doctype[].fieldsets{[document]}.fields[] "onlygrandparent"
+doctype[].fieldsets{[document]}.fields[] "onlymother"
+doctype[].fieldsets{[document]}.fields[] "overridden"
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "mother.header"
+doctype[].structtype[].field[].name "onlymother"
+doctype[].structtype[].field[].internalid 1390999339
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "overridden"
+doctype[].structtype[].field[].internalid 1314355415
+doctype[].structtype[].field[].type 10007
+doctype[].name "father"
+doctype[].idx 10019
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10015
+doctype[].contentstruct 10020
+doctype[].fieldsets{[document]}.fields[] "onlyfather"
+doctype[].fieldsets{[document]}.fields[] "onlygrandparent"
+doctype[].fieldsets{[document]}.fields[] "overridden"
+doctype[].structtype[].idx 10020
+doctype[].structtype[].name "father.header"
+doctype[].structtype[].field[].name "onlyfather"
+doctype[].structtype[].field[].internalid 1083094308
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "overridden"
+doctype[].structtype[].field[].internalid 1314355415
+doctype[].structtype[].field[].type 10007
+doctype[].name "child"
+doctype[].idx 10021
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10019
+doctype[].inherits[].idx 10017
+doctype[].contentstruct 10022
+doctype[].fieldsets{[document]}.fields[] "onlychild"
+doctype[].fieldsets{[document]}.fields[] "onlyfather"
+doctype[].fieldsets{[document]}.fields[] "onlygrandparent"
+doctype[].fieldsets{[document]}.fields[] "onlymother"
+doctype[].fieldsets{[document]}.fields[] "overridden"
+doctype[].structtype[].idx 10022
+doctype[].structtype[].name "child.header"
+doctype[].structtype[].field[].name "onlychild"
+doctype[].structtype[].field[].internalid 1737375598
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "overridden"
+doctype[].structtype[].field[].internalid 1314355415
+doctype[].structtype[].field[].type 10007
diff --git a/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg b/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg
index f4398e59f0f..8c0ffd50840 100644
--- a/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg
+++ b/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg
@@ -1,70 +1,70 @@
enablecompression false
usev8geopositions false
-doctype[0].name "document"
-doctype[0].idx 10000
-doctype[0].contentstruct 10001
-doctype[0].primitivetype[0].idx 10002
-doctype[0].primitivetype[0].name "bool"
-doctype[0].primitivetype[1].idx 10003
-doctype[0].primitivetype[1].name "byte"
-doctype[0].primitivetype[2].idx 10004
-doctype[0].primitivetype[2].name "double"
-doctype[0].primitivetype[3].idx 10005
-doctype[0].primitivetype[3].name "float"
-doctype[0].primitivetype[4].idx 10006
-doctype[0].primitivetype[4].name "float16"
-doctype[0].primitivetype[5].idx 10007
-doctype[0].primitivetype[5].name "int"
-doctype[0].primitivetype[6].idx 10008
-doctype[0].primitivetype[6].name "long"
-doctype[0].primitivetype[7].idx 10010
-doctype[0].primitivetype[7].name "predicate"
-doctype[0].primitivetype[8].idx 10011
-doctype[0].primitivetype[8].name "raw"
-doctype[0].primitivetype[9].idx 10012
-doctype[0].primitivetype[9].name "string"
-doctype[0].primitivetype[10].idx 10014
-doctype[0].primitivetype[10].name "uri"
-doctype[0].wsettype[0].idx 10013
-doctype[0].wsettype[0].elementtype 10012
-doctype[0].wsettype[0].createifnonexistent true
-doctype[0].wsettype[0].removeifzero true
-doctype[0].structtype[0].idx 10001
-doctype[0].structtype[0].name "document.header"
-doctype[0].structtype[1].idx 10009
-doctype[0].structtype[1].name "position"
-doctype[0].structtype[1].field[0].name "x"
-doctype[0].structtype[1].field[0].internalid 914677694
-doctype[0].structtype[1].field[0].type 10007
-doctype[0].structtype[1].field[1].name "y"
-doctype[0].structtype[1].field[1].internalid 900009410
-doctype[0].structtype[1].field[1].type 10007
-doctype[1].name "grandparent"
-doctype[1].idx 10015
-doctype[1].inherits[0].idx 10000
-doctype[1].contentstruct 10016
-doctype[1].structtype[0].idx 10016
-doctype[1].structtype[0].name "grandparent.header"
-doctype[1].structtype[1].idx 10017
-doctype[1].structtype[1].name "grandparent_struct"
-doctype[1].structtype[1].field[0].name "grandparent_field"
-doctype[1].structtype[1].field[0].internalid 18801796
-doctype[1].structtype[1].field[0].type 10012
-doctype[2].name "parent"
-doctype[2].idx 10018
-doctype[2].inherits[0].idx 10015
-doctype[2].inherits[1].idx 10000
-doctype[2].contentstruct 10019
-doctype[2].structtype[0].idx 10019
-doctype[2].structtype[0].name "parent.header"
-doctype[3].name "child"
-doctype[3].idx 10020
-doctype[3].inherits[0].idx 10000
-doctype[3].inherits[1].idx 10018
-doctype[3].contentstruct 10021
-doctype[3].fieldsets{[document]}.fields[0] "child_field"
-doctype[3].structtype[0].idx 10021
-doctype[3].structtype[0].name "child.header"
-doctype[3].structtype[0].field[0].name "child_field"
-doctype[3].structtype[0].field[0].internalid 129089854
-doctype[3].structtype[0].field[0].type 10017
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "grandparent"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "grandparent.header"
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "grandparent_struct"
+doctype[].structtype[].field[].name "grandparent_field"
+doctype[].structtype[].field[].internalid 18801796
+doctype[].structtype[].field[].type 10012
+doctype[].name "parent"
+doctype[].idx 10018
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10015
+doctype[].contentstruct 10019
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "parent.header"
+doctype[].name "child"
+doctype[].idx 10020
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10018
+doctype[].contentstruct 10021
+doctype[].fieldsets{[document]}.fields[] "child_field"
+doctype[].structtype[].idx 10021
+doctype[].structtype[].name "child.header"
+doctype[].structtype[].field[].name "child_field"
+doctype[].structtype[].field[].internalid 129089854
+doctype[].structtype[].field[].type 10017
diff --git a/config-model/src/test/derived/inheritfromparent/documentmanager.cfg b/config-model/src/test/derived/inheritfromparent/documentmanager.cfg
index 1363453017f..186f3c0e3c1 100644
--- a/config-model/src/test/derived/inheritfromparent/documentmanager.cfg
+++ b/config-model/src/test/derived/inheritfromparent/documentmanager.cfg
@@ -1,71 +1,71 @@
enablecompression false
usev8geopositions false
-doctype[0].name "document"
-doctype[0].idx 10000
-doctype[0].contentstruct 10001
-doctype[0].primitivetype[0].idx 10002
-doctype[0].primitivetype[0].name "bool"
-doctype[0].primitivetype[1].idx 10003
-doctype[0].primitivetype[1].name "byte"
-doctype[0].primitivetype[2].idx 10004
-doctype[0].primitivetype[2].name "double"
-doctype[0].primitivetype[3].idx 10005
-doctype[0].primitivetype[3].name "float"
-doctype[0].primitivetype[4].idx 10006
-doctype[0].primitivetype[4].name "float16"
-doctype[0].primitivetype[5].idx 10007
-doctype[0].primitivetype[5].name "int"
-doctype[0].primitivetype[6].idx 10008
-doctype[0].primitivetype[6].name "long"
-doctype[0].primitivetype[7].idx 10010
-doctype[0].primitivetype[7].name "predicate"
-doctype[0].primitivetype[8].idx 10011
-doctype[0].primitivetype[8].name "raw"
-doctype[0].primitivetype[9].idx 10012
-doctype[0].primitivetype[9].name "string"
-doctype[0].primitivetype[10].idx 10014
-doctype[0].primitivetype[10].name "uri"
-doctype[0].wsettype[0].idx 10013
-doctype[0].wsettype[0].elementtype 10012
-doctype[0].wsettype[0].createifnonexistent true
-doctype[0].wsettype[0].removeifzero true
-doctype[0].structtype[0].idx 10001
-doctype[0].structtype[0].name "document.header"
-doctype[0].structtype[1].idx 10009
-doctype[0].structtype[1].name "position"
-doctype[0].structtype[1].field[0].name "x"
-doctype[0].structtype[1].field[0].internalid 914677694
-doctype[0].structtype[1].field[0].type 10007
-doctype[0].structtype[1].field[1].name "y"
-doctype[0].structtype[1].field[1].internalid 900009410
-doctype[0].structtype[1].field[1].type 10007
-doctype[1].name "parent"
-doctype[1].idx 10015
-doctype[1].inherits[0].idx 10000
-doctype[1].contentstruct 10016
-doctype[1].fieldsets{[document]}.fields[0] "weight_src"
-doctype[1].structtype[0].idx 10016
-doctype[1].structtype[0].name "parent.header"
-doctype[1].structtype[0].field[0].name "weight_src"
-doctype[1].structtype[0].field[0].internalid 1225660233
-doctype[1].structtype[0].field[0].type 10005
-doctype[1].structtype[0].field[1].name "weight"
-doctype[1].structtype[0].field[1].internalid 1001392207
-doctype[1].structtype[0].field[1].type 10005
-doctype[1].structtype[1].idx 10017
-doctype[1].structtype[1].name "parent_struct"
-doctype[1].structtype[1].field[0].name "parent_field"
-doctype[1].structtype[1].field[0].internalid 933533022
-doctype[1].structtype[1].field[0].type 10012
-doctype[2].name "child"
-doctype[2].idx 10018
-doctype[2].inherits[0].idx 10000
-doctype[2].inherits[1].idx 10015
-doctype[2].contentstruct 10019
-doctype[2].fieldsets{[document]}.fields[0] "child_field"
-doctype[2].fieldsets{[document]}.fields[1] "weight_src"
-doctype[2].structtype[0].idx 10019
-doctype[2].structtype[0].name "child.header"
-doctype[2].structtype[0].field[0].name "child_field"
-doctype[2].structtype[0].field[0].internalid 1814271363
-doctype[2].structtype[0].field[0].type 10017
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "parent"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "weight_src"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "parent.header"
+doctype[].structtype[].field[].name "weight_src"
+doctype[].structtype[].field[].internalid 1225660233
+doctype[].structtype[].field[].type 10005
+doctype[].structtype[].field[].name "weight"
+doctype[].structtype[].field[].internalid 1001392207
+doctype[].structtype[].field[].type 10005
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "parent_struct"
+doctype[].structtype[].field[].name "parent_field"
+doctype[].structtype[].field[].internalid 933533022
+doctype[].structtype[].field[].type 10012
+doctype[].name "child"
+doctype[].idx 10018
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10015
+doctype[].contentstruct 10019
+doctype[].fieldsets{[document]}.fields[] "child_field"
+doctype[].fieldsets{[document]}.fields[] "weight_src"
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "child.header"
+doctype[].structtype[].field[].name "child_field"
+doctype[].structtype[].field[].internalid 1814271363
+doctype[].structtype[].field[].type 10017
diff --git a/config-model/src/test/derived/inheritfromparent/documenttypes.cfg b/config-model/src/test/derived/inheritfromparent/documenttypes.cfg
index ea7a49b1acf..da65510ee5a 100644
--- a/config-model/src/test/derived/inheritfromparent/documenttypes.cfg
+++ b/config-model/src/test/derived/inheritfromparent/documenttypes.cfg
@@ -6,7 +6,7 @@ documenttype[].version 0
documenttype[].headerstruct 836075987
documenttype[].bodystruct 0
documenttype[].inherits[].id 8
-documenttype[].datatype[].id 1091188812
+documenttype[].datatype[].id 836075987
documenttype[].datatype[].type STRUCT
documenttype[].datatype[].array.element.id 0
documenttype[].datatype[].map.key.id 0
@@ -15,17 +15,21 @@ documenttype[].datatype[].wset.key.id 0
documenttype[].datatype[].wset.createifnonexistent false
documenttype[].datatype[].wset.removeifzero false
documenttype[].datatype[].annotationref.annotation.id 0
-documenttype[].datatype[].sstruct.name "parent_struct"
+documenttype[].datatype[].sstruct.name "parent.header"
documenttype[].datatype[].sstruct.version 0
documenttype[].datatype[].sstruct.compression.type NONE
documenttype[].datatype[].sstruct.compression.level 0
documenttype[].datatype[].sstruct.compression.threshold 95
documenttype[].datatype[].sstruct.compression.minsize 200
-documenttype[].datatype[].sstruct.field[].name "parent_field"
-documenttype[].datatype[].sstruct.field[].id 933533022
-documenttype[].datatype[].sstruct.field[].datatype 2
+documenttype[].datatype[].sstruct.field[].name "weight_src"
+documenttype[].datatype[].sstruct.field[].id 1225660233
+documenttype[].datatype[].sstruct.field[].datatype 1
documenttype[].datatype[].sstruct.field[].detailedtype ""
-documenttype[].datatype[].id 836075987
+documenttype[].datatype[].sstruct.field[].name "weight"
+documenttype[].datatype[].sstruct.field[].id 1001392207
+documenttype[].datatype[].sstruct.field[].datatype 1
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].id 1091188812
documenttype[].datatype[].type STRUCT
documenttype[].datatype[].array.element.id 0
documenttype[].datatype[].map.key.id 0
@@ -34,21 +38,17 @@ documenttype[].datatype[].wset.key.id 0
documenttype[].datatype[].wset.createifnonexistent false
documenttype[].datatype[].wset.removeifzero false
documenttype[].datatype[].annotationref.annotation.id 0
-documenttype[].datatype[].sstruct.name "parent.header"
+documenttype[].datatype[].sstruct.name "parent_struct"
documenttype[].datatype[].sstruct.version 0
documenttype[].datatype[].sstruct.compression.type NONE
documenttype[].datatype[].sstruct.compression.level 0
documenttype[].datatype[].sstruct.compression.threshold 95
documenttype[].datatype[].sstruct.compression.minsize 200
-documenttype[].datatype[].sstruct.field[].name "weight_src"
-documenttype[].datatype[].sstruct.field[].id 1225660233
-documenttype[].datatype[].sstruct.field[].datatype 1
-documenttype[].datatype[].sstruct.field[].detailedtype ""
-documenttype[].datatype[].sstruct.field[].name "weight"
-documenttype[].datatype[].sstruct.field[].id 1001392207
-documenttype[].datatype[].sstruct.field[].datatype 1
+documenttype[].datatype[].sstruct.field[].name "parent_field"
+documenttype[].datatype[].sstruct.field[].id 933533022
+documenttype[].datatype[].sstruct.field[].datatype 2
documenttype[].datatype[].sstruct.field[].detailedtype ""
-documenttype[].fieldsets{[]}.fields[] "weight_src"
+documenttype[].fieldsets{[document]}.fields[] "weight_src"
documenttype[].id 746267614
documenttype[].name "child"
documenttype[].version 0
@@ -75,5 +75,5 @@ documenttype[].datatype[].sstruct.field[].name "child_field"
documenttype[].datatype[].sstruct.field[].id 1814271363
documenttype[].datatype[].sstruct.field[].datatype 1091188812
documenttype[].datatype[].sstruct.field[].detailedtype ""
-documenttype[].fieldsets{[]}.fields[] "child_field"
-documenttype[].fieldsets{[]}.fields[] "weight_src"
+documenttype[].fieldsets{[document]}.fields[] "child_field"
+documenttype[].fieldsets{[document]}.fields[] "weight_src"
diff --git a/config-model/src/test/derived/inheritstruct/index-info.cfg b/config-model/src/test/derived/inheritstruct/index-info.cfg
index 5afa91ea1bb..9c880f7b3f4 100644
--- a/config-model/src/test/derived/inheritstruct/index-info.cfg
+++ b/config-model/src/test/derived/inheritstruct/index-info.cfg
@@ -1,51 +1,51 @@
-indexinfo[0].name "child"
-indexinfo[0].command[0].indexname "sddocname"
-indexinfo[0].command[0].command "index"
-indexinfo[0].command[1].indexname "sddocname"
-indexinfo[0].command[1].command "word"
-indexinfo[0].command[2].indexname "child_struct_field.my_str"
-indexinfo[0].command[2].command "index"
-indexinfo[0].command[3].indexname "child_struct_field.my_str"
-indexinfo[0].command[3].command "lowercase"
-indexinfo[0].command[4].indexname "child_struct_field.my_str"
-indexinfo[0].command[4].command "stem:BEST"
-indexinfo[0].command[5].indexname "child_struct_field.my_str"
-indexinfo[0].command[5].command "normalize"
-indexinfo[0].command[6].indexname "child_struct_field.my_str"
-indexinfo[0].command[6].command "plain-tokens"
-indexinfo[0].command[7].indexname "child_struct_field.my_str"
-indexinfo[0].command[7].command "type string"
-indexinfo[0].command[8].indexname "child_struct_field"
-indexinfo[0].command[8].command "index"
-indexinfo[0].command[9].indexname "child_struct_field"
-indexinfo[0].command[9].command "lowercase"
-indexinfo[0].command[10].indexname "child_struct_field"
-indexinfo[0].command[10].command "plain-tokens"
-indexinfo[0].command[11].indexname "child_struct_field"
-indexinfo[0].command[11].command "type my_struct"
-indexinfo[0].command[12].indexname "other_field.my_str"
-indexinfo[0].command[12].command "index"
-indexinfo[0].command[13].indexname "other_field.my_str"
-indexinfo[0].command[13].command "type string"
-indexinfo[0].command[14].indexname "other_field.my_int"
-indexinfo[0].command[14].command "index"
-indexinfo[0].command[15].indexname "other_field.my_int"
-indexinfo[0].command[15].command "numerical"
-indexinfo[0].command[16].indexname "other_field.my_int"
-indexinfo[0].command[16].command "type int"
-indexinfo[0].command[17].indexname "other_field"
-indexinfo[0].command[17].command "index"
-indexinfo[0].command[18].indexname "other_field"
-indexinfo[0].command[18].command "type other_struct"
-indexinfo[0].command[19].indexname "wrapped_field.wrapped.my_str"
-indexinfo[0].command[19].command "index"
-indexinfo[0].command[20].indexname "wrapped_field.wrapped.my_str"
-indexinfo[0].command[20].command "type string"
-indexinfo[0].command[21].indexname "wrapped_field.wrapped"
-indexinfo[0].command[21].command "index"
-indexinfo[0].command[22].indexname "wrapped_field.wrapped"
-indexinfo[0].command[22].command "type my_struct"
-indexinfo[0].command[23].indexname "wrapped_field"
-indexinfo[0].command[23].command "index"
-indexinfo[0].command[24].indexname "wrapped_field"
-indexinfo[0].command[24].command "type wrapper" \ No newline at end of file
+indexinfo[].name "child"
+indexinfo[].command[].indexname "sddocname"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "sddocname"
+indexinfo[].command[].command "word"
+indexinfo[].command[].indexname "child_struct_field.my_str"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "child_struct_field.my_str"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "child_struct_field.my_str"
+indexinfo[].command[].command "stem:BEST"
+indexinfo[].command[].indexname "child_struct_field.my_str"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "child_struct_field.my_str"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "child_struct_field.my_str"
+indexinfo[].command[].command "type string"
+indexinfo[].command[].indexname "child_struct_field"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "child_struct_field"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "child_struct_field"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "child_struct_field"
+indexinfo[].command[].command "type my_struct"
+indexinfo[].command[].indexname "other_field.my_str"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "other_field.my_str"
+indexinfo[].command[].command "type string"
+indexinfo[].command[].indexname "other_field.my_int"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "other_field.my_int"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "other_field.my_int"
+indexinfo[].command[].command "type int"
+indexinfo[].command[].indexname "other_field"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "other_field"
+indexinfo[].command[].command "type other_struct"
+indexinfo[].command[].indexname "wrapped_field.wrapped.my_str"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "wrapped_field.wrapped.my_str"
+indexinfo[].command[].command "type string"
+indexinfo[].command[].indexname "wrapped_field.wrapped"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "wrapped_field.wrapped"
+indexinfo[].command[].command "type my_struct"
+indexinfo[].command[].indexname "wrapped_field"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "wrapped_field"
+indexinfo[].command[].command "type wrapper"
diff --git a/config-model/src/test/derived/renamedfeatures/rank-profiles.cfg b/config-model/src/test/derived/renamedfeatures/rank-profiles.cfg
index 0a327575a48..d084401d920 100644
--- a/config-model/src/test/derived/renamedfeatures/rank-profiles.cfg
+++ b/config-model/src/test/derived/renamedfeatures/rank-profiles.cfg
@@ -1,82 +1,82 @@
-rankprofile[0].name "default"
-rankprofile[0].fef.property[0].name "rankingExpression(myplus).rankingScript"
-rankprofile[0].fef.property[0].value "attribute(foo1) + attribute(foo2)"
-rankprofile[0].fef.property[1].name "rankingExpression(mymul).rankingScript"
-rankprofile[0].fef.property[1].value "attribute(t1) * query(fromq)"
-rankprofile[0].fef.property[2].name "rankingExpression(mymul).type"
-rankprofile[0].fef.property[2].value "tensor(m{},v[3])"
-rankprofile[0].fef.property[3].name "vespa.rank.firstphase"
-rankprofile[0].fef.property[3].value "classicRank"
-rankprofile[0].fef.property[4].name "vespa.dump.feature"
-rankprofile[0].fef.property[4].value "attribute(foo1).out"
-rankprofile[0].fef.property[5].name "vespa.dump.feature"
-rankprofile[0].fef.property[5].value "attribute(bar1)"
-rankprofile[0].fef.property[6].name "vespa.dump.feature"
-rankprofile[0].fef.property[6].value "myplus"
-rankprofile[0].fef.property[7].name "vespa.dump.feature"
-rankprofile[0].fef.property[7].value "mymul"
-rankprofile[0].fef.property[8].name "vespa.dump.ignoredefaultfeatures"
-rankprofile[0].fef.property[8].value "true"
-rankprofile[0].fef.property[9].name "vespa.type.attribute.t1"
-rankprofile[0].fef.property[9].value "tensor(m{},v[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[1].fef.property[4].name "vespa.type.attribute.t1"
-rankprofile[1].fef.property[4].value "tensor(m{},v[3])"
-rankprofile[2].name "withsf"
-rankprofile[2].fef.property[0].name "rankingExpression(myplus).rankingScript"
-rankprofile[2].fef.property[0].value "attribute(foo1) + attribute(foo2)"
-rankprofile[2].fef.property[1].name "rankingExpression(mymul).rankingScript"
-rankprofile[2].fef.property[1].value "attribute(t1) * query(fromq)"
-rankprofile[2].fef.property[2].name "rankingExpression(mymul).type"
-rankprofile[2].fef.property[2].value "tensor(m{},v[3])"
-rankprofile[2].fef.property[3].name "vespa.rank.firstphase"
-rankprofile[2].fef.property[3].value "attribute(year)"
-rankprofile[2].fef.property[4].name "vespa.summary.feature"
-rankprofile[2].fef.property[4].value "attribute(foo1).out"
-rankprofile[2].fef.property[5].name "vespa.summary.feature"
-rankprofile[2].fef.property[5].value "attribute(bar1)"
-rankprofile[2].fef.property[6].name "vespa.summary.feature"
-rankprofile[2].fef.property[6].value "rankingExpression(mymul)"
-rankprofile[2].fef.property[7].name "vespa.summary.feature"
-rankprofile[2].fef.property[7].value "rankingExpression(myplus)"
-rankprofile[2].fef.property[8].name "vespa.feature.rename"
-rankprofile[2].fef.property[8].value "rankingExpression(myplus)"
-rankprofile[2].fef.property[9].name "vespa.feature.rename"
-rankprofile[2].fef.property[9].value "myplus"
-rankprofile[2].fef.property[10].name "vespa.type.attribute.t1"
-rankprofile[2].fef.property[10].value "tensor(m{},v[3])"
-rankprofile[3].name "withmf"
-rankprofile[3].fef.property[0].name "rankingExpression(mymul).rankingScript"
-rankprofile[3].fef.property[0].value "attribute(t1) * query(fromq)"
-rankprofile[3].fef.property[1].name "rankingExpression(myplus).rankingScript"
-rankprofile[3].fef.property[1].value "attribute(foo1) + attribute(foo2)"
-rankprofile[3].fef.property[2].name "vespa.rank.firstphase"
-rankprofile[3].fef.property[2].value "attribute(foo1)"
-rankprofile[3].fef.property[3].name "vespa.rank.secondphase"
-rankprofile[3].fef.property[3].value "attribute(foo2)"
-rankprofile[3].fef.property[4].name "vespa.match.feature"
-rankprofile[3].fef.property[4].value "attribute(foo1).out"
-rankprofile[3].fef.property[5].name "vespa.match.feature"
-rankprofile[3].fef.property[5].value "attribute(bar1)"
-rankprofile[3].fef.property[6].name "vespa.match.feature"
-rankprofile[3].fef.property[6].value "rankingExpression(myplus)"
-rankprofile[3].fef.property[7].name "vespa.match.feature"
-rankprofile[3].fef.property[7].value "firstPhase"
-rankprofile[3].fef.property[8].name "vespa.match.feature"
-rankprofile[3].fef.property[8].value "secondPhase"
-rankprofile[3].fef.property[9].name "vespa.match.feature"
-rankprofile[3].fef.property[9].value "rankingExpression(mymul)"
-rankprofile[3].fef.property[10].name "vespa.feature.rename"
-rankprofile[3].fef.property[10].value "rankingExpression(mymul)"
-rankprofile[3].fef.property[11].name "vespa.feature.rename"
-rankprofile[3].fef.property[11].value "mymul"
-rankprofile[3].fef.property[12].name "vespa.type.attribute.t1"
-rankprofile[3].fef.property[12].value "tensor(m{},v[3])"
+rankprofile[].name "default"
+rankprofile[].fef.property[].name "rankingExpression(myplus).rankingScript"
+rankprofile[].fef.property[].value "attribute(foo1) + attribute(foo2)"
+rankprofile[].fef.property[].name "rankingExpression(mymul).rankingScript"
+rankprofile[].fef.property[].value "attribute(t1) * query(fromq)"
+rankprofile[].fef.property[].name "rankingExpression(mymul).type"
+rankprofile[].fef.property[].value "tensor(m{},v[3])"
+rankprofile[].fef.property[].name "vespa.rank.firstphase"
+rankprofile[].fef.property[].value "classicRank"
+rankprofile[].fef.property[].name "vespa.dump.feature"
+rankprofile[].fef.property[].value "attribute(foo1).out"
+rankprofile[].fef.property[].name "vespa.dump.feature"
+rankprofile[].fef.property[].value "attribute(bar1)"
+rankprofile[].fef.property[].name "vespa.dump.feature"
+rankprofile[].fef.property[].value "myplus"
+rankprofile[].fef.property[].name "vespa.dump.feature"
+rankprofile[].fef.property[].value "mymul"
+rankprofile[].fef.property[].name "vespa.dump.ignoredefaultfeatures"
+rankprofile[].fef.property[].value "true"
+rankprofile[].fef.property[].name "vespa.type.attribute.t1"
+rankprofile[].fef.property[].value "tensor(m{},v[3])"
+rankprofile[].name "unranked"
+rankprofile[].fef.property[].name "vespa.rank.firstphase"
+rankprofile[].fef.property[].value "value(0)"
+rankprofile[].fef.property[].name "vespa.hitcollector.heapsize"
+rankprofile[].fef.property[].value "0"
+rankprofile[].fef.property[].name "vespa.hitcollector.arraysize"
+rankprofile[].fef.property[].value "0"
+rankprofile[].fef.property[].name "vespa.dump.ignoredefaultfeatures"
+rankprofile[].fef.property[].value "true"
+rankprofile[].fef.property[].name "vespa.type.attribute.t1"
+rankprofile[].fef.property[].value "tensor(m{},v[3])"
+rankprofile[].name "withsf"
+rankprofile[].fef.property[].name "rankingExpression(myplus).rankingScript"
+rankprofile[].fef.property[].value "attribute(foo1) + attribute(foo2)"
+rankprofile[].fef.property[].name "rankingExpression(mymul).rankingScript"
+rankprofile[].fef.property[].value "attribute(t1) * query(fromq)"
+rankprofile[].fef.property[].name "rankingExpression(mymul).type"
+rankprofile[].fef.property[].value "tensor(m{},v[3])"
+rankprofile[].fef.property[].name "vespa.rank.firstphase"
+rankprofile[].fef.property[].value "attribute(year)"
+rankprofile[].fef.property[].name "vespa.summary.feature"
+rankprofile[].fef.property[].value "attribute(foo1).out"
+rankprofile[].fef.property[].name "vespa.summary.feature"
+rankprofile[].fef.property[].value "attribute(bar1)"
+rankprofile[].fef.property[].name "vespa.summary.feature"
+rankprofile[].fef.property[].value "rankingExpression(mymul)"
+rankprofile[].fef.property[].name "vespa.summary.feature"
+rankprofile[].fef.property[].value "rankingExpression(myplus)"
+rankprofile[].fef.property[].name "vespa.feature.rename"
+rankprofile[].fef.property[].value "rankingExpression(myplus)"
+rankprofile[].fef.property[].name "vespa.feature.rename"
+rankprofile[].fef.property[].value "myplus"
+rankprofile[].fef.property[].name "vespa.type.attribute.t1"
+rankprofile[].fef.property[].value "tensor(m{},v[3])"
+rankprofile[].name "withmf"
+rankprofile[].fef.property[].name "rankingExpression(mymul).rankingScript"
+rankprofile[].fef.property[].value "attribute(t1) * query(fromq)"
+rankprofile[].fef.property[].name "rankingExpression(myplus).rankingScript"
+rankprofile[].fef.property[].value "attribute(foo1) + attribute(foo2)"
+rankprofile[].fef.property[].name "vespa.rank.firstphase"
+rankprofile[].fef.property[].value "attribute(foo1)"
+rankprofile[].fef.property[].name "vespa.rank.secondphase"
+rankprofile[].fef.property[].value "attribute(foo2)"
+rankprofile[].fef.property[].name "vespa.match.feature"
+rankprofile[].fef.property[].value "attribute(foo1).out"
+rankprofile[].fef.property[].name "vespa.match.feature"
+rankprofile[].fef.property[].value "attribute(bar1)"
+rankprofile[].fef.property[].name "vespa.match.feature"
+rankprofile[].fef.property[].value "rankingExpression(myplus)"
+rankprofile[].fef.property[].name "vespa.match.feature"
+rankprofile[].fef.property[].value "firstPhase"
+rankprofile[].fef.property[].name "vespa.match.feature"
+rankprofile[].fef.property[].value "secondPhase"
+rankprofile[].fef.property[].name "vespa.match.feature"
+rankprofile[].fef.property[].value "rankingExpression(mymul)"
+rankprofile[].fef.property[].name "vespa.feature.rename"
+rankprofile[].fef.property[].value "rankingExpression(mymul)"
+rankprofile[].fef.property[].name "vespa.feature.rename"
+rankprofile[].fef.property[].value "mymul"
+rankprofile[].fef.property[].name "vespa.type.attribute.t1"
+rankprofile[].fef.property[].value "tensor(m{},v[3])"
diff --git a/config-model/src/test/derived/schemainheritance/summarymap.cfg b/config-model/src/test/derived/schemainheritance/summarymap.cfg
index ad98cbe76e7..d09407ca8a5 100644
--- a/config-model/src/test/derived/schemainheritance/summarymap.cfg
+++ b/config-model/src/test/derived/schemainheritance/summarymap.cfg
@@ -5,9 +5,9 @@ override[].arguments ""
override[].field "summaryfeatures"
override[].command "summaryfeatures"
override[].arguments ""
-override[].field "child_field"
-override[].command "attribute"
-override[].arguments "child_field"
override[].field "parent_field"
override[].command "attribute"
override[].arguments "parent_field"
+override[].field "child_field"
+override[].command "attribute"
+override[].arguments "child_field"
diff --git a/config-model/src/test/derived/schemainheritance/vsmsummary.cfg b/config-model/src/test/derived/schemainheritance/vsmsummary.cfg
index 91ca5363a25..f1c052598bd 100644
--- a/config-model/src/test/derived/schemainheritance/vsmsummary.cfg
+++ b/config-model/src/test/derived/schemainheritance/vsmsummary.cfg
@@ -1,13 +1,13 @@
outputclass ""
+fieldmap[].summary "parent_field"
+fieldmap[].document[].field "parent_field"
+fieldmap[].command NONE
fieldmap[].summary "child_field"
fieldmap[].document[].field "child_field"
fieldmap[].command NONE
fieldmap[].summary "pf1"
fieldmap[].document[].field "pf1"
fieldmap[].command NONE
-fieldmap[].summary "parent_field"
-fieldmap[].document[].field "parent_field"
-fieldmap[].command NONE
fieldmap[].summary "cf1"
fieldmap[].document[].field "cf1"
fieldmap[].command NONE
diff --git a/config-model/src/test/derived/structinheritance/documenttypes.cfg b/config-model/src/test/derived/structinheritance/documenttypes.cfg
index 52a154905c2..cf4bc89866f 100644
--- a/config-model/src/test/derived/structinheritance/documenttypes.cfg
+++ b/config-model/src/test/derived/structinheritance/documenttypes.cfg
@@ -1,102 +1,102 @@
enablecompression false
usev8geopositions false
-documenttype[0].id 485659380
-documenttype[0].name "simple"
-documenttype[0].version 0
-documenttype[0].headerstruct -2142109237
-documenttype[0].bodystruct 0
-documenttype[0].inherits[0].id 8
-documenttype[0].datatype[0].id 1811766610
-documenttype[0].datatype[0].type STRUCT
-documenttype[0].datatype[0].array.element.id 0
-documenttype[0].datatype[0].map.key.id 0
-documenttype[0].datatype[0].map.value.id 0
-documenttype[0].datatype[0].wset.key.id 0
-documenttype[0].datatype[0].wset.createifnonexistent false
-documenttype[0].datatype[0].wset.removeifzero false
-documenttype[0].datatype[0].annotationref.annotation.id 0
-documenttype[0].datatype[0].sstruct.name "grandchild"
-documenttype[0].datatype[0].sstruct.version 0
-documenttype[0].datatype[0].sstruct.compression.type NONE
-documenttype[0].datatype[0].sstruct.compression.level 0
-documenttype[0].datatype[0].sstruct.compression.threshold 95
-documenttype[0].datatype[0].sstruct.compression.minsize 200
-documenttype[0].datatype[0].sstruct.field[0].name "toy"
-documenttype[0].datatype[0].sstruct.field[0].id 536645790
-documenttype[0].datatype[0].sstruct.field[0].datatype 2
-documenttype[0].datatype[0].sstruct.field[0].detailedtype ""
-documenttype[0].datatype[0].sstruct.field[1].name "age"
-documenttype[0].datatype[0].sstruct.field[1].id 1862473705
-documenttype[0].datatype[0].sstruct.field[1].datatype 0
-documenttype[0].datatype[0].sstruct.field[1].detailedtype ""
-documenttype[0].datatype[0].sstruct.field[2].name "name"
-documenttype[0].datatype[0].sstruct.field[2].id 1160796772
-documenttype[0].datatype[0].sstruct.field[2].datatype 2
-documenttype[0].datatype[0].sstruct.field[2].detailedtype ""
-documenttype[0].datatype[1].id -1396204461
-documenttype[0].datatype[1].type STRUCT
-documenttype[0].datatype[1].array.element.id 0
-documenttype[0].datatype[1].map.key.id 0
-documenttype[0].datatype[1].map.value.id 0
-documenttype[0].datatype[1].wset.key.id 0
-documenttype[0].datatype[1].wset.createifnonexistent false
-documenttype[0].datatype[1].wset.removeifzero false
-documenttype[0].datatype[1].annotationref.annotation.id 0
-documenttype[0].datatype[1].sstruct.name "base"
-documenttype[0].datatype[1].sstruct.version 0
-documenttype[0].datatype[1].sstruct.compression.type NONE
-documenttype[0].datatype[1].sstruct.compression.level 0
-documenttype[0].datatype[1].sstruct.compression.threshold 95
-documenttype[0].datatype[1].sstruct.compression.minsize 200
-documenttype[0].datatype[1].sstruct.field[0].name "name"
-documenttype[0].datatype[1].sstruct.field[0].id 1160796772
-documenttype[0].datatype[1].sstruct.field[0].datatype 2
-documenttype[0].datatype[1].sstruct.field[0].detailedtype ""
-documenttype[0].datatype[2].id 746267614
-documenttype[0].datatype[2].type STRUCT
-documenttype[0].datatype[2].array.element.id 0
-documenttype[0].datatype[2].map.key.id 0
-documenttype[0].datatype[2].map.value.id 0
-documenttype[0].datatype[2].wset.key.id 0
-documenttype[0].datatype[2].wset.createifnonexistent false
-documenttype[0].datatype[2].wset.removeifzero false
-documenttype[0].datatype[2].annotationref.annotation.id 0
-documenttype[0].datatype[2].sstruct.name "child"
-documenttype[0].datatype[2].sstruct.version 0
-documenttype[0].datatype[2].sstruct.compression.type NONE
-documenttype[0].datatype[2].sstruct.compression.level 0
-documenttype[0].datatype[2].sstruct.compression.threshold 95
-documenttype[0].datatype[2].sstruct.compression.minsize 200
-documenttype[0].datatype[2].sstruct.field[0].name "age"
-documenttype[0].datatype[2].sstruct.field[0].id 1862473705
-documenttype[0].datatype[2].sstruct.field[0].datatype 0
-documenttype[0].datatype[2].sstruct.field[0].detailedtype ""
-documenttype[0].datatype[2].sstruct.field[1].name "name"
-documenttype[0].datatype[2].sstruct.field[1].id 1160796772
-documenttype[0].datatype[2].sstruct.field[1].datatype 2
-documenttype[0].datatype[2].sstruct.field[1].detailedtype ""
-documenttype[0].datatype[3].id -2142109237
-documenttype[0].datatype[3].type STRUCT
-documenttype[0].datatype[3].array.element.id 0
-documenttype[0].datatype[3].map.key.id 0
-documenttype[0].datatype[3].map.value.id 0
-documenttype[0].datatype[3].wset.key.id 0
-documenttype[0].datatype[3].wset.createifnonexistent false
-documenttype[0].datatype[3].wset.removeifzero false
-documenttype[0].datatype[3].annotationref.annotation.id 0
-documenttype[0].datatype[3].sstruct.name "simple.header"
-documenttype[0].datatype[3].sstruct.version 0
-documenttype[0].datatype[3].sstruct.compression.type NONE
-documenttype[0].datatype[3].sstruct.compression.level 0
-documenttype[0].datatype[3].sstruct.compression.threshold 95
-documenttype[0].datatype[3].sstruct.compression.minsize 200
-documenttype[0].datatype[3].sstruct.field[0].name "f1"
-documenttype[0].datatype[3].sstruct.field[0].id 750623154
-documenttype[0].datatype[3].sstruct.field[0].datatype 746267614
-documenttype[0].datatype[3].sstruct.field[0].detailedtype ""
-documenttype[0].datatype[3].sstruct.field[1].name "f2"
-documenttype[0].datatype[3].sstruct.field[1].id 1523850983
-documenttype[0].datatype[3].sstruct.field[1].datatype 1811766610
-documenttype[0].datatype[3].sstruct.field[1].detailedtype ""
-documenttype[0].fieldsets{[document]}.fields[0] "f1"
-documenttype[0].fieldsets{[document]}.fields[1] "f2"
+documenttype[].id 485659380
+documenttype[].name "simple"
+documenttype[].version 0
+documenttype[].headerstruct -2142109237
+documenttype[].bodystruct 0
+documenttype[].inherits[].id 8
+documenttype[].datatype[].id -1396204461
+documenttype[].datatype[].type STRUCT
+documenttype[].datatype[].array.element.id 0
+documenttype[].datatype[].map.key.id 0
+documenttype[].datatype[].map.value.id 0
+documenttype[].datatype[].wset.key.id 0
+documenttype[].datatype[].wset.createifnonexistent false
+documenttype[].datatype[].wset.removeifzero false
+documenttype[].datatype[].annotationref.annotation.id 0
+documenttype[].datatype[].sstruct.name "base"
+documenttype[].datatype[].sstruct.version 0
+documenttype[].datatype[].sstruct.compression.type NONE
+documenttype[].datatype[].sstruct.compression.level 0
+documenttype[].datatype[].sstruct.compression.threshold 95
+documenttype[].datatype[].sstruct.compression.minsize 200
+documenttype[].datatype[].sstruct.field[].name "name"
+documenttype[].datatype[].sstruct.field[].id 1160796772
+documenttype[].datatype[].sstruct.field[].datatype 2
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].id 746267614
+documenttype[].datatype[].type STRUCT
+documenttype[].datatype[].array.element.id 0
+documenttype[].datatype[].map.key.id 0
+documenttype[].datatype[].map.value.id 0
+documenttype[].datatype[].wset.key.id 0
+documenttype[].datatype[].wset.createifnonexistent false
+documenttype[].datatype[].wset.removeifzero false
+documenttype[].datatype[].annotationref.annotation.id 0
+documenttype[].datatype[].sstruct.name "child"
+documenttype[].datatype[].sstruct.version 0
+documenttype[].datatype[].sstruct.compression.type NONE
+documenttype[].datatype[].sstruct.compression.level 0
+documenttype[].datatype[].sstruct.compression.threshold 95
+documenttype[].datatype[].sstruct.compression.minsize 200
+documenttype[].datatype[].sstruct.field[].name "age"
+documenttype[].datatype[].sstruct.field[].id 1862473705
+documenttype[].datatype[].sstruct.field[].datatype 0
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].sstruct.field[].name "name"
+documenttype[].datatype[].sstruct.field[].id 1160796772
+documenttype[].datatype[].sstruct.field[].datatype 2
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].id 1811766610
+documenttype[].datatype[].type STRUCT
+documenttype[].datatype[].array.element.id 0
+documenttype[].datatype[].map.key.id 0
+documenttype[].datatype[].map.value.id 0
+documenttype[].datatype[].wset.key.id 0
+documenttype[].datatype[].wset.createifnonexistent false
+documenttype[].datatype[].wset.removeifzero false
+documenttype[].datatype[].annotationref.annotation.id 0
+documenttype[].datatype[].sstruct.name "grandchild"
+documenttype[].datatype[].sstruct.version 0
+documenttype[].datatype[].sstruct.compression.type NONE
+documenttype[].datatype[].sstruct.compression.level 0
+documenttype[].datatype[].sstruct.compression.threshold 95
+documenttype[].datatype[].sstruct.compression.minsize 200
+documenttype[].datatype[].sstruct.field[].name "toy"
+documenttype[].datatype[].sstruct.field[].id 536645790
+documenttype[].datatype[].sstruct.field[].datatype 2
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].sstruct.field[].name "age"
+documenttype[].datatype[].sstruct.field[].id 1862473705
+documenttype[].datatype[].sstruct.field[].datatype 0
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].sstruct.field[].name "name"
+documenttype[].datatype[].sstruct.field[].id 1160796772
+documenttype[].datatype[].sstruct.field[].datatype 2
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].id -2142109237
+documenttype[].datatype[].type STRUCT
+documenttype[].datatype[].array.element.id 0
+documenttype[].datatype[].map.key.id 0
+documenttype[].datatype[].map.value.id 0
+documenttype[].datatype[].wset.key.id 0
+documenttype[].datatype[].wset.createifnonexistent false
+documenttype[].datatype[].wset.removeifzero false
+documenttype[].datatype[].annotationref.annotation.id 0
+documenttype[].datatype[].sstruct.name "simple.header"
+documenttype[].datatype[].sstruct.version 0
+documenttype[].datatype[].sstruct.compression.type NONE
+documenttype[].datatype[].sstruct.compression.level 0
+documenttype[].datatype[].sstruct.compression.threshold 95
+documenttype[].datatype[].sstruct.compression.minsize 200
+documenttype[].datatype[].sstruct.field[].name "f1"
+documenttype[].datatype[].sstruct.field[].id 750623154
+documenttype[].datatype[].sstruct.field[].datatype 746267614
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].datatype[].sstruct.field[].name "f2"
+documenttype[].datatype[].sstruct.field[].id 1523850983
+documenttype[].datatype[].sstruct.field[].datatype 1811766610
+documenttype[].datatype[].sstruct.field[].detailedtype ""
+documenttype[].fieldsets{[document]}.fields[] "f1"
+documenttype[].fieldsets{[document]}.fields[] "f2"
diff --git a/config-model/src/test/derived/tensor/rank-profiles.cfg b/config-model/src/test/derived/tensor/rank-profiles.cfg
index 7970e05b790..ac66ccf6938 100644
--- a/config-model/src/test/derived/tensor/rank-profiles.cfg
+++ b/config-model/src/test/derived/tensor/rank-profiles.cfg
@@ -161,4 +161,3 @@ rankprofile[].fef.property[].name "vespa.type.attribute.f4"
rankprofile[].fef.property[].value "tensor(x[10],y[10])"
rankprofile[].fef.property[].name "vespa.type.attribute.f5"
rankprofile[].fef.property[].value "tensor<float>(x[10])"
-