summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2018-08-28 08:30:06 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2018-08-28 08:30:06 +0200
commit5551645c2e27bdc71914a359e1ccd7a07c0e68cf (patch)
tree3684423e46ac9415c3632b4c2e94f59d49bb7b9e
parentd8aacfbd2c2bf74dae96933d63cb2ff327ee1b02 (diff)
Unify on empty array indexes
-rw-r--r--config-model/src/test/derived/advanced/documentmanager.cfg18
-rw-r--r--config-model/src/test/derived/advanced/ilscripts.cfg44
-rw-r--r--config-model/src/test/derived/arrays/documentmanager.cfg16
-rw-r--r--config-model/src/test/derived/arrays/ilscripts.cfg20
-rw-r--r--config-model/src/test/derived/attributeprefetch/documentmanager.cfg36
-rw-r--r--config-model/src/test/derived/attributeprefetch/ilscripts.cfg72
-rw-r--r--config-model/src/test/derived/attributes/ilscripts.cfg80
-rw-r--r--config-model/src/test/derived/complex/documentmanager.cfg56
-rw-r--r--config-model/src/test/derived/complex/ilscripts.cfg92
-rw-r--r--config-model/src/test/derived/deriver/ilscripts.cfg12
-rw-r--r--config-model/src/test/derived/documentderiver/vsmfields.cfg198
-rw-r--r--config-model/src/test/derived/documentderiver/vsmsummary.cfg4
-rw-r--r--config-model/src/test/derived/emptydefault/documentmanager.cfg4
-rw-r--r--config-model/src/test/derived/emptydefault/ilscripts.cfg8
-rw-r--r--config-model/src/test/derived/exactmatch/ilscripts.cfg8
-rw-r--r--config-model/src/test/derived/fieldlength/attributes.cfg2
-rw-r--r--config-model/src/test/derived/id/documentmanager.cfg2
-rw-r--r--config-model/src/test/derived/id/ilscripts.cfg4
-rw-r--r--config-model/src/test/derived/indexinfo_lowercase/index-info.cfg80
-rw-r--r--config-model/src/test/derived/indexschema/index-info.cfg80
-rw-r--r--config-model/src/test/derived/indexswitches/documentmanager.cfg10
-rw-r--r--config-model/src/test/derived/indexswitches/ilscripts.cfg14
-rw-r--r--config-model/src/test/derived/inheritance/documentmanager.cfg38
-rw-r--r--config-model/src/test/derived/inheritance/ilscripts.cfg20
-rw-r--r--config-model/src/test/derived/inheritance/mother/documentmanager.cfg470
-rw-r--r--config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg10
-rw-r--r--config-model/src/test/derived/inheritfromparent/documentmanager.cfg12
-rw-r--r--config-model/src/test/derived/inheritfromparent/documenttypes.cfg12
-rw-r--r--config-model/src/test/derived/mail/documentmanager.cfg84
-rw-r--r--config-model/src/test/derived/mail/ilscripts.cfg64
-rw-r--r--config-model/src/test/derived/multiplesummaries/attributes.cfg2
-rw-r--r--config-model/src/test/derived/multiplesummaries/ilscripts.cfg26
-rw-r--r--config-model/src/test/derived/multiplesummaries/index-info.cfg46
-rw-r--r--config-model/src/test/derived/multiplesummaries/juniperrc.cfg2
-rw-r--r--config-model/src/test/derived/multiplesummaries/summary.cfg26
-rw-r--r--config-model/src/test/derived/multiplesummaries/summarymap.cfg2
-rw-r--r--config-model/src/test/derived/music/ilscripts.cfg148
-rw-r--r--config-model/src/test/derived/music/index-info.cfg80
-rw-r--r--config-model/src/test/derived/newrank/ilscripts.cfg128
-rw-r--r--config-model/src/test/derived/newrank/index-info.cfg72
-rw-r--r--config-model/src/test/derived/orderilscripts/ilscripts.cfg6
-rw-r--r--config-model/src/test/derived/position_array/ilscripts.cfg4
-rw-r--r--config-model/src/test/derived/position_attribute/ilscripts.cfg4
-rw-r--r--config-model/src/test/derived/position_extra/ilscripts.cfg4
-rw-r--r--config-model/src/test/derived/prefixexactattribute/documentmanager.cfg10
-rw-r--r--config-model/src/test/derived/prefixexactattribute/ilscripts.cfg20
-rw-r--r--config-model/src/test/derived/ranktypes/documentmanager.cfg8
-rw-r--r--config-model/src/test/derived/ranktypes/ilscripts.cfg18
-rw-r--r--config-model/src/test/derived/streamingstruct/documentmanager.cfg34
-rw-r--r--config-model/src/test/derived/structanyorder/documentmanager.cfg4
-rw-r--r--config-model/src/test/derived/structanyorder/ilscripts.cfg8
-rw-r--r--config-model/src/test/derived/structanyorder/index-info.cfg80
-rw-r--r--config-model/src/test/derived/tensor/documenttypes.cfg8
-rw-r--r--config-model/src/test/derived/twostreamingstructs/documentmanager.cfg36
-rw-r--r--config-model/src/test/derived/types/documentmanager.cfg52
-rw-r--r--config-model/src/test/derived/types/ilscripts.cfg106
-rw-r--r--config-model/src/test/derived/types/index-info.cfg80
-rw-r--r--config-model/src/test/derived/uri_array/ilscripts.cfg4
-rw-r--r--config-model/src/test/derived/uri_wset/ilscripts.cfg4
59 files changed, 1296 insertions, 1296 deletions
diff --git a/config-model/src/test/derived/advanced/documentmanager.cfg b/config-model/src/test/derived/advanced/documentmanager.cfg
index 62902493d8f..ee425d0d719 100644
--- a/config-model/src/test/derived/advanced/documentmanager.cfg
+++ b/config-model/src/test/derived/advanced/documentmanager.cfg
@@ -95,12 +95,12 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -1337915045
datatype[].documenttype[].bodystruct -704605648
-datatype[].documenttype[].fieldsets{titleabstract}.fields[0] "title"
-datatype[].documenttype[].fieldsets{default}.fields[0] "title"
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "attributes_src"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "debug_src"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "location_str"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "product2_src"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "product3_src"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "product_src"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "title_src"
+datatype[].documenttype[].fieldsets{titleabstract}.fields[] "title"
+datatype[].documenttype[].fieldsets{default}.fields[] "title"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attributes_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "debug_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "location_str"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "product2_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "product3_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "product_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "title_src"
diff --git a/config-model/src/test/derived/advanced/ilscripts.cfg b/config-model/src/test/derived/advanced/ilscripts.cfg
index 689a4dee882..faf39ddc4d9 100644
--- a/config-model/src/test/derived/advanced/ilscripts.cfg
+++ b/config-model/src/test/derived/advanced/ilscripts.cfg
@@ -1,25 +1,25 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "advanced"
-ilscript[].docfield[0] "debug_src"
-ilscript[].docfield[1] "attributes_src"
-ilscript[].docfield[2] "location_str"
-ilscript[].docfield[3] "title_src"
-ilscript[].docfield[4] "product_src"
-ilscript[].docfield[5] "product2_src"
-ilscript[].docfield[6] "product3_src"
-ilscript[].content[0] "clear_state | guard { 1 | set_var superdupermod; 2 | set_var tmppubdate; input attributes_src | lowercase | tokenize normalize | summary attributes | index attributes | split \";\" | for_each { switch { case \"typepr\": 1 | set_var tmpsourcerank | get_var tmppubdate - 9000 | set_var tmppubdate | 0 | set_var superdupermod; } }; }"
-ilscript[].content[1] "clear_state | guard { 0 | set_var superduperus | set_var superdupereu | set_var superduperasia; input debug_src | lowercase | tokenize normalize | summary debug | index debug | split \";\" | for_each { switch { case \"superduperus\": 10 | set_var superduperus; case \"superdupereu\": 10 | set_var superdupereu; case \"superduperasia\": 10 | set_var superduperasia; } }; }"
-ilscript[].content[2] "clear_state | guard { input location_str | to_pos | zcurve | attribute location_zcurve; }"
-ilscript[].content[3] "clear_state | guard { input title_src | summary mysummary; }"
-ilscript[].content[4] "clear_state | guard { input product_src | switch { case \"\": \"myweb\" | tokenize stem:\"SHORTEST\" | index product | summary product; default: input product_src | tokenize stem:\"SHORTEST\" | index product | summary product; }; }"
-ilscript[].content[5] "clear_state | guard { if (input product2_src == \"foo\") { \"bar\" | tokenize stem:\"SHORTEST\" | index product2; } else { \"baz\" | tokenize stem:\"SHORTEST\" | index product2; }; }"
-ilscript[].content[6] "clear_state | guard { input product3_src | switch { case \"\": \"myweb\" | tokenize stem:\"SHORTEST\" | index product3 | summary product3; default: input product3_src | tokenize stem:\"SHORTEST\" | index product3 | summary product3; }; }"
-ilscript[].content[7] "clear_state | guard { input title_src | tokenize normalize | index title; }"
-ilscript[].content[8] "clear_state | guard { input title_src | summary title_s; }"
-ilscript[].content[9] "input attributes_src | passthrough attributes_src"
-ilscript[].content[10] "input debug_src | passthrough debug_src"
-ilscript[].content[11] "input product2_src | passthrough product2_src"
-ilscript[].content[12] "input product3_src | passthrough product3_src"
-ilscript[].content[13] "input product_src | passthrough product_src"
-ilscript[].content[14] "input title_src | passthrough title_src"
+ilscript[].docfield[] "debug_src"
+ilscript[].docfield[] "attributes_src"
+ilscript[].docfield[] "location_str"
+ilscript[].docfield[] "title_src"
+ilscript[].docfield[] "product_src"
+ilscript[].docfield[] "product2_src"
+ilscript[].docfield[] "product3_src"
+ilscript[].content[] "clear_state | guard { 1 | set_var superdupermod; 2 | set_var tmppubdate; input attributes_src | lowercase | tokenize normalize | summary attributes | index attributes | split \";\" | for_each { switch { case \"typepr\": 1 | set_var tmpsourcerank | get_var tmppubdate - 9000 | set_var tmppubdate | 0 | set_var superdupermod; } }; }"
+ilscript[].content[] "clear_state | guard { 0 | set_var superduperus | set_var superdupereu | set_var superduperasia; input debug_src | lowercase | tokenize normalize | summary debug | index debug | split \";\" | for_each { switch { case \"superduperus\": 10 | set_var superduperus; case \"superdupereu\": 10 | set_var superdupereu; case \"superduperasia\": 10 | set_var superduperasia; } }; }"
+ilscript[].content[] "clear_state | guard { input location_str | to_pos | zcurve | attribute location_zcurve; }"
+ilscript[].content[] "clear_state | guard { input title_src | summary mysummary; }"
+ilscript[].content[] "clear_state | guard { input product_src | switch { case \"\": \"myweb\" | tokenize stem:\"SHORTEST\" | index product | summary product; default: input product_src | tokenize stem:\"SHORTEST\" | index product | summary product; }; }"
+ilscript[].content[] "clear_state | guard { if (input product2_src == \"foo\") { \"bar\" | tokenize stem:\"SHORTEST\" | index product2; } else { \"baz\" | tokenize stem:\"SHORTEST\" | index product2; }; }"
+ilscript[].content[] "clear_state | guard { input product3_src | switch { case \"\": \"myweb\" | tokenize stem:\"SHORTEST\" | index product3 | summary product3; default: input product3_src | tokenize stem:\"SHORTEST\" | index product3 | summary product3; }; }"
+ilscript[].content[] "clear_state | guard { input title_src | tokenize normalize | index title; }"
+ilscript[].content[] "clear_state | guard { input title_src | summary title_s; }"
+ilscript[].content[] "input attributes_src | passthrough attributes_src"
+ilscript[].content[] "input debug_src | passthrough debug_src"
+ilscript[].content[] "input product2_src | passthrough product2_src"
+ilscript[].content[] "input product3_src | passthrough product3_src"
+ilscript[].content[] "input product_src | passthrough product_src"
+ilscript[].content[] "input title_src | passthrough title_src"
diff --git a/config-model/src/test/derived/arrays/documentmanager.cfg b/config-model/src/test/derived/arrays/documentmanager.cfg
index 09a604b3da4..58bdb56a8dc 100644
--- a/config-model/src/test/derived/arrays/documentmanager.cfg
+++ b/config-model/src/test/derived/arrays/documentmanager.cfg
@@ -62,11 +62,11 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 1081627459
datatype[].documenttype[].bodystruct -1747896808
-datatype[].documenttype[].fieldsets{default}.fields[0] "a"
-datatype[].documenttype[].fieldsets{default}.fields[1] "b"
-datatype[].documenttype[].fieldsets{default}.fields[2] "c"
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "a"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "b"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "c"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "ratings"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "tags"
+datatype[].documenttype[].fieldsets{default}.fields[] "a"
+datatype[].documenttype[].fieldsets{default}.fields[] "b"
+datatype[].documenttype[].fieldsets{default}.fields[] "c"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "a"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "b"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "c"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "ratings"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "tags"
diff --git a/config-model/src/test/derived/arrays/ilscripts.cfg b/config-model/src/test/derived/arrays/ilscripts.cfg
index 386f5a5a4e6..c48f4a22ce7 100644
--- a/config-model/src/test/derived/arrays/ilscripts.cfg
+++ b/config-model/src/test/derived/arrays/ilscripts.cfg
@@ -1,13 +1,13 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "arrays"
-ilscript[].docfield[0] "tags"
-ilscript[].docfield[1] "ratings"
-ilscript[].docfield[2] "a"
-ilscript[].docfield[3] "b"
-ilscript[].docfield[4] "c"
-ilscript[].content[0] "clear_state | guard { input tags | for_each { tokenize normalize stem:\"SHORTEST\" } | summary tags | index tags; }"
-ilscript[].content[1] "clear_state | guard { input ratings | summary ratings | attribute ratings; }"
-ilscript[].content[2] "clear_state | guard { input a | tokenize normalize stem:\"SHORTEST\" | index a; }"
-ilscript[].content[3] "clear_state | guard { input b | for_each { tokenize normalize stem:\"SHORTEST\" } | index b | attribute b; }"
-ilscript[].content[4] "clear_state | guard { input c | for_each { tokenize normalize stem:\"SHORTEST\" } | summary c | index c; }"
+ilscript[].docfield[] "tags"
+ilscript[].docfield[] "ratings"
+ilscript[].docfield[] "a"
+ilscript[].docfield[] "b"
+ilscript[].docfield[] "c"
+ilscript[].content[] "clear_state | guard { input tags | for_each { tokenize normalize stem:\"SHORTEST\" } | summary tags | index tags; }"
+ilscript[].content[] "clear_state | guard { input ratings | summary ratings | attribute ratings; }"
+ilscript[].content[] "clear_state | guard { input a | tokenize normalize stem:\"SHORTEST\" | index a; }"
+ilscript[].content[] "clear_state | guard { input b | for_each { tokenize normalize stem:\"SHORTEST\" } | index b | attribute b; }"
+ilscript[].content[] "clear_state | guard { input c | for_each { tokenize normalize stem:\"SHORTEST\" } | summary c | index c; }"
diff --git a/config-model/src/test/derived/attributeprefetch/documentmanager.cfg b/config-model/src/test/derived/attributeprefetch/documentmanager.cfg
index 414c1c848db..946003f3aa9 100644
--- a/config-model/src/test/derived/attributeprefetch/documentmanager.cfg
+++ b/config-model/src/test/derived/attributeprefetch/documentmanager.cfg
@@ -129,21 +129,21 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -109105370
datatype[].documenttype[].bodystruct 932425403
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "multibyte"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "multidouble"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "multifloat"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "multiint"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "multilong"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "multistring"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "singlebyte"
-datatype[].documenttype[].fieldsets{[document]}.fields[7] "singledouble"
-datatype[].documenttype[].fieldsets{[document]}.fields[8] "singlefloat"
-datatype[].documenttype[].fieldsets{[document]}.fields[9] "singleint"
-datatype[].documenttype[].fieldsets{[document]}.fields[10] "singlelong"
-datatype[].documenttype[].fieldsets{[document]}.fields[11] "singlestring"
-datatype[].documenttype[].fieldsets{[document]}.fields[12] "wsbyte"
-datatype[].documenttype[].fieldsets{[document]}.fields[13] "wsdouble"
-datatype[].documenttype[].fieldsets{[document]}.fields[14] "wsfloat"
-datatype[].documenttype[].fieldsets{[document]}.fields[15] "wsint"
-datatype[].documenttype[].fieldsets{[document]}.fields[16] "wslong"
-datatype[].documenttype[].fieldsets{[document]}.fields[17] "wsstring"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "multibyte"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "multidouble"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "multifloat"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "multiint"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "multilong"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "multistring"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "singlebyte"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "singledouble"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "singlefloat"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "singleint"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "singlelong"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "singlestring"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "wsbyte"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "wsdouble"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "wsfloat"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "wsint"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "wslong"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "wsstring"
diff --git a/config-model/src/test/derived/attributeprefetch/ilscripts.cfg b/config-model/src/test/derived/attributeprefetch/ilscripts.cfg
index 6e60d265046..61f4cde6e66 100644
--- a/config-model/src/test/derived/attributeprefetch/ilscripts.cfg
+++ b/config-model/src/test/derived/attributeprefetch/ilscripts.cfg
@@ -1,39 +1,39 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "prefetch"
-ilscript[].docfield[0] "singlebyte"
-ilscript[].docfield[1] "multibyte"
-ilscript[].docfield[2] "wsbyte"
-ilscript[].docfield[3] "singleint"
-ilscript[].docfield[4] "multiint"
-ilscript[].docfield[5] "wsint"
-ilscript[].docfield[6] "singlelong"
-ilscript[].docfield[7] "multilong"
-ilscript[].docfield[8] "wslong"
-ilscript[].docfield[9] "singlefloat"
-ilscript[].docfield[10] "multifloat"
-ilscript[].docfield[11] "wsfloat"
-ilscript[].docfield[12] "singledouble"
-ilscript[].docfield[13] "multidouble"
-ilscript[].docfield[14] "wsdouble"
-ilscript[].docfield[15] "singlestring"
-ilscript[].docfield[16] "multistring"
-ilscript[].docfield[17] "wsstring"
-ilscript[].content[0] "clear_state | guard { input singlebyte | attribute singlebyte; }"
-ilscript[].content[1] "clear_state | guard { input multibyte | attribute multibyte; }"
-ilscript[].content[2] "clear_state | guard { input wsbyte | attribute wsbyte; }"
-ilscript[].content[3] "clear_state | guard { input singleint | attribute singleint; }"
-ilscript[].content[4] "clear_state | guard { input multiint | attribute multiint; }"
-ilscript[].content[5] "clear_state | guard { input wsint | attribute wsint; }"
-ilscript[].content[6] "clear_state | guard { input singlelong | attribute singlelong; }"
-ilscript[].content[7] "clear_state | guard { input multilong | attribute multilong; }"
-ilscript[].content[8] "clear_state | guard { input wslong | attribute wslong; }"
-ilscript[].content[9] "clear_state | guard { input singlefloat | attribute singlefloat; }"
-ilscript[].content[10] "clear_state | guard { input multifloat | attribute multifloat; }"
-ilscript[].content[11] "clear_state | guard { input wsfloat | attribute wsfloat; }"
-ilscript[].content[12] "clear_state | guard { input singledouble | attribute singledouble; }"
-ilscript[].content[13] "clear_state | guard { input multidouble | attribute multidouble; }"
-ilscript[].content[14] "clear_state | guard { input wsdouble | attribute wsdouble; }"
-ilscript[].content[15] "clear_state | guard { input singlestring | attribute singlestring; }"
-ilscript[].content[16] "clear_state | guard { input multistring | attribute multistring; }"
-ilscript[].content[17] "clear_state | guard { input wsstring | attribute wsstring; }"
+ilscript[].docfield[] "singlebyte"
+ilscript[].docfield[] "multibyte"
+ilscript[].docfield[] "wsbyte"
+ilscript[].docfield[] "singleint"
+ilscript[].docfield[] "multiint"
+ilscript[].docfield[] "wsint"
+ilscript[].docfield[] "singlelong"
+ilscript[].docfield[] "multilong"
+ilscript[].docfield[] "wslong"
+ilscript[].docfield[] "singlefloat"
+ilscript[].docfield[] "multifloat"
+ilscript[].docfield[] "wsfloat"
+ilscript[].docfield[] "singledouble"
+ilscript[].docfield[] "multidouble"
+ilscript[].docfield[] "wsdouble"
+ilscript[].docfield[] "singlestring"
+ilscript[].docfield[] "multistring"
+ilscript[].docfield[] "wsstring"
+ilscript[].content[] "clear_state | guard { input singlebyte | attribute singlebyte; }"
+ilscript[].content[] "clear_state | guard { input multibyte | attribute multibyte; }"
+ilscript[].content[] "clear_state | guard { input wsbyte | attribute wsbyte; }"
+ilscript[].content[] "clear_state | guard { input singleint | attribute singleint; }"
+ilscript[].content[] "clear_state | guard { input multiint | attribute multiint; }"
+ilscript[].content[] "clear_state | guard { input wsint | attribute wsint; }"
+ilscript[].content[] "clear_state | guard { input singlelong | attribute singlelong; }"
+ilscript[].content[] "clear_state | guard { input multilong | attribute multilong; }"
+ilscript[].content[] "clear_state | guard { input wslong | attribute wslong; }"
+ilscript[].content[] "clear_state | guard { input singlefloat | attribute singlefloat; }"
+ilscript[].content[] "clear_state | guard { input multifloat | attribute multifloat; }"
+ilscript[].content[] "clear_state | guard { input wsfloat | attribute wsfloat; }"
+ilscript[].content[] "clear_state | guard { input singledouble | attribute singledouble; }"
+ilscript[].content[] "clear_state | guard { input multidouble | attribute multidouble; }"
+ilscript[].content[] "clear_state | guard { input wsdouble | attribute wsdouble; }"
+ilscript[].content[] "clear_state | guard { input singlestring | attribute singlestring; }"
+ilscript[].content[] "clear_state | guard { input multistring | attribute multistring; }"
+ilscript[].content[] "clear_state | guard { input wsstring | attribute wsstring; }"
diff --git a/config-model/src/test/derived/attributes/ilscripts.cfg b/config-model/src/test/derived/attributes/ilscripts.cfg
index fa3b17e49f5..08bf52021d7 100644
--- a/config-model/src/test/derived/attributes/ilscripts.cfg
+++ b/config-model/src/test/derived/attributes/ilscripts.cfg
@@ -1,43 +1,43 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "attributes"
-ilscript[].docfield[0] "a1"
-ilscript[].docfield[1] "a2"
-ilscript[].docfield[2] "a3"
-ilscript[].docfield[3] "a4"
-ilscript[].docfield[4] "a5"
-ilscript[].docfield[5] "a6"
-ilscript[].docfield[6] "a7"
-ilscript[].docfield[7] "a8"
-ilscript[].docfield[8] "b1"
-ilscript[].docfield[9] "b2"
-ilscript[].docfield[10] "b3"
-ilscript[].docfield[11] "b4"
-ilscript[].docfield[12] "b5"
-ilscript[].docfield[13] "b6"
-ilscript[].docfield[14] "b7"
-ilscript[].docfield[15] "a9"
-ilscript[].docfield[16] "a10"
-ilscript[].docfield[17] "a11"
-ilscript[].docfield[18] "a12"
-ilscript[].content[0] "clear_state | guard { input a7 | split \";\" | attribute a7_arr; }"
-ilscript[].content[1] "clear_state | guard { input a8 | split \";\" | attribute a8_arr; }"
-ilscript[].content[2] "clear_state | guard { input a1 | attribute a1 | summary a1; }"
-ilscript[].content[3] "clear_state | guard { input a2 | attribute a2 | summary a2; }"
-ilscript[].content[4] "clear_state | guard { input a3 | attribute a3 | summary a3; }"
-ilscript[].content[5] "clear_state | guard { input a4 | summary a4; }"
-ilscript[].content[6] "clear_state | guard { input a5 | tokenize normalize stem:\"SHORTEST\" | attribute a5 | summary a5 | index a5; }"
-ilscript[].content[7] "clear_state | guard { input a6 | tokenize normalize stem:\"SHORTEST\" | attribute a6 | summary a6 | index a6; }"
-ilscript[].content[8] "clear_state | guard { input a7 | summary a7; }"
-ilscript[].content[9] "clear_state | guard { input a8 | summary a8; }"
-ilscript[].content[10] "clear_state | guard { input b1 | attribute b1 | summary b1; }"
-ilscript[].content[11] "clear_state | guard { input b2 | tokenize normalize stem:\"SHORTEST\" | attribute b2 | summary b2 | index b2; }"
-ilscript[].content[12] "clear_state | guard { input b3 | tokenize normalize stem:\"SHORTEST\" | attribute b3 | summary b3 | index b3; }"
-ilscript[].content[13] "clear_state | guard { input b4 | attribute b4 | summary b4; }"
-ilscript[].content[14] "clear_state | guard { input b5 | summary b5 | attribute b5; }"
-ilscript[].content[15] "clear_state | guard { input b6 | summary b6 | attribute b6; }"
-ilscript[].content[16] "clear_state | guard { input b7 | summary b7 | attribute b7; }"
-ilscript[].content[17] "clear_state | guard { input a9 | attribute a9; }"
-ilscript[].content[18] "clear_state | guard { input a10 | attribute a10; }"
-ilscript[].content[19] "clear_state | guard { input a11 | attribute a11; }"
-ilscript[].content[20] "clear_state | guard { input a12 | attribute a12; }"
+ilscript[].docfield[] "a1"
+ilscript[].docfield[] "a2"
+ilscript[].docfield[] "a3"
+ilscript[].docfield[] "a4"
+ilscript[].docfield[] "a5"
+ilscript[].docfield[] "a6"
+ilscript[].docfield[] "a7"
+ilscript[].docfield[] "a8"
+ilscript[].docfield[] "b1"
+ilscript[].docfield[] "b2"
+ilscript[].docfield[] "b3"
+ilscript[].docfield[] "b4"
+ilscript[].docfield[] "b5"
+ilscript[].docfield[] "b6"
+ilscript[].docfield[] "b7"
+ilscript[].docfield[] "a9"
+ilscript[].docfield[] "a10"
+ilscript[].docfield[] "a11"
+ilscript[].docfield[] "a12"
+ilscript[].content[] "clear_state | guard { input a7 | split \";\" | attribute a7_arr; }"
+ilscript[].content[] "clear_state | guard { input a8 | split \";\" | attribute a8_arr; }"
+ilscript[].content[] "clear_state | guard { input a1 | attribute a1 | summary a1; }"
+ilscript[].content[] "clear_state | guard { input a2 | attribute a2 | summary a2; }"
+ilscript[].content[] "clear_state | guard { input a3 | attribute a3 | summary a3; }"
+ilscript[].content[] "clear_state | guard { input a4 | summary a4; }"
+ilscript[].content[] "clear_state | guard { input a5 | tokenize normalize stem:\"SHORTEST\" | attribute a5 | summary a5 | index a5; }"
+ilscript[].content[] "clear_state | guard { input a6 | tokenize normalize stem:\"SHORTEST\" | attribute a6 | summary a6 | index a6; }"
+ilscript[].content[] "clear_state | guard { input a7 | summary a7; }"
+ilscript[].content[] "clear_state | guard { input a8 | summary a8; }"
+ilscript[].content[] "clear_state | guard { input b1 | attribute b1 | summary b1; }"
+ilscript[].content[] "clear_state | guard { input b2 | tokenize normalize stem:\"SHORTEST\" | attribute b2 | summary b2 | index b2; }"
+ilscript[].content[] "clear_state | guard { input b3 | tokenize normalize stem:\"SHORTEST\" | attribute b3 | summary b3 | index b3; }"
+ilscript[].content[] "clear_state | guard { input b4 | attribute b4 | summary b4; }"
+ilscript[].content[] "clear_state | guard { input b5 | summary b5 | attribute b5; }"
+ilscript[].content[] "clear_state | guard { input b6 | summary b6 | attribute b6; }"
+ilscript[].content[] "clear_state | guard { input b7 | summary b7 | attribute b7; }"
+ilscript[].content[] "clear_state | guard { input a9 | attribute a9; }"
+ilscript[].content[] "clear_state | guard { input a10 | attribute a10; }"
+ilscript[].content[] "clear_state | guard { input a11 | attribute a11; }"
+ilscript[].content[] "clear_state | guard { input a12 | attribute a12; }"
diff --git a/config-model/src/test/derived/complex/documentmanager.cfg b/config-model/src/test/derived/complex/documentmanager.cfg
index a6c3999c45f..cd4ea0b212a 100644
--- a/config-model/src/test/derived/complex/documentmanager.cfg
+++ b/config-model/src/test/derived/complex/documentmanager.cfg
@@ -118,31 +118,31 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -1749463923
datatype[].documenttype[].bodystruct -1665926686
-datatype[].documenttype[].fieldsets{default}.fields[0] "stringfield"
-datatype[].documenttype[].fieldsets{default}.fields[1] "title"
-datatype[].documenttype[].fieldsets{special}.fields[0] "special1"
-datatype[].documenttype[].fieldsets{special}.fields[1] "special2"
-datatype[].documenttype[].fieldsets{special}.fields[2] "special3"
-datatype[].documenttype[].fieldsets{all}.fields[0] "combineda"
-datatype[].documenttype[].fieldsets{all}.fields[1] "combinedb"
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "category"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "collapseby"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "combineda"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "combinedb"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "docurl"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "dyntitle"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "exactagain"
-datatype[].documenttype[].fieldsets{[document]}.fields[7] "exactemento"
-datatype[].documenttype[].fieldsets{[document]}.fields[8] "fleeting"
-datatype[].documenttype[].fieldsets{[document]}.fields[9] "fleeting2"
-datatype[].documenttype[].fieldsets{[document]}.fields[10] "foundat"
-datatype[].documenttype[].fieldsets{[document]}.fields[11] "location"
-datatype[].documenttype[].fieldsets{[document]}.fields[12] "prefixenabled"
-datatype[].documenttype[].fieldsets{[document]}.fields[13] "source"
-datatype[].documenttype[].fieldsets{[document]}.fields[14] "special1"
-datatype[].documenttype[].fieldsets{[document]}.fields[15] "special2"
-datatype[].documenttype[].fieldsets{[document]}.fields[16] "special3"
-datatype[].documenttype[].fieldsets{[document]}.fields[17] "stringfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[18] "title"
-datatype[].documenttype[].fieldsets{[document]}.fields[19] "ts"
-datatype[].documenttype[].fieldsets{[document]}.fields[20] "yEaR"
+datatype[].documenttype[].fieldsets{default}.fields[] "stringfield"
+datatype[].documenttype[].fieldsets{default}.fields[] "title"
+datatype[].documenttype[].fieldsets{special}.fields[] "special1"
+datatype[].documenttype[].fieldsets{special}.fields[] "special2"
+datatype[].documenttype[].fieldsets{special}.fields[] "special3"
+datatype[].documenttype[].fieldsets{all}.fields[] "combineda"
+datatype[].documenttype[].fieldsets{all}.fields[] "combinedb"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "category"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "collapseby"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "combineda"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "combinedb"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "docurl"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "dyntitle"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "exactagain"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "exactemento"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "fleeting"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "fleeting2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "foundat"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "location"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "prefixenabled"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "source"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "special1"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "special2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "special3"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "stringfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "title"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "ts"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "yEaR"
diff --git a/config-model/src/test/derived/complex/ilscripts.cfg b/config-model/src/test/derived/complex/ilscripts.cfg
index fec528018fb..dfef7058936 100644
--- a/config-model/src/test/derived/complex/ilscripts.cfg
+++ b/config-model/src/test/derived/complex/ilscripts.cfg
@@ -1,49 +1,49 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "complex"
-ilscript[].docfield[0] "title"
-ilscript[].docfield[1] "location"
-ilscript[].docfield[2] "dyntitle"
-ilscript[].docfield[3] "special1"
-ilscript[].docfield[4] "special2"
-ilscript[].docfield[5] "special3"
-ilscript[].docfield[6] "prefixenabled"
-ilscript[].docfield[7] "source"
-ilscript[].docfield[8] "docurl"
-ilscript[].docfield[9] "fleeting"
-ilscript[].docfield[10] "fleeting2"
-ilscript[].docfield[11] "foundat"
-ilscript[].docfield[12] "collapseby"
-ilscript[].docfield[13] "yEaR"
-ilscript[].docfield[14] "stringfield"
-ilscript[].docfield[15] "exactemento"
-ilscript[].docfield[16] "exactagain"
-ilscript[].docfield[17] "ts"
-ilscript[].docfield[18] "combineda"
-ilscript[].docfield[19] "combinedb"
-ilscript[].docfield[20] "category"
-ilscript[].content[0] "clear_state | guard { input title . input category | tokenize | summary exact | index exact; }"
-ilscript[].content[1] "clear_state | guard { input location | tokenize normalize stem:\"SHORTEST\" | summary woe | index woe; }"
-ilscript[].content[2] "clear_state | guard { input yEaR | to_array | attribute year_arr; }"
-ilscript[].content[3] "clear_state | guard { input yEaR - 1900 | attribute year_sub; }"
-ilscript[].content[4] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | index title | summary title; }"
-ilscript[].content[5] "clear_state | guard { input dyntitle | tokenize normalize stem:\"SHORTEST\" | summary dyntitle; }"
-ilscript[].content[6] "clear_state | guard { input special1 | tokenize normalize | index special1; }"
-ilscript[].content[7] "clear_state | guard { input special2 | tokenize normalize | index special2; }"
-ilscript[].content[8] "clear_state | guard { input special3 | tokenize normalize | index special3; }"
-ilscript[].content[9] "clear_state | guard { input prefixenabled | tokenize stem:\"SHORTEST\" | index prefixenabled | attribute prefixenabled; }"
-ilscript[].content[10] "clear_state | guard { input source | summary source | index source; }"
-ilscript[].content[11] "clear_state | guard { input docurl | index docurl; }"
-ilscript[].content[12] "clear_state | guard { input fleeting | attribute fleeting; }"
-ilscript[].content[13] "clear_state | guard { input fleeting2 | attribute fleeting2; }"
-ilscript[].content[14] "clear_state | guard { input foundat | attribute foundat; }"
-ilscript[].content[15] "clear_state | guard { input collapseby | attribute collapseby; }"
-ilscript[].content[16] "clear_state | guard { input stringfield | tokenize normalize stem:\"SHORTEST\" | summary stringfield | index stringfield; }"
-ilscript[].content[17] "clear_state | guard { input exactemento | tokenize normalize stem:\"SHORTEST\" | index exactemento; }"
-ilscript[].content[18] "clear_state | guard { input exactagain | tokenize normalize stem:\"SHORTEST\" | index exactagain; }"
-ilscript[].content[19] "clear_state | guard { input ts | attribute ts; }"
-ilscript[].content[20] "clear_state | guard { input combineda | attribute combineda; }"
-ilscript[].content[21] "clear_state | guard { input combinedb | tokenize normalize stem:\"SHORTEST\" | index combinedb; }"
-ilscript[].content[22] "input category | passthrough category"
-ilscript[].content[23] "input location | passthrough location"
-ilscript[].content[24] "input yEaR | passthrough yEaR"
+ilscript[].docfield[] "title"
+ilscript[].docfield[] "location"
+ilscript[].docfield[] "dyntitle"
+ilscript[].docfield[] "special1"
+ilscript[].docfield[] "special2"
+ilscript[].docfield[] "special3"
+ilscript[].docfield[] "prefixenabled"
+ilscript[].docfield[] "source"
+ilscript[].docfield[] "docurl"
+ilscript[].docfield[] "fleeting"
+ilscript[].docfield[] "fleeting2"
+ilscript[].docfield[] "foundat"
+ilscript[].docfield[] "collapseby"
+ilscript[].docfield[] "yEaR"
+ilscript[].docfield[] "stringfield"
+ilscript[].docfield[] "exactemento"
+ilscript[].docfield[] "exactagain"
+ilscript[].docfield[] "ts"
+ilscript[].docfield[] "combineda"
+ilscript[].docfield[] "combinedb"
+ilscript[].docfield[] "category"
+ilscript[].content[] "clear_state | guard { input title . input category | tokenize | summary exact | index exact; }"
+ilscript[].content[] "clear_state | guard { input location | tokenize normalize stem:\"SHORTEST\" | summary woe | index woe; }"
+ilscript[].content[] "clear_state | guard { input yEaR | to_array | attribute year_arr; }"
+ilscript[].content[] "clear_state | guard { input yEaR - 1900 | attribute year_sub; }"
+ilscript[].content[] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | index title | summary title; }"
+ilscript[].content[] "clear_state | guard { input dyntitle | tokenize normalize stem:\"SHORTEST\" | summary dyntitle; }"
+ilscript[].content[] "clear_state | guard { input special1 | tokenize normalize | index special1; }"
+ilscript[].content[] "clear_state | guard { input special2 | tokenize normalize | index special2; }"
+ilscript[].content[] "clear_state | guard { input special3 | tokenize normalize | index special3; }"
+ilscript[].content[] "clear_state | guard { input prefixenabled | tokenize stem:\"SHORTEST\" | index prefixenabled | attribute prefixenabled; }"
+ilscript[].content[] "clear_state | guard { input source | summary source | index source; }"
+ilscript[].content[] "clear_state | guard { input docurl | index docurl; }"
+ilscript[].content[] "clear_state | guard { input fleeting | attribute fleeting; }"
+ilscript[].content[] "clear_state | guard { input fleeting2 | attribute fleeting2; }"
+ilscript[].content[] "clear_state | guard { input foundat | attribute foundat; }"
+ilscript[].content[] "clear_state | guard { input collapseby | attribute collapseby; }"
+ilscript[].content[] "clear_state | guard { input stringfield | tokenize normalize stem:\"SHORTEST\" | summary stringfield | index stringfield; }"
+ilscript[].content[] "clear_state | guard { input exactemento | tokenize normalize stem:\"SHORTEST\" | index exactemento; }"
+ilscript[].content[] "clear_state | guard { input exactagain | tokenize normalize stem:\"SHORTEST\" | index exactagain; }"
+ilscript[].content[] "clear_state | guard { input ts | attribute ts; }"
+ilscript[].content[] "clear_state | guard { input combineda | attribute combineda; }"
+ilscript[].content[] "clear_state | guard { input combinedb | tokenize normalize stem:\"SHORTEST\" | index combinedb; }"
+ilscript[].content[] "input category | passthrough category"
+ilscript[].content[] "input location | passthrough location"
+ilscript[].content[] "input yEaR | passthrough yEaR"
diff --git a/config-model/src/test/derived/deriver/ilscripts.cfg b/config-model/src/test/derived/deriver/ilscripts.cfg
index 749474dc350..8ce9e496ac6 100644
--- a/config-model/src/test/derived/deriver/ilscripts.cfg
+++ b/config-model/src/test/derived/deriver/ilscripts.cfg
@@ -1,8 +1,8 @@
-ilscript[1]
+ilscript[]
ilscript[child].name "child"
ilscript[child].doctype "child"
-ilscript[child].content[4]
-ilscript[child].content[0] "\"child\" | index sddocname | summary sddocname"
-ilscript[child].content[1] "input c | tokenize normalize stem:\"SHORTEST\" | index c"
-ilscript[child].content[2] "input b | tokenize normalize stem:\"SHORTEST\" | index b | summary b"
-ilscript[child].content[3] "input a | tokenize normalize stem:\"SHORTEST\" | index a | attribute a"
+ilscript[child].content[]
+ilscript[child].content[] "\"child\" | index sddocname | summary sddocname"
+ilscript[child].content[] "input c | tokenize normalize stem:\"SHORTEST\" | index c"
+ilscript[child].content[] "input b | tokenize normalize stem:\"SHORTEST\" | index b | summary b"
+ilscript[child].content[] "input a | tokenize normalize stem:\"SHORTEST\" | index a | attribute a"
diff --git a/config-model/src/test/derived/documentderiver/vsmfields.cfg b/config-model/src/test/derived/documentderiver/vsmfields.cfg
index dd5669f0f71..3c969775f5b 100644
--- a/config-model/src/test/derived/documentderiver/vsmfields.cfg
+++ b/config-model/src/test/derived/documentderiver/vsmfields.cfg
@@ -1,4 +1,4 @@
-fieldspec[58]
+fieldspec[]
fieldspec[].name sddocname
fieldspec[].searchmethod AUTOUTF8
fieldspec[].arg1 "exact"
@@ -173,260 +173,260 @@ fieldspec[].arg1 "prefix"
fieldspec[].name attachmentcontent
fieldspec[].searchmethod AUTOUTF8
fieldspec[].arg1 "prefix"
-documenttype[7]
+documenttype[]
documenttype[].name newssummary
-documenttype[].index[24]
+documenttype[].index[]
documenttype[].index[].name sddocname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sddocname
documenttype[].index[].name title
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name title
documenttype[].index[].name titleabstract
-documenttype[].index[].field[2]
+documenttype[].index[].field[]
documenttype[].index[].field[].name title
documenttype[].index[].field[].name abstract
documenttype[].index[].name default
-documenttype[].index[].field[2]
+documenttype[].index[].field[]
documenttype[].index[].field[].name title
documenttype[].index[].field[].name abstract
documenttype[].index[].name abstract
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name abstract
documenttype[].index[].name sourcename
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcename
documenttype[].index[].name source
-documenttype[].index[].field[2]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcename
documenttype[].index[].field[].name providername
documenttype[].index[].name providername
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name providername
documenttype[].index[].name thumburl
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name thumburl
documenttype[].index[].name thumbwidth
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name thumbwidth
documenttype[].index[].name thumbheight
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name thumbheight
documenttype[].index[].name language
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name language
documenttype[].index[].name languages
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name language
documenttype[].index[].name url
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name url
documenttype[].index[].name sourceurl
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourceurl
documenttype[].index[].name categories
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name categories
documenttype[].index[].name pubdate
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name pubdate
documenttype[].index[].name expdate
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name expdate
documenttype[].index[].name fingerprint
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name fingerprint
documenttype[].index[].name debug
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name debug
documenttype[].index[].name attributes
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name attributes
documenttype[].index[].name eustaticrank
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name eustaticrank
documenttype[].index[].name usstaticrank
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name usstaticrank
documenttype[].index[].name asiastaticrank
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name asiastaticrank
documenttype[].name newsarticle
-documenttype[].index[41]
+documenttype[].index[]
documenttype[].index[].name sddocname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sddocname
documenttype[].index[].name title
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name title
documenttype[].index[].name titleabstract
-documenttype[].index[].field[2]
+documenttype[].index[].field[]
documenttype[].index[].field[].name title
documenttype[].index[].field[].name abstract
documenttype[].index[].name default
-documenttype[].index[].field[3]
+documenttype[].index[].field[]
documenttype[].index[].field[].name title
documenttype[].index[].field[].name abstract
documenttype[].index[].field[].name body
documenttype[].index[].name abstract
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name abstract
documenttype[].index[].name sourcename
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcename
documenttype[].index[].name source
-documenttype[].index[].field[3]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcename
documenttype[].index[].field[].name providername
documenttype[].index[].field[].name othersourcenames
documenttype[].index[].name providername
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name providername
documenttype[].index[].name thumburl
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name thumburl
documenttype[].index[].name thumbwidth
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name thumbwidth
documenttype[].index[].name thumbheight
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name thumbheight
documenttype[].index[].name language
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name language
documenttype[].index[].name languages
-documenttype[].index[].field[2]
+documenttype[].index[].field[]
documenttype[].index[].field[].name language
documenttype[].index[].field[].name otherlanguages
documenttype[].index[].name url
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name url
documenttype[].index[].name sourceurl
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourceurl
documenttype[].index[].name categories
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name categories
documenttype[].index[].name pubdate
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name pubdate
documenttype[].index[].name expdate
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name expdate
documenttype[].index[].name fingerprint
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name fingerprint
documenttype[].index[].name debug
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name debug
documenttype[].index[].name attributes
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name attributes
documenttype[].index[].name eustaticrank
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name eustaticrank
documenttype[].index[].name usstaticrank
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name usstaticrank
documenttype[].index[].name asiastaticrank
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name asiastaticrank
documenttype[].index[].name body
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name body
documenttype[].index[].name othersourcenames
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name othersourcenames
documenttype[].index[].name author
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name author
documenttype[].index[].name referrerurl
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name referrerurl
documenttype[].index[].name sourcelocation
-documenttype[].index[].field[4]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcelocation
documenttype[].index[].field[].name sourcecountry
documenttype[].index[].field[].name sourcelocale
documenttype[].index[].field[].name sourcecontinent
documenttype[].index[].name sourcecountry
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcecountry
documenttype[].index[].name sourcelocale
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcelocale
documenttype[].index[].name sourcecontinent
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcecontinent
documenttype[].index[].name articlecountry
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name articlecountry
documenttype[].index[].name articlelocale
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name articlelocale
documenttype[].index[].name articlecontinent
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name articlecontinent
documenttype[].index[].name sourcerank
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcerank
documenttype[].index[].name crawldate
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name crawldate
documenttype[].index[].name indexdate
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name indexdate
documenttype[].index[].name procdate
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name procdate
documenttype[].index[].name sourceid
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourceid
documenttype[].index[].name sourcefeedid
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sourcefeedid
documenttype[].name music
-documenttype[].index[1]
+documenttype[].index[]
documenttype[].index[].name sddocname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sddocname
documenttype[].name mail
-documenttype[].index[21]
+documenttype[].index[]
documenttype[].index[].name sddocname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sddocname
documenttype[].index[].name mailid
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name mailid
documenttype[].index[].name date
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name date
documenttype[].index[].name from
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name from
documenttype[].index[].name sender
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name from
documenttype[].index[].name address
-documenttype[].index[].field[3]
+documenttype[].index[].field[]
documenttype[].index[].field[].name from
documenttype[].index[].field[].name to
documenttype[].index[].field[].name cc
documenttype[].index[].name header
-documenttype[].index[].field[4]
+documenttype[].index[].field[]
documenttype[].index[].field[].name from
documenttype[].index[].field[].name to
documenttype[].index[].field[].name cc
documenttype[].index[].field[].name subject
documenttype[].index[].name default
-documenttype[].index[].field[5]
+documenttype[].index[].field[]
documenttype[].index[].field[].name from
documenttype[].index[].field[].name to
documenttype[].index[].field[].name cc
documenttype[].index[].field[].name subject
documenttype[].index[].field[].name mailbody
documenttype[].index[].name all
-documenttype[].index[].field[8]
+documenttype[].index[].field[]
documenttype[].index[].field[].name from
documenttype[].index[].field[].name to
documenttype[].index[].field[].name cc
@@ -436,54 +436,54 @@ documenttype[].index[].field[].name attachmentnames
documenttype[].index[].field[].name attachmenttypes
documenttype[].index[].field[].name attachmentcontent
documenttype[].index[].name replyto
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name replyto
documenttype[].index[].name to
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name to
documenttype[].index[].name recipient
-documenttype[].index[].field[2]
+documenttype[].index[].field[]
documenttype[].index[].field[].name to
documenttype[].index[].field[].name cc
documenttype[].index[].name cc
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name cc
documenttype[].index[].name bcc
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name bcc
documenttype[].index[].name subject
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name subject
documenttype[].index[].name mailbody
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name mailbody
documenttype[].index[].name attachmentcount
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name attachmentcount
documenttype[].index[].name attachmentname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name attachmentnames
documenttype[].index[].name attachmenttype
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name attachmenttypes
documenttype[].index[].name attachmentlanguages
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name attachmentlanguages
documenttype[].index[].name attachment
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name attachmentcontent
documenttype[].name compressed_header
-documenttype[].index[1]
+documenttype[].index[]
documenttype[].index[].name sddocname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sddocname
documenttype[].name compressed_both
-documenttype[].index[1]
+documenttype[].index[]
documenttype[].index[].name sddocname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sddocname
documenttype[].name compressed_body
-documenttype[].index[1]
+documenttype[].index[]
documenttype[].index[].name sddocname
-documenttype[].index[].field[1]
+documenttype[].index[].field[]
documenttype[].index[].field[].name sddocname
diff --git a/config-model/src/test/derived/documentderiver/vsmsummary.cfg b/config-model/src/test/derived/documentderiver/vsmsummary.cfg
index 7a9846101be..8469c2b39e2 100644
--- a/config-model/src/test/derived/documentderiver/vsmsummary.cfg
+++ b/config-model/src/test/derived/documentderiver/vsmsummary.cfg
@@ -1,6 +1,6 @@
-fieldmap[1]
+fieldmap[]
fieldmap[].summary snippet
-fieldmap[].document[2]
+fieldmap[].document[]
fieldmap[].document[].field body
fieldmap[].document[].field attachmentcontent
fieldmap[].command FLATTENJUNIPER
diff --git a/config-model/src/test/derived/emptydefault/documentmanager.cfg b/config-model/src/test/derived/emptydefault/documentmanager.cfg
index a7359c62c2f..20695652e07 100644
--- a/config-model/src/test/derived/emptydefault/documentmanager.cfg
+++ b/config-model/src/test/derived/emptydefault/documentmanager.cfg
@@ -45,5 +45,5 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 461724009
datatype[].documenttype[].bodystruct 311791038
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "one"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "two"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "one"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "two"
diff --git a/config-model/src/test/derived/emptydefault/ilscripts.cfg b/config-model/src/test/derived/emptydefault/ilscripts.cfg
index 16e9e236eb9..66dbf01d214 100644
--- a/config-model/src/test/derived/emptydefault/ilscripts.cfg
+++ b/config-model/src/test/derived/emptydefault/ilscripts.cfg
@@ -1,7 +1,7 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "emptydefault"
-ilscript[].docfield[0] "one"
-ilscript[].docfield[1] "two"
-ilscript[].content[0] "clear_state | guard { input one | tokenize normalize stem:\"SHORTEST\" | index one; }"
-ilscript[].content[1] "clear_state | guard { input two | tokenize normalize stem:\"SHORTEST\" | index two; }"
+ilscript[].docfield[] "one"
+ilscript[].docfield[] "two"
+ilscript[].content[] "clear_state | guard { input one | tokenize normalize stem:\"SHORTEST\" | index one; }"
+ilscript[].content[] "clear_state | guard { input two | tokenize normalize stem:\"SHORTEST\" | index two; }"
diff --git a/config-model/src/test/derived/exactmatch/ilscripts.cfg b/config-model/src/test/derived/exactmatch/ilscripts.cfg
index 87096fe70d4..38c0978474f 100644
--- a/config-model/src/test/derived/exactmatch/ilscripts.cfg
+++ b/config-model/src/test/derived/exactmatch/ilscripts.cfg
@@ -1,7 +1,7 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "exactmatch"
-ilscript[].docfield[0] "tag"
-ilscript[].docfield[1] "screweduserids"
-ilscript[].content[0] "clear_state | guard { input tag | exact | summary tag | index tag; }"
-ilscript[].content[1] "clear_state | guard { input screweduserids | exact | index screweduserids | summary screweduserids | attribute screweduserids; }"
+ilscript[].docfield[] "tag"
+ilscript[].docfield[] "screweduserids"
+ilscript[].content[] "clear_state | guard { input tag | exact | summary tag | index tag; }"
+ilscript[].content[] "clear_state | guard { input screweduserids | exact | index screweduserids | summary screweduserids | attribute screweduserids; }"
diff --git a/config-model/src/test/derived/fieldlength/attributes.cfg b/config-model/src/test/derived/fieldlength/attributes.cfg
index b26bfcc287e..6b489a93a50 100644
--- a/config-model/src/test/derived/fieldlength/attributes.cfg
+++ b/config-model/src/test/derived/fieldlength/attributes.cfg
@@ -1,4 +1,4 @@
-attribute[1]
+attribute[]
attribute[].name "year"
attribute[].datatype INT32
attribute[].collectiontype SINGLE
diff --git a/config-model/src/test/derived/id/documentmanager.cfg b/config-model/src/test/derived/id/documentmanager.cfg
index d63e5fe9d20..dc9ccf94830 100644
--- a/config-model/src/test/derived/id/documentmanager.cfg
+++ b/config-model/src/test/derived/id/documentmanager.cfg
@@ -42,4 +42,4 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -531633022
datatype[].documenttype[].bodystruct -1830022377
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "uri"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "uri"
diff --git a/config-model/src/test/derived/id/ilscripts.cfg b/config-model/src/test/derived/id/ilscripts.cfg
index 0a78bee80c7..7543c76a12a 100644
--- a/config-model/src/test/derived/id/ilscripts.cfg
+++ b/config-model/src/test/derived/id/ilscripts.cfg
@@ -1,5 +1,5 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "id"
-ilscript[].docfield[0] "uri"
-ilscript[].content[0] "clear_state | guard { input uri | summary uri | index uri; }"
+ilscript[].docfield[] "uri"
+ilscript[].content[] "clear_state | guard { input uri | summary uri | index uri; }"
diff --git a/config-model/src/test/derived/indexinfo_lowercase/index-info.cfg b/config-model/src/test/derived/indexinfo_lowercase/index-info.cfg
index 39b1d92cb9e..54ed9a291af 100644
--- a/config-model/src/test/derived/indexinfo_lowercase/index-info.cfg
+++ b/config-model/src/test/derived/indexinfo_lowercase/index-info.cfg
@@ -159,46 +159,46 @@ indexinfo[].command[].indexname "nc_set6"
indexinfo[].command[].command "plain-tokens"
indexinfo[].command[].indexname "nc_set6"
indexinfo[].command[].command "stem:SHORTEST"
-indexinfo[].command[80].indexname "nc_set6"
-indexinfo[].command[80].command "normalize"
-indexinfo[].command[81].indexname "nc_set7"
-indexinfo[].command[81].command "lowercase"
-indexinfo[].command[82].indexname "nc_set7"
-indexinfo[].command[82].command "index"
-indexinfo[].command[83].indexname "nc_set7"
-indexinfo[].command[83].command "plain-tokens"
-indexinfo[].command[84].indexname "nc_set7"
-indexinfo[].command[84].command "stem:SHORTEST"
-indexinfo[].command[85].indexname "nc_set7"
-indexinfo[].command[85].command "normalize"
-indexinfo[].command[86].indexname "nc_set8"
-indexinfo[].command[86].command "lowercase"
-indexinfo[].command[87].indexname "nc_set8"
-indexinfo[].command[87].command "index"
-indexinfo[].command[88].indexname "nc_set8"
-indexinfo[].command[88].command "plain-tokens"
-indexinfo[].command[89].indexname "nc_set8"
-indexinfo[].command[89].command "stem:SHORTEST"
-indexinfo[].command[90].indexname "nc_set8"
-indexinfo[].command[90].command "normalize"
-indexinfo[].command[91].indexname "nc_set9"
-indexinfo[].command[91].command "lowercase"
-indexinfo[].command[92].indexname "nc_set9"
-indexinfo[].command[92].command "index"
-indexinfo[].command[93].indexname "nc_set9"
-indexinfo[].command[93].command "plain-tokens"
-indexinfo[].command[94].indexname "nc_set9"
-indexinfo[].command[94].command "stem:SHORTEST"
-indexinfo[].command[95].indexname "nc_set9"
-indexinfo[].command[95].command "normalize"
-indexinfo[].command[96].indexname "nc_set10"
-indexinfo[].command[96].command "lowercase"
-indexinfo[].command[97].indexname "nc_set10"
-indexinfo[].command[97].command "attribute"
-indexinfo[].command[98].indexname "nc_set10"
-indexinfo[].command[98].command "index"
-indexinfo[].command[99].indexname "nc_set10"
-indexinfo[].command[99].command "word"
+indexinfo[].command[].indexname "nc_set6"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "nc_set7"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "nc_set7"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "nc_set7"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "nc_set7"
+indexinfo[].command[].command "stem:SHORTEST"
+indexinfo[].command[].indexname "nc_set7"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "nc_set8"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "nc_set8"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "nc_set8"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "nc_set8"
+indexinfo[].command[].command "stem:SHORTEST"
+indexinfo[].command[].indexname "nc_set8"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "nc_set9"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "nc_set9"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "nc_set9"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "nc_set9"
+indexinfo[].command[].command "stem:SHORTEST"
+indexinfo[].command[].indexname "nc_set9"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "nc_set10"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "nc_set10"
+indexinfo[].command[].command "attribute"
+indexinfo[].command[].indexname "nc_set10"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "nc_set10"
+indexinfo[].command[].command "word"
indexinfo[].command[100].indexname "nc_set11"
indexinfo[].command[100].command "lowercase"
indexinfo[].command[101].indexname "nc_set11"
diff --git a/config-model/src/test/derived/indexschema/index-info.cfg b/config-model/src/test/derived/indexschema/index-info.cfg
index 5163f6035da..83c051623e5 100644
--- a/config-model/src/test/derived/indexschema/index-info.cfg
+++ b/config-model/src/test/derived/indexschema/index-info.cfg
@@ -159,46 +159,46 @@ indexinfo[].command[].indexname "nostemstring1"
indexinfo[].command[].command "normalize"
indexinfo[].command[].indexname "nostemstring1"
indexinfo[].command[].command "plain-tokens"
-indexinfo[].command[80].indexname "nostemstring2"
-indexinfo[].command[80].command "index"
-indexinfo[].command[81].indexname "nostemstring2"
-indexinfo[].command[81].command "lowercase"
-indexinfo[].command[82].indexname "nostemstring2"
-indexinfo[].command[82].command "normalize"
-indexinfo[].command[83].indexname "nostemstring2"
-indexinfo[].command[83].command "plain-tokens"
-indexinfo[].command[84].indexname "nostemstring3"
-indexinfo[].command[84].command "index"
-indexinfo[].command[85].indexname "nostemstring3"
-indexinfo[].command[85].command "lowercase"
-indexinfo[].command[86].indexname "nostemstring3"
-indexinfo[].command[86].command "normalize"
-indexinfo[].command[87].indexname "nostemstring3"
-indexinfo[].command[87].command "plain-tokens"
-indexinfo[].command[88].indexname "nostemstring4"
-indexinfo[].command[88].command "index"
-indexinfo[].command[89].indexname "nostemstring4"
-indexinfo[].command[89].command "lowercase"
-indexinfo[].command[90].indexname "nostemstring4"
-indexinfo[].command[90].command "normalize"
-indexinfo[].command[91].indexname "nostemstring4"
-indexinfo[].command[91].command "plain-tokens"
-indexinfo[].command[92].indexname "fs9"
-indexinfo[].command[92].command "index"
-indexinfo[].command[93].indexname "fs9"
-indexinfo[].command[93].command "lowercase"
-indexinfo[].command[94].indexname "fs9"
-indexinfo[].command[94].command "stem:SHORTEST"
-indexinfo[].command[95].indexname "fs9"
-indexinfo[].command[95].command "normalize"
-indexinfo[].command[96].indexname "fs9"
-indexinfo[].command[96].command "plain-tokens"
-indexinfo[].command[97].indexname "f10.text"
-indexinfo[].command[97].command "index"
-indexinfo[].command[98].indexname "f10.text"
-indexinfo[].command[98].command "lowercase"
-indexinfo[].command[99].indexname "f10.text"
-indexinfo[].command[99].command "stem:SHORTEST"
+indexinfo[].command[].indexname "nostemstring2"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "nostemstring2"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "nostemstring2"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "nostemstring2"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "nostemstring3"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "nostemstring3"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "nostemstring3"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "nostemstring3"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "nostemstring4"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "nostemstring4"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "nostemstring4"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "nostemstring4"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "fs9"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "fs9"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "fs9"
+indexinfo[].command[].command "stem:SHORTEST"
+indexinfo[].command[].indexname "fs9"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "fs9"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "f10.text"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "f10.text"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "f10.text"
+indexinfo[].command[].command "stem:SHORTEST"
indexinfo[].command[100].indexname "f10.text"
indexinfo[].command[100].command "normalize"
indexinfo[].command[101].indexname "f10.text"
diff --git a/config-model/src/test/derived/indexswitches/documentmanager.cfg b/config-model/src/test/derived/indexswitches/documentmanager.cfg
index 5a529d3809f..64d429cb2de 100644
--- a/config-model/src/test/derived/indexswitches/documentmanager.cfg
+++ b/config-model/src/test/derived/indexswitches/documentmanager.cfg
@@ -51,8 +51,8 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -555640823
datatype[].documenttype[].bodystruct -1892617122
-datatype[].documenttype[].fieldsets{default}.fields[0] "descr"
-datatype[].documenttype[].fieldsets{default}.fields[1] "title"
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "descr"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "source_src"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "title"
+datatype[].documenttype[].fieldsets{default}.fields[] "descr"
+datatype[].documenttype[].fieldsets{default}.fields[] "title"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "descr"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "source_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "title"
diff --git a/config-model/src/test/derived/indexswitches/ilscripts.cfg b/config-model/src/test/derived/indexswitches/ilscripts.cfg
index e861a65586a..078895a8a48 100644
--- a/config-model/src/test/derived/indexswitches/ilscripts.cfg
+++ b/config-model/src/test/derived/indexswitches/ilscripts.cfg
@@ -1,10 +1,10 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "indexswitches"
-ilscript[].docfield[0] "title"
-ilscript[].docfield[1] "descr"
-ilscript[].docfield[2] "source_src"
-ilscript[].content[0] "clear_state | guard { input source_src | switch { case \"theweb\": input source_src | tokenize normalize | summary source | index source; case \"amg\": input source_src | tokenize normalize | summary source; default: input source_src . \" partner\" | tokenize normalize | summary source | index source; }; }"
-ilscript[].content[1] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
-ilscript[].content[2] "clear_state | guard { input descr | tokenize normalize stem:\"SHORTEST\" | summary descr | index descr; }"
-ilscript[].content[3] "input source_src | passthrough source_src"
+ilscript[].docfield[] "title"
+ilscript[].docfield[] "descr"
+ilscript[].docfield[] "source_src"
+ilscript[].content[] "clear_state | guard { input source_src | switch { case \"theweb\": input source_src | tokenize normalize | summary source | index source; case \"amg\": input source_src | tokenize normalize | summary source; default: input source_src . \" partner\" | tokenize normalize | summary source | index source; }; }"
+ilscript[].content[] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
+ilscript[].content[] "clear_state | guard { input descr | tokenize normalize stem:\"SHORTEST\" | summary descr | index descr; }"
+ilscript[].content[] "input source_src | passthrough source_src"
diff --git a/config-model/src/test/derived/inheritance/documentmanager.cfg b/config-model/src/test/derived/inheritance/documentmanager.cfg
index d24d3fcf9d5..754144c0af9 100644
--- a/config-model/src/test/derived/inheritance/documentmanager.cfg
+++ b/config-model/src/test/derived/inheritance/documentmanager.cfg
@@ -45,8 +45,8 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 990971719
datatype[].documenttype[].bodystruct 978262812
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "onlygrandparent"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "overridden"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlygrandparent"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "overridden"
datatype[].id 1306663898
datatype[].structtype[].name "mother.header"
datatype[].structtype[].version 0
@@ -76,11 +76,11 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 1306663898
datatype[].documenttype[].bodystruct -1989003153
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "onlygrandparent"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "onlymother"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "overridden"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "rankfeatures"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "summaryfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlygrandparent"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlymother"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "overridden"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "rankfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "summaryfeatures"
datatype[].id 2126589281
datatype[].structtype[].name "father.header"
datatype[].structtype[].version 0
@@ -110,11 +110,11 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 2126589281
datatype[].documenttype[].bodystruct -1742340170
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "onlyfather"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "onlygrandparent"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "overridden"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "rankfeatures"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "summaryfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlyfather"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlygrandparent"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "overridden"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "rankfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "summaryfeatures"
datatype[].id 81425825
datatype[].structtype[].name "child.header"
datatype[].structtype[].version 0
@@ -146,10 +146,10 @@ datatype[].documenttype[].inherits[].name "mother"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 81425825
datatype[].documenttype[].bodystruct -126593034
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "onlychild"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "onlyfather"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "onlygrandparent"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "onlymother"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "overridden"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "rankfeatures"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "summaryfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlychild"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlyfather"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlygrandparent"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "onlymother"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "overridden"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "rankfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "summaryfeatures"
diff --git a/config-model/src/test/derived/inheritance/ilscripts.cfg b/config-model/src/test/derived/inheritance/ilscripts.cfg
index 712b158e37e..5856da6992e 100644
--- a/config-model/src/test/derived/inheritance/ilscripts.cfg
+++ b/config-model/src/test/derived/inheritance/ilscripts.cfg
@@ -1,13 +1,13 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "child"
-ilscript[].docfield[0] "onlygrandparent"
-ilscript[].docfield[1] "overridden"
-ilscript[].docfield[2] "onlyfather"
-ilscript[].docfield[3] "onlymother"
-ilscript[].docfield[4] "onlychild"
-ilscript[].content[0] "clear_state | guard { input onlygrandparent | attribute onlygrandparent; }"
-ilscript[].content[1] "clear_state | guard { input overridden | attribute overridden; }"
-ilscript[].content[2] "clear_state | guard { input onlyfather | summary onlyfather; }"
-ilscript[].content[3] "clear_state | guard { input onlymother | tokenize normalize stem:\"SHORTEST\" | attribute onlymother | index onlymother; }"
-ilscript[].content[4] "clear_state | guard { input onlychild | tokenize normalize stem:\"SHORTEST\" | index onlychild; }"
+ilscript[].docfield[] "onlygrandparent"
+ilscript[].docfield[] "overridden"
+ilscript[].docfield[] "onlyfather"
+ilscript[].docfield[] "onlymother"
+ilscript[].docfield[] "onlychild"
+ilscript[].content[] "clear_state | guard { input onlygrandparent | attribute onlygrandparent; }"
+ilscript[].content[] "clear_state | guard { input overridden | attribute overridden; }"
+ilscript[].content[] "clear_state | guard { input onlyfather | summary onlyfather; }"
+ilscript[].content[] "clear_state | guard { input onlymother | tokenize normalize stem:\"SHORTEST\" | attribute onlymother | index onlymother; }"
+ilscript[].content[] "clear_state | guard { input onlychild | tokenize normalize stem:\"SHORTEST\" | index onlychild; }"
diff --git a/config-model/src/test/derived/inheritance/mother/documentmanager.cfg b/config-model/src/test/derived/inheritance/mother/documentmanager.cfg
index 21e65acf67d..287fb84885d 100644
--- a/config-model/src/test/derived/inheritance/mother/documentmanager.cfg
+++ b/config-model/src/test/derived/inheritance/mother/documentmanager.cfg
@@ -1,426 +1,426 @@
enablecompression false
-annotationtype[0]
-datatype[29]
+annotationtype[]
+datatype[]
datatype[-126593034].id -126593034
-datatype[-126593034].annotationreftype[0]
-datatype[-126593034].arraytype[0]
-datatype[-126593034].documenttype[0]
-datatype[-126593034].structtype[1]
+datatype[-126593034].annotationreftype[]
+datatype[-126593034].arraytype[]
+datatype[-126593034].documenttype[]
+datatype[-126593034].structtype[]
datatype[-126593034].structtype[single].name "child.body"
datatype[-126593034].structtype[single].version 0
-datatype[-126593034].structtype[single].field[0]
-datatype[-126593034].structtype[single].inherits[0]
-datatype[-126593034].weightedsettype[0]
+datatype[-126593034].structtype[single].field[]
+datatype[-126593034].structtype[single].inherits[]
+datatype[-126593034].weightedsettype[]
datatype[-141935690].id -141935690
-datatype[-141935690].annotationreftype[0]
-datatype[-141935690].arraytype[0]
-datatype[-141935690].documenttype[0]
-datatype[-141935690].structtype[1]
+datatype[-141935690].annotationreftype[]
+datatype[-141935690].arraytype[]
+datatype[-141935690].documenttype[]
+datatype[-141935690].structtype[]
datatype[-141935690].structtype[single].name "search_smartsummary"
datatype[-141935690].structtype[single].version 0
-datatype[-141935690].structtype[single].field[3]
+datatype[-141935690].structtype[single].field[]
datatype[-141935690].structtype[single].field[abstract].datatype 2
datatype[-141935690].structtype[single].field[abstract].name "abstract"
-datatype[-141935690].structtype[single].field[abstract].id[0]
+datatype[-141935690].structtype[single].field[abstract].id[]
datatype[-141935690].structtype[single].field[dispurl].datatype 2
datatype[-141935690].structtype[single].field[dispurl].name "dispurl"
-datatype[-141935690].structtype[single].field[dispurl].id[0]
+datatype[-141935690].structtype[single].field[dispurl].id[]
datatype[-141935690].structtype[single].field[title].datatype 2
datatype[-141935690].structtype[single].field[title].name "title"
-datatype[-141935690].structtype[single].field[title].id[0]
-datatype[-141935690].structtype[single].inherits[0]
-datatype[-141935690].weightedsettype[0]
+datatype[-141935690].structtype[single].field[title].id[]
+datatype[-141935690].structtype[single].inherits[]
+datatype[-141935690].weightedsettype[]
datatype[-1467672569].id -1467672569
-datatype[-1467672569].annotationreftype[0]
-datatype[-1467672569].arraytype[0]
-datatype[-1467672569].documenttype[0]
-datatype[-1467672569].structtype[1]
+datatype[-1467672569].annotationreftype[]
+datatype[-1467672569].arraytype[]
+datatype[-1467672569].documenttype[]
+datatype[-1467672569].structtype[]
datatype[-1467672569].structtype[single].name "child_search.body"
datatype[-1467672569].structtype[single].version 0
-datatype[-1467672569].structtype[single].field[0]
-datatype[-1467672569].structtype[single].inherits[0]
-datatype[-1467672569].weightedsettype[0]
+datatype[-1467672569].structtype[single].field[]
+datatype[-1467672569].structtype[single].inherits[]
+datatype[-1467672569].weightedsettype[]
datatype[-154107656].id -154107656
-datatype[-154107656].annotationreftype[0]
-datatype[-154107656].arraytype[0]
-datatype[-154107656].documenttype[1]
+datatype[-154107656].annotationreftype[]
+datatype[-154107656].arraytype[]
+datatype[-154107656].documenttype[]
datatype[-154107656].documenttype[single].bodystruct 978262812
datatype[-154107656].documenttype[single].headerstruct 990971719
datatype[-154107656].documenttype[single].name "grandparent"
datatype[-154107656].documenttype[single].version 0
-datatype[-154107656].documenttype[single].inherits[0]
-datatype[-154107656].structtype[0]
-datatype[-154107656].weightedsettype[0]
+datatype[-154107656].documenttype[single].inherits[]
+datatype[-154107656].structtype[]
+datatype[-154107656].weightedsettype[]
datatype[-158393403].id -158393403
-datatype[-158393403].annotationreftype[0]
-datatype[-158393403].arraytype[0]
-datatype[-158393403].documenttype[1]
+datatype[-158393403].annotationreftype[]
+datatype[-158393403].arraytype[]
+datatype[-158393403].documenttype[]
datatype[-158393403].documenttype[single].bodystruct -1989003153
datatype[-158393403].documenttype[single].headerstruct 1306663898
datatype[-158393403].documenttype[single].name "mother"
datatype[-158393403].documenttype[single].version 0
-datatype[-158393403].documenttype[single].inherits[1]
+datatype[-158393403].documenttype[single].inherits[]
datatype[-158393403].documenttype[single].inherits[grandparent].name "grandparent"
datatype[-158393403].documenttype[single].inherits[grandparent].version 0
-datatype[-158393403].structtype[0]
-datatype[-158393403].weightedsettype[0]
+datatype[-158393403].structtype[]
+datatype[-158393403].weightedsettype[]
datatype[-1740240543].id -1740240543
-datatype[-1740240543].annotationreftype[0]
-datatype[-1740240543].arraytype[0]
-datatype[-1740240543].documenttype[0]
-datatype[-1740240543].structtype[1]
+datatype[-1740240543].annotationreftype[]
+datatype[-1740240543].arraytype[]
+datatype[-1740240543].documenttype[]
+datatype[-1740240543].structtype[]
datatype[-1740240543].structtype[single].name "search_feature"
datatype[-1740240543].structtype[single].version 0
-datatype[-1740240543].structtype[single].field[2]
+datatype[-1740240543].structtype[single].field[]
datatype[-1740240543].structtype[single].field[name].datatype 2
datatype[-1740240543].structtype[single].field[name].name "name"
-datatype[-1740240543].structtype[single].field[name].id[0]
+datatype[-1740240543].structtype[single].field[name].id[]
datatype[-1740240543].structtype[single].field[value].datatype 5
datatype[-1740240543].structtype[single].field[value].name "value"
-datatype[-1740240543].structtype[single].field[value].id[0]
-datatype[-1740240543].structtype[single].inherits[0]
-datatype[-1740240543].weightedsettype[0]
+datatype[-1740240543].structtype[single].field[value].id[]
+datatype[-1740240543].structtype[single].inherits[]
+datatype[-1740240543].weightedsettype[]
datatype[-1742340170].id -1742340170
-datatype[-1742340170].annotationreftype[0]
-datatype[-1742340170].arraytype[0]
-datatype[-1742340170].documenttype[0]
-datatype[-1742340170].structtype[1]
+datatype[-1742340170].annotationreftype[]
+datatype[-1742340170].arraytype[]
+datatype[-1742340170].documenttype[]
+datatype[-1742340170].structtype[]
datatype[-1742340170].structtype[single].name "father.body"
datatype[-1742340170].structtype[single].version 0
-datatype[-1742340170].structtype[single].field[0]
-datatype[-1742340170].structtype[single].inherits[0]
-datatype[-1742340170].weightedsettype[0]
+datatype[-1742340170].structtype[single].field[]
+datatype[-1742340170].structtype[single].inherits[]
+datatype[-1742340170].weightedsettype[]
datatype[-1852215954].id -1852215954
-datatype[-1852215954].annotationreftype[0]
-datatype[-1852215954].arraytype[0]
-datatype[-1852215954].documenttype[0]
-datatype[-1852215954].structtype[1]
+datatype[-1852215954].annotationreftype[]
+datatype[-1852215954].arraytype[]
+datatype[-1852215954].documenttype[]
+datatype[-1852215954].structtype[]
datatype[-1852215954].structtype[single].name "mother_search.body"
datatype[-1852215954].structtype[single].version 0
-datatype[-1852215954].structtype[single].field[0]
-datatype[-1852215954].structtype[single].inherits[0]
-datatype[-1852215954].weightedsettype[0]
+datatype[-1852215954].structtype[single].field[]
+datatype[-1852215954].structtype[single].inherits[]
+datatype[-1852215954].weightedsettype[]
datatype[-1962244686].id -1962244686
-datatype[-1962244686].annotationreftype[0]
-datatype[-1962244686].arraytype[0]
-datatype[-1962244686].documenttype[0]
-datatype[-1962244686].structtype[1]
+datatype[-1962244686].annotationreftype[]
+datatype[-1962244686].arraytype[]
+datatype[-1962244686].documenttype[]
+datatype[-1962244686].structtype[]
datatype[-1962244686].structtype[single].name "father_search.header"
datatype[-1962244686].structtype[single].version 0
-datatype[-1962244686].structtype[single].field[5]
+datatype[-1962244686].structtype[single].field[]
datatype[-1962244686].structtype[single].field[onlyfather].datatype 2
datatype[-1962244686].structtype[single].field[onlyfather].name "onlyfather"
-datatype[-1962244686].structtype[single].field[onlyfather].id[0]
+datatype[-1962244686].structtype[single].field[onlyfather].id[]
datatype[-1962244686].structtype[single].field[onlygrandparent].datatype 0
datatype[-1962244686].structtype[single].field[onlygrandparent].name "onlygrandparent"
-datatype[-1962244686].structtype[single].field[onlygrandparent].id[0]
+datatype[-1962244686].structtype[single].field[onlygrandparent].id[]
datatype[-1962244686].structtype[single].field[overridden].datatype 0
datatype[-1962244686].structtype[single].field[overridden].name "overridden"
-datatype[-1962244686].structtype[single].field[overridden].id[0]
+datatype[-1962244686].structtype[single].field[overridden].id[]
datatype[-1962244686].structtype[single].field[rankfeatures].datatype 147991900
datatype[-1962244686].structtype[single].field[rankfeatures].name "rankfeatures"
-datatype[-1962244686].structtype[single].field[rankfeatures].id[0]
+datatype[-1962244686].structtype[single].field[rankfeatures].id[]
datatype[-1962244686].structtype[single].field[summaryfeatures].datatype 147991900
datatype[-1962244686].structtype[single].field[summaryfeatures].name "summaryfeatures"
-datatype[-1962244686].structtype[single].field[summaryfeatures].id[0]
-datatype[-1962244686].structtype[single].inherits[0]
-datatype[-1962244686].weightedsettype[0]
+datatype[-1962244686].structtype[single].field[summaryfeatures].id[]
+datatype[-1962244686].structtype[single].inherits[]
+datatype[-1962244686].weightedsettype[]
datatype[-1989003153].id -1989003153
-datatype[-1989003153].annotationreftype[0]
-datatype[-1989003153].arraytype[0]
-datatype[-1989003153].documenttype[0]
-datatype[-1989003153].structtype[1]
+datatype[-1989003153].annotationreftype[]
+datatype[-1989003153].arraytype[]
+datatype[-1989003153].documenttype[]
+datatype[-1989003153].structtype[]
datatype[-1989003153].structtype[single].name "mother.body"
datatype[-1989003153].structtype[single].version 0
-datatype[-1989003153].structtype[single].field[0]
-datatype[-1989003153].structtype[single].inherits[0]
-datatype[-1989003153].weightedsettype[0]
+datatype[-1989003153].structtype[single].field[]
+datatype[-1989003153].structtype[single].inherits[]
+datatype[-1989003153].weightedsettype[]
datatype[-205818510].id -205818510
-datatype[-205818510].annotationreftype[0]
-datatype[-205818510].arraytype[0]
-datatype[-205818510].documenttype[0]
-datatype[-205818510].structtype[1]
+datatype[-205818510].annotationreftype[]
+datatype[-205818510].arraytype[]
+datatype[-205818510].documenttype[]
+datatype[-205818510].structtype[]
datatype[-205818510].structtype[single].name "child_search.header"
datatype[-205818510].structtype[single].version 0
-datatype[-205818510].structtype[single].field[7]
+datatype[-205818510].structtype[single].field[]
datatype[-205818510].structtype[single].field[onlychild].datatype 2
datatype[-205818510].structtype[single].field[onlychild].name "onlychild"
-datatype[-205818510].structtype[single].field[onlychild].id[0]
+datatype[-205818510].structtype[single].field[onlychild].id[]
datatype[-205818510].structtype[single].field[onlyfather].datatype 2
datatype[-205818510].structtype[single].field[onlyfather].name "onlyfather"
-datatype[-205818510].structtype[single].field[onlyfather].id[0]
+datatype[-205818510].structtype[single].field[onlyfather].id[]
datatype[-205818510].structtype[single].field[onlygrandparent].datatype 0
datatype[-205818510].structtype[single].field[onlygrandparent].name "onlygrandparent"
-datatype[-205818510].structtype[single].field[onlygrandparent].id[0]
+datatype[-205818510].structtype[single].field[onlygrandparent].id[]
datatype[-205818510].structtype[single].field[onlymother].datatype 2
datatype[-205818510].structtype[single].field[onlymother].name "onlymother"
-datatype[-205818510].structtype[single].field[onlymother].id[0]
+datatype[-205818510].structtype[single].field[onlymother].id[]
datatype[-205818510].structtype[single].field[overridden].datatype 0
datatype[-205818510].structtype[single].field[overridden].name "overridden"
-datatype[-205818510].structtype[single].field[overridden].id[0]
+datatype[-205818510].structtype[single].field[overridden].id[]
datatype[-205818510].structtype[single].field[rankfeatures].datatype 147991900
datatype[-205818510].structtype[single].field[rankfeatures].name "rankfeatures"
-datatype[-205818510].structtype[single].field[rankfeatures].id[0]
+datatype[-205818510].structtype[single].field[rankfeatures].id[]
datatype[-205818510].structtype[single].field[summaryfeatures].datatype 147991900
datatype[-205818510].structtype[single].field[summaryfeatures].name "summaryfeatures"
-datatype[-205818510].structtype[single].field[summaryfeatures].id[0]
-datatype[-205818510].structtype[single].inherits[0]
-datatype[-205818510].weightedsettype[0]
+datatype[-205818510].structtype[single].field[summaryfeatures].id[]
+datatype[-205818510].structtype[single].inherits[]
+datatype[-205818510].weightedsettype[]
datatype[-384824039].id -384824039
-datatype[-384824039].annotationreftype[0]
-datatype[-384824039].arraytype[0]
-datatype[-384824039].documenttype[0]
-datatype[-384824039].structtype[1]
+datatype[-384824039].annotationreftype[]
+datatype[-384824039].arraytype[]
+datatype[-384824039].documenttype[]
+datatype[-384824039].structtype[]
datatype[-384824039].structtype[single].name "mother_search.header"
datatype[-384824039].structtype[single].version 0
-datatype[-384824039].structtype[single].field[5]
+datatype[-384824039].structtype[single].field[]
datatype[-384824039].structtype[single].field[onlygrandparent].datatype 0
datatype[-384824039].structtype[single].field[onlygrandparent].name "onlygrandparent"
-datatype[-384824039].structtype[single].field[onlygrandparent].id[0]
+datatype[-384824039].structtype[single].field[onlygrandparent].id[]
datatype[-384824039].structtype[single].field[onlymother].datatype 2
datatype[-384824039].structtype[single].field[onlymother].name "onlymother"
-datatype[-384824039].structtype[single].field[onlymother].id[0]
+datatype[-384824039].structtype[single].field[onlymother].id[]
datatype[-384824039].structtype[single].field[overridden].datatype 0
datatype[-384824039].structtype[single].field[overridden].name "overridden"
-datatype[-384824039].structtype[single].field[overridden].id[0]
+datatype[-384824039].structtype[single].field[overridden].id[]
datatype[-384824039].structtype[single].field[rankfeatures].datatype 147991900
datatype[-384824039].structtype[single].field[rankfeatures].name "rankfeatures"
-datatype[-384824039].structtype[single].field[rankfeatures].id[0]
+datatype[-384824039].structtype[single].field[rankfeatures].id[]
datatype[-384824039].structtype[single].field[summaryfeatures].datatype 147991900
datatype[-384824039].structtype[single].field[summaryfeatures].name "summaryfeatures"
-datatype[-384824039].structtype[single].field[summaryfeatures].id[0]
-datatype[-384824039].structtype[single].inherits[0]
-datatype[-384824039].weightedsettype[0]
+datatype[-384824039].structtype[single].field[summaryfeatures].id[]
+datatype[-384824039].structtype[single].inherits[]
+datatype[-384824039].weightedsettype[]
datatype[-52742073].id -52742073
-datatype[-52742073].annotationreftype[0]
-datatype[-52742073].arraytype[0]
-datatype[-52742073].documenttype[0]
-datatype[-52742073].structtype[1]
+datatype[-52742073].annotationreftype[]
+datatype[-52742073].arraytype[]
+datatype[-52742073].documenttype[]
+datatype[-52742073].structtype[]
datatype[-52742073].structtype[single].name "father_search.body"
datatype[-52742073].structtype[single].version 0
-datatype[-52742073].structtype[single].field[0]
-datatype[-52742073].structtype[single].inherits[0]
-datatype[-52742073].weightedsettype[0]
+datatype[-52742073].structtype[single].field[]
+datatype[-52742073].structtype[single].inherits[]
+datatype[-52742073].weightedsettype[]
datatype[-580592339].id -580592339
-datatype[-580592339].annotationreftype[0]
-datatype[-580592339].arraytype[0]
-datatype[-580592339].documenttype[1]
+datatype[-580592339].annotationreftype[]
+datatype[-580592339].arraytype[]
+datatype[-580592339].documenttype[]
datatype[-580592339].documenttype[single].bodystruct -1467672569
datatype[-580592339].documenttype[single].headerstruct -205818510
datatype[-580592339].documenttype[single].name "child_search"
datatype[-580592339].documenttype[single].version 0
-datatype[-580592339].documenttype[single].inherits[0]
-datatype[-580592339].structtype[0]
-datatype[-580592339].weightedsettype[0]
+datatype[-580592339].documenttype[single].inherits[]
+datatype[-580592339].structtype[]
+datatype[-580592339].weightedsettype[]
datatype[-876064862].id -876064862
-datatype[-876064862].annotationreftype[0]
-datatype[-876064862].arraytype[0]
-datatype[-876064862].documenttype[0]
-datatype[-876064862].structtype[1]
+datatype[-876064862].annotationreftype[]
+datatype[-876064862].arraytype[]
+datatype[-876064862].documenttype[]
+datatype[-876064862].structtype[]
datatype[-876064862].structtype[single].name "search_position"
datatype[-876064862].structtype[single].version 0
-datatype[-876064862].structtype[single].field[2]
+datatype[-876064862].structtype[single].field[]
datatype[-876064862].structtype[single].field[x].datatype 0
datatype[-876064862].structtype[single].field[x].name "x"
-datatype[-876064862].structtype[single].field[x].id[0]
+datatype[-876064862].structtype[single].field[x].id[]
datatype[-876064862].structtype[single].field[y].datatype 0
datatype[-876064862].structtype[single].field[y].name "y"
-datatype[-876064862].structtype[single].field[y].id[0]
-datatype[-876064862].structtype[single].inherits[0]
-datatype[-876064862].weightedsettype[0]
+datatype[-876064862].structtype[single].field[y].id[]
+datatype[-876064862].structtype[single].inherits[]
+datatype[-876064862].weightedsettype[]
datatype[1306663898].id 1306663898
-datatype[1306663898].annotationreftype[0]
-datatype[1306663898].arraytype[0]
-datatype[1306663898].documenttype[0]
-datatype[1306663898].structtype[1]
+datatype[1306663898].annotationreftype[]
+datatype[1306663898].arraytype[]
+datatype[1306663898].documenttype[]
+datatype[1306663898].structtype[]
datatype[1306663898].structtype[single].name "mother.header"
datatype[1306663898].structtype[single].version 0
-datatype[1306663898].structtype[single].field[1]
+datatype[1306663898].structtype[single].field[]
datatype[1306663898].structtype[single].field[onlymother].datatype 2
datatype[1306663898].structtype[single].field[onlymother].name "onlymother"
-datatype[1306663898].structtype[single].field[onlymother].id[0]
-datatype[1306663898].structtype[single].inherits[0]
-datatype[1306663898].weightedsettype[0]
+datatype[1306663898].structtype[single].field[onlymother].id[]
+datatype[1306663898].structtype[single].inherits[]
+datatype[1306663898].weightedsettype[]
datatype[1464571117].id 1464571117
-datatype[1464571117].annotationreftype[0]
-datatype[1464571117].arraytype[0]
-datatype[1464571117].documenttype[1]
+datatype[1464571117].annotationreftype[]
+datatype[1464571117].arraytype[]
+datatype[1464571117].documenttype[]
datatype[1464571117].documenttype[single].bodystruct -52742073
datatype[1464571117].documenttype[single].headerstruct -1962244686
datatype[1464571117].documenttype[single].name "father_search"
datatype[1464571117].documenttype[single].version 0
-datatype[1464571117].documenttype[single].inherits[0]
-datatype[1464571117].structtype[0]
-datatype[1464571117].weightedsettype[0]
+datatype[1464571117].documenttype[single].inherits[]
+datatype[1464571117].structtype[]
+datatype[1464571117].weightedsettype[]
datatype[147991900].id 147991900
-datatype[147991900].annotationreftype[0]
-datatype[147991900].arraytype[1]
+datatype[147991900].annotationreftype[]
+datatype[147991900].arraytype[]
datatype[147991900].arraytype[single].datatype -1740240543
-datatype[147991900].documenttype[0]
-datatype[147991900].structtype[0]
-datatype[147991900].weightedsettype[0]
+datatype[147991900].documenttype[]
+datatype[147991900].structtype[]
+datatype[147991900].weightedsettype[]
datatype[1530060044].id 1530060044
-datatype[1530060044].annotationreftype[0]
-datatype[1530060044].arraytype[0]
-datatype[1530060044].documenttype[0]
-datatype[1530060044].structtype[1]
+datatype[1530060044].annotationreftype[]
+datatype[1530060044].arraytype[]
+datatype[1530060044].documenttype[]
+datatype[1530060044].structtype[]
datatype[1530060044].structtype[single].name "grandparent_search.header"
datatype[1530060044].structtype[single].version 0
-datatype[1530060044].structtype[single].field[4]
+datatype[1530060044].structtype[single].field[]
datatype[1530060044].structtype[single].field[onlygrandparent].datatype 0
datatype[1530060044].structtype[single].field[onlygrandparent].name "onlygrandparent"
-datatype[1530060044].structtype[single].field[onlygrandparent].id[0]
+datatype[1530060044].structtype[single].field[onlygrandparent].id[]
datatype[1530060044].structtype[single].field[overridden].datatype 0
datatype[1530060044].structtype[single].field[overridden].name "overridden"
-datatype[1530060044].structtype[single].field[overridden].id[0]
+datatype[1530060044].structtype[single].field[overridden].id[]
datatype[1530060044].structtype[single].field[rankfeatures].datatype 147991900
datatype[1530060044].structtype[single].field[rankfeatures].name "rankfeatures"
-datatype[1530060044].structtype[single].field[rankfeatures].id[0]
+datatype[1530060044].structtype[single].field[rankfeatures].id[]
datatype[1530060044].structtype[single].field[summaryfeatures].datatype 147991900
datatype[1530060044].structtype[single].field[summaryfeatures].name "summaryfeatures"
-datatype[1530060044].structtype[single].field[summaryfeatures].id[0]
-datatype[1530060044].structtype[single].inherits[0]
-datatype[1530060044].weightedsettype[0]
+datatype[1530060044].structtype[single].field[summaryfeatures].id[]
+datatype[1530060044].structtype[single].inherits[]
+datatype[1530060044].weightedsettype[]
datatype[1845861921].id 1845861921
-datatype[1845861921].annotationreftype[0]
-datatype[1845861921].arraytype[0]
-datatype[1845861921].documenttype[0]
-datatype[1845861921].structtype[1]
+datatype[1845861921].annotationreftype[]
+datatype[1845861921].arraytype[]
+datatype[1845861921].documenttype[]
+datatype[1845861921].structtype[]
datatype[1845861921].structtype[single].name "grandparent_search.body"
datatype[1845861921].structtype[single].version 0
-datatype[1845861921].structtype[single].field[0]
-datatype[1845861921].structtype[single].inherits[0]
-datatype[1845861921].weightedsettype[0]
+datatype[1845861921].structtype[single].field[]
+datatype[1845861921].structtype[single].inherits[]
+datatype[1845861921].weightedsettype[]
datatype[2126589281].id 2126589281
-datatype[2126589281].annotationreftype[0]
-datatype[2126589281].arraytype[0]
-datatype[2126589281].documenttype[0]
-datatype[2126589281].structtype[1]
+datatype[2126589281].annotationreftype[]
+datatype[2126589281].arraytype[]
+datatype[2126589281].documenttype[]
+datatype[2126589281].structtype[]
datatype[2126589281].structtype[single].name "father.header"
datatype[2126589281].structtype[single].version 0
-datatype[2126589281].structtype[single].field[1]
+datatype[2126589281].structtype[single].field[]
datatype[2126589281].structtype[single].field[onlyfather].datatype 2
datatype[2126589281].structtype[single].field[onlyfather].name "onlyfather"
-datatype[2126589281].structtype[single].field[onlyfather].id[0]
-datatype[2126589281].structtype[single].inherits[0]
-datatype[2126589281].weightedsettype[0]
+datatype[2126589281].structtype[single].field[onlyfather].id[]
+datatype[2126589281].structtype[single].inherits[]
+datatype[2126589281].weightedsettype[]
datatype[328953555].id 328953555
-datatype[328953555].annotationreftype[0]
-datatype[328953555].arraytype[0]
-datatype[328953555].documenttype[1]
+datatype[328953555].annotationreftype[]
+datatype[328953555].arraytype[]
+datatype[328953555].documenttype[]
datatype[328953555].documenttype[single].bodystruct 1845861921
datatype[328953555].documenttype[single].headerstruct 1530060044
datatype[328953555].documenttype[single].name "grandparent_search"
datatype[328953555].documenttype[single].version 0
-datatype[328953555].documenttype[single].inherits[0]
-datatype[328953555].structtype[0]
-datatype[328953555].weightedsettype[0]
+datatype[328953555].documenttype[single].inherits[]
+datatype[328953555].structtype[]
+datatype[328953555].weightedsettype[]
datatype[464784087].id 464784087
-datatype[464784087].annotationreftype[0]
-datatype[464784087].arraytype[0]
-datatype[464784087].documenttype[0]
-datatype[464784087].structtype[1]
+datatype[464784087].annotationreftype[]
+datatype[464784087].arraytype[]
+datatype[464784087].documenttype[]
+datatype[464784087].structtype[]
datatype[464784087].structtype[single].name "search_uri"
datatype[464784087].structtype[single].version 0
-datatype[464784087].structtype[single].field[7]
+datatype[464784087].structtype[single].field[]
datatype[464784087].structtype[single].field[all].datatype 2
datatype[464784087].structtype[single].field[all].name "all"
-datatype[464784087].structtype[single].field[all].id[0]
+datatype[464784087].structtype[single].field[all].id[]
datatype[464784087].structtype[single].field[fragment].datatype 2
datatype[464784087].structtype[single].field[fragment].name "fragment"
-datatype[464784087].structtype[single].field[fragment].id[0]
+datatype[464784087].structtype[single].field[fragment].id[]
datatype[464784087].structtype[single].field[host].datatype 2
datatype[464784087].structtype[single].field[host].name "host"
-datatype[464784087].structtype[single].field[host].id[0]
+datatype[464784087].structtype[single].field[host].id[]
datatype[464784087].structtype[single].field[path].datatype 2
datatype[464784087].structtype[single].field[path].name "path"
-datatype[464784087].structtype[single].field[path].id[0]
+datatype[464784087].structtype[single].field[path].id[]
datatype[464784087].structtype[single].field[port].datatype 0
datatype[464784087].structtype[single].field[port].name "port"
-datatype[464784087].structtype[single].field[port].id[0]
+datatype[464784087].structtype[single].field[port].id[]
datatype[464784087].structtype[single].field[query].datatype 2
datatype[464784087].structtype[single].field[query].name "query"
-datatype[464784087].structtype[single].field[query].id[0]
+datatype[464784087].structtype[single].field[query].id[]
datatype[464784087].structtype[single].field[scheme].datatype 2
datatype[464784087].structtype[single].field[scheme].name "scheme"
-datatype[464784087].structtype[single].field[scheme].id[0]
-datatype[464784087].structtype[single].inherits[0]
-datatype[464784087].weightedsettype[0]
+datatype[464784087].structtype[single].field[scheme].id[]
+datatype[464784087].structtype[single].inherits[]
+datatype[464784087].weightedsettype[]
datatype[644645734].id 644645734
-datatype[644645734].annotationreftype[0]
-datatype[644645734].arraytype[0]
-datatype[644645734].documenttype[1]
+datatype[644645734].annotationreftype[]
+datatype[644645734].arraytype[]
+datatype[644645734].documenttype[]
datatype[644645734].documenttype[single].bodystruct -1852215954
datatype[644645734].documenttype[single].headerstruct -384824039
datatype[644645734].documenttype[single].name "mother_search"
datatype[644645734].documenttype[single].version 0
-datatype[644645734].documenttype[single].inherits[0]
-datatype[644645734].structtype[0]
-datatype[644645734].weightedsettype[0]
+datatype[644645734].documenttype[single].inherits[]
+datatype[644645734].structtype[]
+datatype[644645734].weightedsettype[]
datatype[746267614].id 746267614
-datatype[746267614].annotationreftype[0]
-datatype[746267614].arraytype[0]
-datatype[746267614].documenttype[1]
+datatype[746267614].annotationreftype[]
+datatype[746267614].arraytype[]
+datatype[746267614].documenttype[]
datatype[746267614].documenttype[single].bodystruct -126593034
datatype[746267614].documenttype[single].headerstruct 81425825
datatype[746267614].documenttype[single].name "child"
datatype[746267614].documenttype[single].version 0
-datatype[746267614].documenttype[single].inherits[2]
+datatype[746267614].documenttype[single].inherits[]
datatype[746267614].documenttype[single].inherits[father].name "father"
datatype[746267614].documenttype[single].inherits[father].version 0
datatype[746267614].documenttype[single].inherits[mother].name "mother"
datatype[746267614].documenttype[single].inherits[mother].version 0
-datatype[746267614].structtype[0]
-datatype[746267614].weightedsettype[0]
+datatype[746267614].structtype[]
+datatype[746267614].weightedsettype[]
datatype[81425825].id 81425825
-datatype[81425825].annotationreftype[0]
-datatype[81425825].arraytype[0]
-datatype[81425825].documenttype[0]
-datatype[81425825].structtype[1]
+datatype[81425825].annotationreftype[]
+datatype[81425825].arraytype[]
+datatype[81425825].documenttype[]
+datatype[81425825].structtype[]
datatype[81425825].structtype[single].name "child.header"
datatype[81425825].structtype[single].version 0
-datatype[81425825].structtype[single].field[1]
+datatype[81425825].structtype[single].field[]
datatype[81425825].structtype[single].field[onlychild].datatype 2
datatype[81425825].structtype[single].field[onlychild].name "onlychild"
-datatype[81425825].structtype[single].field[onlychild].id[0]
-datatype[81425825].structtype[single].inherits[0]
-datatype[81425825].weightedsettype[0]
+datatype[81425825].structtype[single].field[onlychild].id[]
+datatype[81425825].structtype[single].inherits[]
+datatype[81425825].weightedsettype[]
datatype[978262812].id 978262812
-datatype[978262812].annotationreftype[0]
-datatype[978262812].arraytype[0]
-datatype[978262812].documenttype[0]
-datatype[978262812].structtype[1]
+datatype[978262812].annotationreftype[]
+datatype[978262812].arraytype[]
+datatype[978262812].documenttype[]
+datatype[978262812].structtype[]
datatype[978262812].structtype[single].name "grandparent.body"
datatype[978262812].structtype[single].version 0
-datatype[978262812].structtype[single].field[0]
-datatype[978262812].structtype[single].inherits[0]
-datatype[978262812].weightedsettype[0]
+datatype[978262812].structtype[single].field[]
+datatype[978262812].structtype[single].inherits[]
+datatype[978262812].weightedsettype[]
datatype[986686494].id 986686494
-datatype[986686494].annotationreftype[0]
-datatype[986686494].arraytype[0]
-datatype[986686494].documenttype[1]
+datatype[986686494].annotationreftype[]
+datatype[986686494].arraytype[]
+datatype[986686494].documenttype[]
datatype[986686494].documenttype[single].bodystruct -1742340170
datatype[986686494].documenttype[single].headerstruct 2126589281
datatype[986686494].documenttype[single].name "father"
datatype[986686494].documenttype[single].version 0
-datatype[986686494].documenttype[single].inherits[1]
+datatype[986686494].documenttype[single].inherits[]
datatype[986686494].documenttype[single].inherits[grandparent].name "grandparent"
datatype[986686494].documenttype[single].inherits[grandparent].version 0
-datatype[986686494].structtype[0]
-datatype[986686494].weightedsettype[0]
+datatype[986686494].structtype[]
+datatype[986686494].weightedsettype[]
datatype[990971719].id 990971719
-datatype[990971719].annotationreftype[0]
-datatype[990971719].arraytype[0]
-datatype[990971719].documenttype[0]
-datatype[990971719].structtype[1]
+datatype[990971719].annotationreftype[]
+datatype[990971719].arraytype[]
+datatype[990971719].documenttype[]
+datatype[990971719].structtype[]
datatype[990971719].structtype[single].name "grandparent.header"
datatype[990971719].structtype[single].version 0
-datatype[990971719].structtype[single].field[2]
+datatype[990971719].structtype[single].field[]
datatype[990971719].structtype[single].field[onlygrandparent].datatype 0
datatype[990971719].structtype[single].field[onlygrandparent].name "onlygrandparent"
-datatype[990971719].structtype[single].field[onlygrandparent].id[0]
+datatype[990971719].structtype[single].field[onlygrandparent].id[]
datatype[990971719].structtype[single].field[overridden].datatype 0
datatype[990971719].structtype[single].field[overridden].name "overridden"
-datatype[990971719].structtype[single].field[overridden].id[0]
-datatype[990971719].structtype[single].inherits[0]
-datatype[990971719].weightedsettype[0]
+datatype[990971719].structtype[single].field[overridden].id[]
+datatype[990971719].structtype[single].inherits[]
+datatype[990971719].weightedsettype[]
diff --git a/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg b/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg
index 518debee7c7..97babb77bd1 100644
--- a/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg
+++ b/config-model/src/test/derived/inheritfromgrandparent/documentmanager.cfg
@@ -72,8 +72,8 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 836075987
datatype[].documenttype[].bodystruct -389494616
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "rankfeatures"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "summaryfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "rankfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "summaryfeatures"
datatype[].id 81425825
datatype[].structtype[].name "child.header"
datatype[].structtype[].version 0
@@ -100,6 +100,6 @@ datatype[].documenttype[].inherits[].name "parent"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 81425825
datatype[].documenttype[].bodystruct -126593034
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "child_field"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "rankfeatures"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "summaryfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "child_field"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "rankfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "summaryfeatures"
diff --git a/config-model/src/test/derived/inheritfromparent/documentmanager.cfg b/config-model/src/test/derived/inheritfromparent/documentmanager.cfg
index 9d1b933558e..6f99d9de53b 100644
--- a/config-model/src/test/derived/inheritfromparent/documentmanager.cfg
+++ b/config-model/src/test/derived/inheritfromparent/documentmanager.cfg
@@ -55,7 +55,7 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 836075987
datatype[].documenttype[].bodystruct -389494616
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "weight_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "weight_src"
datatype[].id 81425825
datatype[].structtype[].name "child.header"
datatype[].structtype[].version 0
@@ -82,8 +82,8 @@ datatype[].documenttype[].inherits[].name "parent"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 81425825
datatype[].documenttype[].bodystruct -126593034
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "child_field"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "rankfeatures"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "summaryfeatures"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "weight"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "weight_src"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "child_field"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "rankfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "summaryfeatures"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "weight"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "weight_src"
diff --git a/config-model/src/test/derived/inheritfromparent/documenttypes.cfg b/config-model/src/test/derived/inheritfromparent/documenttypes.cfg
index 75390903ef8..d8493eefe95 100644
--- a/config-model/src/test/derived/inheritfromparent/documenttypes.cfg
+++ b/config-model/src/test/derived/inheritfromparent/documenttypes.cfg
@@ -75,7 +75,7 @@ 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{[document]}.fields[0] "weight_src"
+documenttype[].fieldsets{[document]}.fields[] "weight_src"
documenttype[].id 746267614
documenttype[].name "child"
documenttype[].version 0
@@ -118,8 +118,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{[document]}.fields[0] "child_field"
-documenttype[].fieldsets{[document]}.fields[1] "rankfeatures"
-documenttype[].fieldsets{[document]}.fields[2] "summaryfeatures"
-documenttype[].fieldsets{[document]}.fields[3] "weight"
-documenttype[].fieldsets{[document]}.fields[4] "weight_src"
+documenttype[].fieldsets{[document]}.fields[] "child_field"
+documenttype[].fieldsets{[document]}.fields[] "rankfeatures"
+documenttype[].fieldsets{[document]}.fields[] "summaryfeatures"
+documenttype[].fieldsets{[document]}.fields[] "weight"
+documenttype[].fieldsets{[document]}.fields[] "weight_src"
diff --git a/config-model/src/test/derived/mail/documentmanager.cfg b/config-model/src/test/derived/mail/documentmanager.cfg
index 06bbe23dc01..accc0ba9578 100644
--- a/config-model/src/test/derived/mail/documentmanager.cfg
+++ b/config-model/src/test/derived/mail/documentmanager.cfg
@@ -71,45 +71,45 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -88808602
datatype[].documenttype[].bodystruct -953584901
-datatype[].documenttype[].fieldsets{sender}.fields[0] "from"
-datatype[].documenttype[].fieldsets{address}.fields[0] "cc"
-datatype[].documenttype[].fieldsets{address}.fields[1] "from"
-datatype[].documenttype[].fieldsets{address}.fields[2] "to"
-datatype[].documenttype[].fieldsets{header}.fields[0] "cc"
-datatype[].documenttype[].fieldsets{header}.fields[1] "from"
-datatype[].documenttype[].fieldsets{header}.fields[2] "subject"
-datatype[].documenttype[].fieldsets{header}.fields[3] "to"
-datatype[].documenttype[].fieldsets{default}.fields[0] "body"
-datatype[].documenttype[].fieldsets{default}.fields[1] "cc"
-datatype[].documenttype[].fieldsets{default}.fields[2] "from"
-datatype[].documenttype[].fieldsets{default}.fields[3] "subject"
-datatype[].documenttype[].fieldsets{default}.fields[4] "to"
-datatype[].documenttype[].fieldsets{all}.fields[0] "attachmentcontent"
-datatype[].documenttype[].fieldsets{all}.fields[1] "attachmentnames"
-datatype[].documenttype[].fieldsets{all}.fields[2] "attachmenttypes"
-datatype[].documenttype[].fieldsets{all}.fields[3] "body"
-datatype[].documenttype[].fieldsets{all}.fields[4] "cc"
-datatype[].documenttype[].fieldsets{all}.fields[5] "from"
-datatype[].documenttype[].fieldsets{all}.fields[6] "subject"
-datatype[].documenttype[].fieldsets{all}.fields[7] "to"
-datatype[].documenttype[].fieldsets{recipient}.fields[0] "cc"
-datatype[].documenttype[].fieldsets{recipient}.fields[1] "to"
-datatype[].documenttype[].fieldsets{attachmentname}.fields[0] "attachmentnames"
-datatype[].documenttype[].fieldsets{attachmenttype}.fields[0] "attachmenttypes"
-datatype[].documenttype[].fieldsets{attachment}.fields[0] "attachmentcontent"
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "URI"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "attachmentcontent"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "attachmentcount"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "attachmentlanguages"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "attachmentnames"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "attachments"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "attachmenttypes"
-datatype[].documenttype[].fieldsets{[document]}.fields[7] "bcc"
-datatype[].documenttype[].fieldsets{[document]}.fields[8] "body"
-datatype[].documenttype[].fieldsets{[document]}.fields[9] "cc"
-datatype[].documenttype[].fieldsets{[document]}.fields[10] "date"
-datatype[].documenttype[].fieldsets{[document]}.fields[11] "from"
-datatype[].documenttype[].fieldsets{[document]}.fields[12] "mailid"
-datatype[].documenttype[].fieldsets{[document]}.fields[13] "replyto"
-datatype[].documenttype[].fieldsets{[document]}.fields[14] "subject"
-datatype[].documenttype[].fieldsets{[document]}.fields[15] "to"
+datatype[].documenttype[].fieldsets{sender}.fields[] "from"
+datatype[].documenttype[].fieldsets{address}.fields[] "cc"
+datatype[].documenttype[].fieldsets{address}.fields[] "from"
+datatype[].documenttype[].fieldsets{address}.fields[] "to"
+datatype[].documenttype[].fieldsets{header}.fields[] "cc"
+datatype[].documenttype[].fieldsets{header}.fields[] "from"
+datatype[].documenttype[].fieldsets{header}.fields[] "subject"
+datatype[].documenttype[].fieldsets{header}.fields[] "to"
+datatype[].documenttype[].fieldsets{default}.fields[] "body"
+datatype[].documenttype[].fieldsets{default}.fields[] "cc"
+datatype[].documenttype[].fieldsets{default}.fields[] "from"
+datatype[].documenttype[].fieldsets{default}.fields[] "subject"
+datatype[].documenttype[].fieldsets{default}.fields[] "to"
+datatype[].documenttype[].fieldsets{all}.fields[] "attachmentcontent"
+datatype[].documenttype[].fieldsets{all}.fields[] "attachmentnames"
+datatype[].documenttype[].fieldsets{all}.fields[] "attachmenttypes"
+datatype[].documenttype[].fieldsets{all}.fields[] "body"
+datatype[].documenttype[].fieldsets{all}.fields[] "cc"
+datatype[].documenttype[].fieldsets{all}.fields[] "from"
+datatype[].documenttype[].fieldsets{all}.fields[] "subject"
+datatype[].documenttype[].fieldsets{all}.fields[] "to"
+datatype[].documenttype[].fieldsets{recipient}.fields[] "cc"
+datatype[].documenttype[].fieldsets{recipient}.fields[] "to"
+datatype[].documenttype[].fieldsets{attachmentname}.fields[] "attachmentnames"
+datatype[].documenttype[].fieldsets{attachmenttype}.fields[] "attachmenttypes"
+datatype[].documenttype[].fieldsets{attachment}.fields[] "attachmentcontent"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "URI"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attachmentcontent"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attachmentcount"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attachmentlanguages"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attachmentnames"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attachments"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attachmenttypes"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "bcc"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "body"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "cc"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "date"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "from"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "mailid"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "replyto"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "subject"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "to"
diff --git a/config-model/src/test/derived/mail/ilscripts.cfg b/config-model/src/test/derived/mail/ilscripts.cfg
index b31866ee358..d6422472e97 100644
--- a/config-model/src/test/derived/mail/ilscripts.cfg
+++ b/config-model/src/test/derived/mail/ilscripts.cfg
@@ -1,33 +1,33 @@
ilscript[].doctype "mail"
-ilscript[].docfield[0] "URI"
-ilscript[].docfield[1] "mailid"
-ilscript[].docfield[2] "date"
-ilscript[].docfield[3] "from"
-ilscript[].docfield[4] "replyto"
-ilscript[].docfield[5] "to"
-ilscript[].docfield[6] "cc"
-ilscript[].docfield[7] "bcc"
-ilscript[].docfield[8] "subject"
-ilscript[].docfield[9] "body"
-ilscript[].docfield[10] "attachmentcount"
-ilscript[].docfield[11] "attachmentnames"
-ilscript[].docfield[12] "attachmenttypes"
-ilscript[].docfield[13] "attachmentlanguages"
-ilscript[].docfield[14] "attachmentcontent"
-ilscript[].docfield[15] "attachments"
-ilscript[].content[0] "clear_state | guard { (input body | to_string) . (input attachmentcontent | to_string) | tokenize normalize | summary snippet; }"
-ilscript[].content[1] "clear_state | guard { input URI | summary URI; }"
-ilscript[].content[2] "clear_state | guard { input mailid | tokenize normalize | summary mailid | index mailid; }"
-ilscript[].content[3] "clear_state | guard { input date | summary date | attribute date; }"
-ilscript[].content[4] "clear_state | guard { input from | tokenize normalize | summary from | index from; }"
-ilscript[].content[5] "clear_state | guard { input replyto | summary replyto | index replyto; }"
-ilscript[].content[6] "clear_state | guard { input to | tokenize normalize | summary to | index to; }"
-ilscript[].content[7] "clear_state | guard { input cc | tokenize normalize | index cc; }"
-ilscript[].content[8] "clear_state | guard { input bcc | tokenize normalize | index bcc; }"
-ilscript[].content[9] "clear_state | guard { input subject | tokenize normalize | summary subject | index subject; }"
-ilscript[].content[10] "clear_state | guard { input body | summary body | index body; }"
-ilscript[].content[11] "clear_state | guard { input attachmentcount | summary attachmentcount | attribute attachmentcount; }"
-ilscript[].content[12] "clear_state | guard { input attachmentnames | tokenize normalize | index attachmentnames; }"
-ilscript[].content[13] "clear_state | guard { input attachmenttypes | tokenize normalize | index attachmenttypes; }"
-ilscript[].content[14] "clear_state | guard { input attachmentlanguages | tokenize normalize | index attachmentlanguages; }"
-ilscript[].content[15] "clear_state | guard { input attachmentcontent | tokenize normalize | summary attachmentcontent | index attachmentcontent; }"
+ilscript[].docfield[] "URI"
+ilscript[].docfield[] "mailid"
+ilscript[].docfield[] "date"
+ilscript[].docfield[] "from"
+ilscript[].docfield[] "replyto"
+ilscript[].docfield[] "to"
+ilscript[].docfield[] "cc"
+ilscript[].docfield[] "bcc"
+ilscript[].docfield[] "subject"
+ilscript[].docfield[] "body"
+ilscript[].docfield[] "attachmentcount"
+ilscript[].docfield[] "attachmentnames"
+ilscript[].docfield[] "attachmenttypes"
+ilscript[].docfield[] "attachmentlanguages"
+ilscript[].docfield[] "attachmentcontent"
+ilscript[].docfield[] "attachments"
+ilscript[].content[] "clear_state | guard { (input body | to_string) . (input attachmentcontent | to_string) | tokenize normalize | summary snippet; }"
+ilscript[].content[] "clear_state | guard { input URI | summary URI; }"
+ilscript[].content[] "clear_state | guard { input mailid | tokenize normalize | summary mailid | index mailid; }"
+ilscript[].content[] "clear_state | guard { input date | summary date | attribute date; }"
+ilscript[].content[] "clear_state | guard { input from | tokenize normalize | summary from | index from; }"
+ilscript[].content[] "clear_state | guard { input replyto | summary replyto | index replyto; }"
+ilscript[].content[] "clear_state | guard { input to | tokenize normalize | summary to | index to; }"
+ilscript[].content[] "clear_state | guard { input cc | tokenize normalize | index cc; }"
+ilscript[].content[] "clear_state | guard { input bcc | tokenize normalize | index bcc; }"
+ilscript[].content[] "clear_state | guard { input subject | tokenize normalize | summary subject | index subject; }"
+ilscript[].content[] "clear_state | guard { input body | summary body | index body; }"
+ilscript[].content[] "clear_state | guard { input attachmentcount | summary attachmentcount | attribute attachmentcount; }"
+ilscript[].content[] "clear_state | guard { input attachmentnames | tokenize normalize | index attachmentnames; }"
+ilscript[].content[] "clear_state | guard { input attachmenttypes | tokenize normalize | index attachmenttypes; }"
+ilscript[].content[] "clear_state | guard { input attachmentlanguages | tokenize normalize | index attachmentlanguages; }"
+ilscript[].content[] "clear_state | guard { input attachmentcontent | tokenize normalize | summary attachmentcontent | index attachmentcontent; }"
diff --git a/config-model/src/test/derived/multiplesummaries/attributes.cfg b/config-model/src/test/derived/multiplesummaries/attributes.cfg
index 5fbe4486849..bb202d85394 100644
--- a/config-model/src/test/derived/multiplesummaries/attributes.cfg
+++ b/config-model/src/test/derived/multiplesummaries/attributes.cfg
@@ -1,4 +1,4 @@
-attribute[5]
+attribute[]
attribute[a].collectiontype SINGLE
attribute[a].datatype STRING
attribute[a].name "a"
diff --git a/config-model/src/test/derived/multiplesummaries/ilscripts.cfg b/config-model/src/test/derived/multiplesummaries/ilscripts.cfg
index 08b6d0f0b04..19ecfedc4b0 100644
--- a/config-model/src/test/derived/multiplesummaries/ilscripts.cfg
+++ b/config-model/src/test/derived/multiplesummaries/ilscripts.cfg
@@ -1,15 +1,15 @@
-ilscript[1]
+ilscript[]
ilscript[multiplesummaries].doctype "multiplesummaries"
ilscript[multiplesummaries].name "multiplesummaries"
-ilscript[multiplesummaries].content[11]
-ilscript[multiplesummaries].content[0] "clear_state | guard { input a | tokenize normalize stem:\"SHORTEST\" | summary abolded2 | summary aboldeddynamic | summary adynamic2 | attribute a }"
-ilscript[multiplesummaries].content[1] "clear_state | guard { input adynamic | tokenize normalize stem:\"SHORTEST\" | summary adynamic | attribute adynamic }"
-ilscript[multiplesummaries].content[2] "clear_state | guard { input abolded | tokenize normalize stem:\"SHORTEST\" | summary abolded | attribute abolded }"
-ilscript[multiplesummaries].content[3] "clear_state | guard { input b | summary b }"
-ilscript[multiplesummaries].content[4] "clear_state | guard { input c | summary c | attribute c }"
-ilscript[multiplesummaries].content[5] "clear_state | guard { input d | tokenize normalize stem:\"SHORTEST\" | summary d }"
-ilscript[multiplesummaries].content[6] "clear_state | guard { input e | tokenize normalize stem:\"SHORTEST\" | summary dynamice }"
-ilscript[multiplesummaries].content[7] "clear_state | guard { input f | summary f }"
-ilscript[multiplesummaries].content[8] "clear_state | guard { input g | summary g }"
-ilscript[multiplesummaries].content[9] "clear_state | guard { input h | summary h }"
-ilscript[multiplesummaries].content[10] "clear_state | guard { input loc | to_pos | zcurve | attribute loc_pos_zcurve }"
+ilscript[multiplesummaries].content[]
+ilscript[multiplesummaries].content[] "clear_state | guard { input a | tokenize normalize stem:\"SHORTEST\" | summary abolded2 | summary aboldeddynamic | summary adynamic2 | attribute a }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input adynamic | tokenize normalize stem:\"SHORTEST\" | summary adynamic | attribute adynamic }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input abolded | tokenize normalize stem:\"SHORTEST\" | summary abolded | attribute abolded }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input b | summary b }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input c | summary c | attribute c }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input d | tokenize normalize stem:\"SHORTEST\" | summary d }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input e | tokenize normalize stem:\"SHORTEST\" | summary dynamice }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input f | summary f }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input g | summary g }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input h | summary h }"
+ilscript[multiplesummaries].content[] "clear_state | guard { input loc | to_pos | zcurve | attribute loc_pos_zcurve }"
diff --git a/config-model/src/test/derived/multiplesummaries/index-info.cfg b/config-model/src/test/derived/multiplesummaries/index-info.cfg
index 083c53fb5fb..1bf31a01d51 100644
--- a/config-model/src/test/derived/multiplesummaries/index-info.cfg
+++ b/config-model/src/test/derived/multiplesummaries/index-info.cfg
@@ -1,27 +1,27 @@
-indexinfo[1]
+indexinfo[]
indexinfo[multiplesummaries].name "multiplesummaries"
-indexinfo[multiplesummaries].alias[0]
-indexinfo[multiplesummaries].command[29]
-indexinfo[multiplesummaries].command[00].command "index"
-indexinfo[multiplesummaries].command[00].indexname "sddocname"
-indexinfo[multiplesummaries].command[01].command "word"
-indexinfo[multiplesummaries].command[01].indexname "sddocname"
-indexinfo[multiplesummaries].command[02].command "index"
-indexinfo[multiplesummaries].command[02].indexname "a"
-indexinfo[multiplesummaries].command[03].command "attribute"
-indexinfo[multiplesummaries].command[03].indexname "a"
-indexinfo[multiplesummaries].command[04].command "index"
-indexinfo[multiplesummaries].command[04].indexname "adynamic"
-indexinfo[multiplesummaries].command[05].command "attribute"
-indexinfo[multiplesummaries].command[05].indexname "adynamic"
-indexinfo[multiplesummaries].command[06].command "index"
-indexinfo[multiplesummaries].command[06].indexname "abolded"
-indexinfo[multiplesummaries].command[07].command "attribute"
-indexinfo[multiplesummaries].command[07].indexname "abolded"
-indexinfo[multiplesummaries].command[08].command "index"
-indexinfo[multiplesummaries].command[08].indexname "b"
-indexinfo[multiplesummaries].command[09].command "index"
-indexinfo[multiplesummaries].command[09].indexname "c"
+indexinfo[multiplesummaries].alias[]
+indexinfo[multiplesummaries].command[]
+indexinfo[multiplesummaries].command[].command "index"
+indexinfo[multiplesummaries].command[].indexname "sddocname"
+indexinfo[multiplesummaries].command[].command "word"
+indexinfo[multiplesummaries].command[].indexname "sddocname"
+indexinfo[multiplesummaries].command[].command "index"
+indexinfo[multiplesummaries].command[].indexname "a"
+indexinfo[multiplesummaries].command[].command "attribute"
+indexinfo[multiplesummaries].command[].indexname "a"
+indexinfo[multiplesummaries].command[].command "index"
+indexinfo[multiplesummaries].command[].indexname "adynamic"
+indexinfo[multiplesummaries].command[].command "attribute"
+indexinfo[multiplesummaries].command[].indexname "adynamic"
+indexinfo[multiplesummaries].command[].command "index"
+indexinfo[multiplesummaries].command[].indexname "abolded"
+indexinfo[multiplesummaries].command[].command "attribute"
+indexinfo[multiplesummaries].command[].indexname "abolded"
+indexinfo[multiplesummaries].command[].command "index"
+indexinfo[multiplesummaries].command[].indexname "b"
+indexinfo[multiplesummaries].command[].command "index"
+indexinfo[multiplesummaries].command[].indexname "c"
indexinfo[multiplesummaries].command[].command "attribute"
indexinfo[multiplesummaries].command[].indexname "c"
indexinfo[multiplesummaries].command[].command "index"
diff --git a/config-model/src/test/derived/multiplesummaries/juniperrc.cfg b/config-model/src/test/derived/multiplesummaries/juniperrc.cfg
index 79d57c7519c..a08fc07ad8d 100644
--- a/config-model/src/test/derived/multiplesummaries/juniperrc.cfg
+++ b/config-model/src/test/derived/multiplesummaries/juniperrc.cfg
@@ -1,5 +1,5 @@
prefix true
-override[3]
+override[]
override[abolded].fieldname "abolded"
override[abolded].length 65536
override[abolded].max_matches 1
diff --git a/config-model/src/test/derived/multiplesummaries/summary.cfg b/config-model/src/test/derived/multiplesummaries/summary.cfg
index e282afebf39..a71df5ef30a 100644
--- a/config-model/src/test/derived/multiplesummaries/summary.cfg
+++ b/config-model/src/test/derived/multiplesummaries/summary.cfg
@@ -1,8 +1,8 @@
defaultsummaryid 235127765
-classes[12]
+classes[]
classes[1156201411].id 1156201411
classes[1156201411].name "attributeprefetch"
-classes[1156201411].fields[5]
+classes[1156201411].fields[]
classes[1156201411].fields[a].name "a"
classes[1156201411].fields[a].type "longstring"
classes[1156201411].fields[c].name "c"
@@ -15,7 +15,7 @@ classes[1156201411].fields[summaryfeatures].name "summaryfeatures"
classes[1156201411].fields[summaryfeatures].type "longstring"
classes[1277791169].id 1277791169
classes[1277791169].name "notattributesonly2"
-classes[1277791169].fields[4]
+classes[1277791169].fields[]
classes[1277791169].fields[adynamic2].name "adynamic2"
classes[1277791169].fields[adynamic2].type "longstring"
classes[1277791169].fields[c].name "c"
@@ -26,7 +26,7 @@ classes[1277791169].fields[summaryfeatures].name "summaryfeatures"
classes[1277791169].fields[summaryfeatures].type "longstring"
classes[1280967808].id 1280967808
classes[1280967808].name "attributesonly2"
-classes[1280967808].fields[5]
+classes[1280967808].fields[]
classes[1280967808].fields[anotdynamic].name "anotdynamic"
classes[1280967808].fields[anotdynamic].type "longstring"
classes[1280967808].fields[c].name "c"
@@ -39,7 +39,7 @@ classes[1280967808].fields[summaryfeatures].name "summaryfeatures"
classes[1280967808].fields[summaryfeatures].type "longstring"
classes[1334083320].id 1334083320
classes[1334083320].name "third"
-classes[1334083320].fields[9]
+classes[1334083320].fields[]
classes[1334083320].fields[a].name "a"
classes[1334083320].fields[a].type "longstring"
classes[1334083320].fields[adynamic].name "adynamic"
@@ -60,7 +60,7 @@ classes[1334083320].fields[summaryfeatures].name "summaryfeatures"
classes[1334083320].fields[summaryfeatures].type "longstring"
classes[1439192258].id 1439192258
classes[1439192258].name "second"
-classes[1439192258].fields[6]
+classes[1439192258].fields[]
classes[1439192258].fields[a].name "a"
classes[1439192258].fields[a].type "longstring"
classes[1439192258].fields[adynamic].name "adynamic"
@@ -75,7 +75,7 @@ classes[1439192258].fields[summaryfeatures].name "summaryfeatures"
classes[1439192258].fields[summaryfeatures].type "longstring"
classes[1653275739].id 1653275739
classes[1653275739].name "attributesonly3"
-classes[1653275739].fields[5]
+classes[1653275739].fields[]
classes[1653275739].fields[a].name "a"
classes[1653275739].fields[a].type "longstring"
classes[1653275739].fields[anotbolded].name "anotbolded"
@@ -88,7 +88,7 @@ classes[1653275739].fields[summaryfeatures].name "summaryfeatures"
classes[1653275739].fields[summaryfeatures].type "longstring"
classes[182001096].id 182001096
classes[182001096].name "notattributesonly1"
-classes[182001096].fields[4]
+classes[182001096].fields[]
classes[182001096].fields[adynamic].name "adynamic"
classes[182001096].fields[adynamic].type "longstring"
classes[182001096].fields[c].name "c"
@@ -99,7 +99,7 @@ classes[182001096].fields[summaryfeatures].name "summaryfeatures"
classes[182001096].fields[summaryfeatures].type "longstring"
classes[1881063334].id 1881063334
classes[1881063334].name "notattributesonly4"
-classes[1881063334].fields[4]
+classes[1881063334].fields[]
classes[1881063334].fields[abolded2].name "abolded2"
classes[1881063334].fields[abolded2].type "longstring"
classes[1881063334].fields[c].name "c"
@@ -110,7 +110,7 @@ classes[1881063334].fields[summaryfeatures].name "summaryfeatures"
classes[1881063334].fields[summaryfeatures].type "longstring"
classes[1988966242].id 1988966242
classes[1988966242].name "attributesonly1"
-classes[1988966242].fields[4]
+classes[1988966242].fields[]
classes[1988966242].fields[a].name "a"
classes[1988966242].fields[a].type "longstring"
classes[1988966242].fields[c].name "c"
@@ -121,7 +121,7 @@ classes[1988966242].fields[summaryfeatures].name "summaryfeatures"
classes[1988966242].fields[summaryfeatures].type "longstring"
classes[235127765].id 235127765
classes[235127765].name "multiplesummaries"
-classes[235127765].fields[20]
+classes[235127765].fields[]
classes[235127765].fields[a].name "a"
classes[235127765].fields[a].type "longstring"
classes[235127765].fields[abolded].name "abolded"
@@ -164,7 +164,7 @@ classes[235127765].fields[summaryfeatures].name "summaryfeatures"
classes[235127765].fields[summaryfeatures].type "longstring"
classes[803323247].id 803323247
classes[803323247].name "notattributesonly3"
-classes[803323247].fields[4]
+classes[803323247].fields[]
classes[803323247].fields[a].name "a"
classes[803323247].fields[a].type "longstring"
classes[803323247].fields[d].name "d"
@@ -175,7 +175,7 @@ classes[803323247].fields[summaryfeatures].name "summaryfeatures"
classes[803323247].fields[summaryfeatures].type "longstring"
classes[937467944].id 937467944
classes[937467944].name "notattributesonly5"
-classes[937467944].fields[4]
+classes[937467944].fields[]
classes[937467944].fields[aboldeddynamic].name "aboldeddynamic"
classes[937467944].fields[aboldeddynamic].type "longstring"
classes[937467944].fields[c].name "c"
diff --git a/config-model/src/test/derived/multiplesummaries/summarymap.cfg b/config-model/src/test/derived/multiplesummaries/summarymap.cfg
index 430715062c8..74c78de117f 100644
--- a/config-model/src/test/derived/multiplesummaries/summarymap.cfg
+++ b/config-model/src/test/derived/multiplesummaries/summarymap.cfg
@@ -1,5 +1,5 @@
defaultoutputclass -1
-override[16]
+override[]
override[a].arguments "a"
override[a].command "attribute"
override[a].field "a"
diff --git a/config-model/src/test/derived/music/ilscripts.cfg b/config-model/src/test/derived/music/ilscripts.cfg
index 2c7affa35d2..bbac0fff10c 100644
--- a/config-model/src/test/derived/music/ilscripts.cfg
+++ b/config-model/src/test/derived/music/ilscripts.cfg
@@ -1,77 +1,77 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "music"
-ilscript[].docfield[0] "bgndata"
-ilscript[].docfield[1] "sales"
-ilscript[].docfield[2] "pto"
-ilscript[].docfield[3] "keys"
-ilscript[].docfield[4] "mid"
-ilscript[].docfield[5] "ew"
-ilscript[].docfield[6] "surl"
-ilscript[].docfield[7] "userrate"
-ilscript[].docfield[8] "pid"
-ilscript[].docfield[9] "weight"
-ilscript[].docfield[10] "url"
-ilscript[].docfield[11] "isbn"
-ilscript[].docfield[12] "fmt"
-ilscript[].docfield[13] "albumid"
-ilscript[].docfield[14] "disp_song"
-ilscript[].docfield[15] "song"
-ilscript[].docfield[16] "pfrom"
-ilscript[].docfield[17] "bgnpfrom"
-ilscript[].docfield[18] "categories"
-ilscript[].docfield[19] "data"
-ilscript[].docfield[20] "numreview"
-ilscript[].docfield[21] "bgnsellers"
-ilscript[].docfield[22] "image"
-ilscript[].docfield[23] "artist"
-ilscript[].docfield[24] "artistspid"
-ilscript[].docfield[25] "title"
-ilscript[].docfield[26] "newestedition"
-ilscript[].docfield[27] "bgnpto"
-ilscript[].docfield[28] "year"
-ilscript[].docfield[29] "did"
-ilscript[].docfield[30] "scorekey"
-ilscript[].docfield[31] "cbid"
-ilscript[].docfield[32] "metalvalue"
-ilscript[].docfield[33] "hiphopvalue"
-ilscript[].docfield[34] "powermetalvalue"
-ilscript[].docfield[35] "progvalue"
-ilscript[].content[0] "clear_state | guard { input hiphopvalue | split \";\" | attribute hiphopvalue_arr; }"
-ilscript[].content[1] "clear_state | guard { input metalvalue | split \";\" | attribute metalvalue_arr; }"
-ilscript[].content[2] "clear_state | guard { input bgndata | tokenize normalize stem:\"SHORTEST\" | summary bgndata; }"
-ilscript[].content[3] "clear_state | guard { input sales | summary sales | attribute sales; }"
-ilscript[].content[4] "clear_state | guard { input pto | summary pto | attribute pto; }"
-ilscript[].content[5] "clear_state | guard { input keys | tokenize normalize stem:\"SHORTEST\" | index keys; }"
-ilscript[].content[6] "clear_state | guard { input mid | summary mid | attribute mid; }"
-ilscript[].content[7] "clear_state | guard { input ew | tokenize normalize stem:\"SHORTEST\" | summary ew | index ew; }"
-ilscript[].content[8] "clear_state | guard { input surl | summary surl; }"
-ilscript[].content[9] "clear_state | guard { input userrate | summary userrate; }"
-ilscript[].content[10] "clear_state | guard { input pid | summary pid; }"
-ilscript[].content[11] "clear_state | guard { input weight | summary weight | attribute weight; }"
-ilscript[].content[12] "clear_state | guard { input url | summary url; }"
-ilscript[].content[13] "clear_state | guard { input isbn | summary isbn; }"
-ilscript[].content[14] "clear_state | guard { input fmt | tokenize normalize stem:\"SHORTEST\" | summary fmt | index fmt; }"
-ilscript[].content[15] "clear_state | guard { input albumid | summary albumid; }"
-ilscript[].content[16] "clear_state | guard { input disp_song | summary disp_song; }"
-ilscript[].content[17] "clear_state | guard { input song | tokenize normalize stem:\"SHORTEST\" | summary song | index song; }"
-ilscript[].content[18] "clear_state | guard { input pfrom | summary pfrom; }"
-ilscript[].content[19] "clear_state | guard { input bgnpfrom | summary bgnpfrom | attribute bgnpfrom; }"
-ilscript[].content[20] "clear_state | guard { input categories | tokenize normalize stem:\"SHORTEST\" | summary categories | index categories; }"
-ilscript[].content[21] "clear_state | guard { input data | summary data; }"
-ilscript[].content[22] "clear_state | guard { input numreview | summary numreview; }"
-ilscript[].content[23] "clear_state | guard { input bgnsellers | summary bgnsellers; }"
-ilscript[].content[24] "clear_state | guard { input image | summary image; }"
-ilscript[].content[25] "clear_state | guard { input artist | tokenize normalize stem:\"SHORTEST\" | summary artist | index artist; }"
-ilscript[].content[26] "clear_state | guard { input artistspid | summary artistspid; }"
-ilscript[].content[27] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
-ilscript[].content[28] "clear_state | guard { input newestedition | summary newestedition | attribute newestedition; }"
-ilscript[].content[29] "clear_state | guard { input bgnpto | tokenize normalize stem:\"SHORTEST\" | summary bgnpto; }"
-ilscript[].content[30] "clear_state | guard { input year | summary year | attribute year; }"
-ilscript[].content[31] "clear_state | guard { input did | summary did | attribute did; }"
-ilscript[].content[32] "clear_state | guard { input scorekey | summary scorekey; }"
-ilscript[].content[33] "clear_state | guard { input cbid | summary cbid | attribute cbid; }"
-ilscript[].content[34] "clear_state | guard { input metalvalue | summary metalvalue; }"
-ilscript[].content[35] "clear_state | guard { input hiphopvalue | summary hiphopvalue; }"
-ilscript[].content[36] "clear_state | guard { input powermetalvalue | tokenize normalize stem:\"SHORTEST\" | index powermetalvalue | summary powermetalvalue; }"
-ilscript[].content[37] "clear_state | guard { input progvalue | tokenize normalize stem:\"SHORTEST\" | index progvalue | summary progvalue; }"
+ilscript[].docfield[] "bgndata"
+ilscript[].docfield[] "sales"
+ilscript[].docfield[] "pto"
+ilscript[].docfield[] "keys"
+ilscript[].docfield[] "mid"
+ilscript[].docfield[] "ew"
+ilscript[].docfield[] "surl"
+ilscript[].docfield[] "userrate"
+ilscript[].docfield[] "pid"
+ilscript[].docfield[] "weight"
+ilscript[].docfield[] "url"
+ilscript[].docfield[] "isbn"
+ilscript[].docfield[] "fmt"
+ilscript[].docfield[] "albumid"
+ilscript[].docfield[] "disp_song"
+ilscript[].docfield[] "song"
+ilscript[].docfield[] "pfrom"
+ilscript[].docfield[] "bgnpfrom"
+ilscript[].docfield[] "categories"
+ilscript[].docfield[] "data"
+ilscript[].docfield[] "numreview"
+ilscript[].docfield[] "bgnsellers"
+ilscript[].docfield[] "image"
+ilscript[].docfield[] "artist"
+ilscript[].docfield[] "artistspid"
+ilscript[].docfield[] "title"
+ilscript[].docfield[] "newestedition"
+ilscript[].docfield[] "bgnpto"
+ilscript[].docfield[] "year"
+ilscript[].docfield[] "did"
+ilscript[].docfield[] "scorekey"
+ilscript[].docfield[] "cbid"
+ilscript[].docfield[] "metalvalue"
+ilscript[].docfield[] "hiphopvalue"
+ilscript[].docfield[] "powermetalvalue"
+ilscript[].docfield[] "progvalue"
+ilscript[].content[] "clear_state | guard { input hiphopvalue | split \";\" | attribute hiphopvalue_arr; }"
+ilscript[].content[] "clear_state | guard { input metalvalue | split \";\" | attribute metalvalue_arr; }"
+ilscript[].content[] "clear_state | guard { input bgndata | tokenize normalize stem:\"SHORTEST\" | summary bgndata; }"
+ilscript[].content[] "clear_state | guard { input sales | summary sales | attribute sales; }"
+ilscript[].content[] "clear_state | guard { input pto | summary pto | attribute pto; }"
+ilscript[].content[] "clear_state | guard { input keys | tokenize normalize stem:\"SHORTEST\" | index keys; }"
+ilscript[].content[] "clear_state | guard { input mid | summary mid | attribute mid; }"
+ilscript[].content[] "clear_state | guard { input ew | tokenize normalize stem:\"SHORTEST\" | summary ew | index ew; }"
+ilscript[].content[] "clear_state | guard { input surl | summary surl; }"
+ilscript[].content[] "clear_state | guard { input userrate | summary userrate; }"
+ilscript[].content[] "clear_state | guard { input pid | summary pid; }"
+ilscript[].content[] "clear_state | guard { input weight | summary weight | attribute weight; }"
+ilscript[].content[] "clear_state | guard { input url | summary url; }"
+ilscript[].content[] "clear_state | guard { input isbn | summary isbn; }"
+ilscript[].content[] "clear_state | guard { input fmt | tokenize normalize stem:\"SHORTEST\" | summary fmt | index fmt; }"
+ilscript[].content[] "clear_state | guard { input albumid | summary albumid; }"
+ilscript[].content[] "clear_state | guard { input disp_song | summary disp_song; }"
+ilscript[].content[] "clear_state | guard { input song | tokenize normalize stem:\"SHORTEST\" | summary song | index song; }"
+ilscript[].content[] "clear_state | guard { input pfrom | summary pfrom; }"
+ilscript[].content[] "clear_state | guard { input bgnpfrom | summary bgnpfrom | attribute bgnpfrom; }"
+ilscript[].content[] "clear_state | guard { input categories | tokenize normalize stem:\"SHORTEST\" | summary categories | index categories; }"
+ilscript[].content[] "clear_state | guard { input data | summary data; }"
+ilscript[].content[] "clear_state | guard { input numreview | summary numreview; }"
+ilscript[].content[] "clear_state | guard { input bgnsellers | summary bgnsellers; }"
+ilscript[].content[] "clear_state | guard { input image | summary image; }"
+ilscript[].content[] "clear_state | guard { input artist | tokenize normalize stem:\"SHORTEST\" | summary artist | index artist; }"
+ilscript[].content[] "clear_state | guard { input artistspid | summary artistspid; }"
+ilscript[].content[] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
+ilscript[].content[] "clear_state | guard { input newestedition | summary newestedition | attribute newestedition; }"
+ilscript[].content[] "clear_state | guard { input bgnpto | tokenize normalize stem:\"SHORTEST\" | summary bgnpto; }"
+ilscript[].content[] "clear_state | guard { input year | summary year | attribute year; }"
+ilscript[].content[] "clear_state | guard { input did | summary did | attribute did; }"
+ilscript[].content[] "clear_state | guard { input scorekey | summary scorekey; }"
+ilscript[].content[] "clear_state | guard { input cbid | summary cbid | attribute cbid; }"
+ilscript[].content[] "clear_state | guard { input metalvalue | summary metalvalue; }"
+ilscript[].content[] "clear_state | guard { input hiphopvalue | summary hiphopvalue; }"
+ilscript[].content[] "clear_state | guard { input powermetalvalue | tokenize normalize stem:\"SHORTEST\" | index powermetalvalue | summary powermetalvalue; }"
+ilscript[].content[] "clear_state | guard { input progvalue | tokenize normalize stem:\"SHORTEST\" | index progvalue | summary progvalue; }"
diff --git a/config-model/src/test/derived/music/index-info.cfg b/config-model/src/test/derived/music/index-info.cfg
index 9d4102a88cf..65e6e0e3de3 100644
--- a/config-model/src/test/derived/music/index-info.cfg
+++ b/config-model/src/test/derived/music/index-info.cfg
@@ -159,46 +159,46 @@ indexinfo[].command[].indexname "did"
indexinfo[].command[].command "attribute"
indexinfo[].command[].indexname "did"
indexinfo[].command[].command "numerical"
-indexinfo[].command[80].indexname "scorekey"
-indexinfo[].command[80].command "index"
-indexinfo[].command[81].indexname "scorekey"
-indexinfo[].command[81].command "numerical"
-indexinfo[].command[82].indexname "cbid"
-indexinfo[].command[82].command "index"
-indexinfo[].command[83].indexname "cbid"
-indexinfo[].command[83].command "attribute"
-indexinfo[].command[84].indexname "cbid"
-indexinfo[].command[84].command "numerical"
-indexinfo[].command[85].indexname "metalvalue"
-indexinfo[].command[85].command "index"
-indexinfo[].command[86].indexname "hiphopvalue"
-indexinfo[].command[86].command "index"
-indexinfo[].command[87].indexname "powermetalvalue"
-indexinfo[].command[87].command "index"
-indexinfo[].command[88].indexname "powermetalvalue"
-indexinfo[].command[88].command "lowercase"
-indexinfo[].command[89].indexname "powermetalvalue"
-indexinfo[].command[89].command "stem:SHORTEST"
-indexinfo[].command[90].indexname "powermetalvalue"
-indexinfo[].command[90].command "normalize"
-indexinfo[].command[91].indexname "powermetalvalue"
-indexinfo[].command[91].command "plain-tokens"
-indexinfo[].command[92].indexname "progvalue"
-indexinfo[].command[92].command "index"
-indexinfo[].command[93].indexname "progvalue"
-indexinfo[].command[93].command "lowercase"
-indexinfo[].command[94].indexname "progvalue"
-indexinfo[].command[94].command "stem:SHORTEST"
-indexinfo[].command[95].indexname "progvalue"
-indexinfo[].command[95].command "normalize"
-indexinfo[].command[96].indexname "progvalue"
-indexinfo[].command[96].command "plain-tokens"
-indexinfo[].command[97].indexname "hiphopvalue_arr"
-indexinfo[].command[97].command "index"
-indexinfo[].command[98].indexname "hiphopvalue_arr"
-indexinfo[].command[98].command "multivalue"
-indexinfo[].command[99].indexname "hiphopvalue_arr"
-indexinfo[].command[99].command "attribute"
+indexinfo[].command[].indexname "scorekey"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "scorekey"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "cbid"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "cbid"
+indexinfo[].command[].command "attribute"
+indexinfo[].command[].indexname "cbid"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "metalvalue"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "hiphopvalue"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "powermetalvalue"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "powermetalvalue"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "powermetalvalue"
+indexinfo[].command[].command "stem:SHORTEST"
+indexinfo[].command[].indexname "powermetalvalue"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "powermetalvalue"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "progvalue"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "progvalue"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "progvalue"
+indexinfo[].command[].command "stem:SHORTEST"
+indexinfo[].command[].indexname "progvalue"
+indexinfo[].command[].command "normalize"
+indexinfo[].command[].indexname "progvalue"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "hiphopvalue_arr"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "hiphopvalue_arr"
+indexinfo[].command[].command "multivalue"
+indexinfo[].command[].indexname "hiphopvalue_arr"
+indexinfo[].command[].command "attribute"
indexinfo[].command[100].indexname "hiphopvalue_arr"
indexinfo[].command[100].command "word"
indexinfo[].command[101].indexname "metalvalue_arr"
diff --git a/config-model/src/test/derived/newrank/ilscripts.cfg b/config-model/src/test/derived/newrank/ilscripts.cfg
index 11fc1b310a1..6194e66ee33 100644
--- a/config-model/src/test/derived/newrank/ilscripts.cfg
+++ b/config-model/src/test/derived/newrank/ilscripts.cfg
@@ -1,67 +1,67 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "newrank"
-ilscript[].docfield[0] "bgndata"
-ilscript[].docfield[1] "sales"
-ilscript[].docfield[2] "pto"
-ilscript[].docfield[3] "keys"
-ilscript[].docfield[4] "mid"
-ilscript[].docfield[5] "ew"
-ilscript[].docfield[6] "surl"
-ilscript[].docfield[7] "userrate"
-ilscript[].docfield[8] "pid"
-ilscript[].docfield[9] "weight"
-ilscript[].docfield[10] "url"
-ilscript[].docfield[11] "isbn"
-ilscript[].docfield[12] "fmt"
-ilscript[].docfield[13] "albumid"
-ilscript[].docfield[14] "disp_song"
-ilscript[].docfield[15] "song"
-ilscript[].docfield[16] "pfrom"
-ilscript[].docfield[17] "bgnpfrom"
-ilscript[].docfield[18] "categories"
-ilscript[].docfield[19] "data"
-ilscript[].docfield[20] "numreview"
-ilscript[].docfield[21] "bgnsellers"
-ilscript[].docfield[22] "image"
-ilscript[].docfield[23] "artist"
-ilscript[].docfield[24] "artistspid"
-ilscript[].docfield[25] "title"
-ilscript[].docfield[26] "newestedition"
-ilscript[].docfield[27] "bgnpto"
-ilscript[].docfield[28] "year"
-ilscript[].docfield[29] "did"
-ilscript[].docfield[30] "scorekey"
-ilscript[].docfield[31] "cbid"
-ilscript[].content[0] "clear_state | guard { input bgndata | tokenize normalize stem:\"SHORTEST\" | summary bgndata; }"
-ilscript[].content[1] "clear_state | guard { input sales | summary sales | attribute sales; }"
-ilscript[].content[2] "clear_state | guard { input pto | summary pto | attribute pto; }"
-ilscript[].content[3] "clear_state | guard { input keys | tokenize normalize stem:\"SHORTEST\" | index keys; }"
-ilscript[].content[4] "clear_state | guard { input mid | summary mid | attribute mid; }"
-ilscript[].content[5] "clear_state | guard { input ew | tokenize normalize stem:\"SHORTEST\" | summary ew | index ew; }"
-ilscript[].content[6] "clear_state | guard { input surl | summary surl; }"
-ilscript[].content[7] "clear_state | guard { input userrate | summary userrate; }"
-ilscript[].content[8] "clear_state | guard { input pid | summary pid; }"
-ilscript[].content[9] "clear_state | guard { input weight | summary weight | attribute weight; }"
-ilscript[].content[10] "clear_state | guard { input url | summary url; }"
-ilscript[].content[11] "clear_state | guard { input isbn | summary isbn; }"
-ilscript[].content[12] "clear_state | guard { input fmt | tokenize normalize stem:\"SHORTEST\" | summary fmt | index fmt; }"
-ilscript[].content[13] "clear_state | guard { input albumid | summary albumid; }"
-ilscript[].content[14] "clear_state | guard { input disp_song | summary disp_song; }"
-ilscript[].content[15] "clear_state | guard { input song | tokenize normalize stem:\"SHORTEST\" | summary song | index song; }"
-ilscript[].content[16] "clear_state | guard { input pfrom | summary pfrom; }"
-ilscript[].content[17] "clear_state | guard { input bgnpfrom | summary bgnpfrom | attribute bgnpfrom; }"
-ilscript[].content[18] "clear_state | guard { input categories | tokenize normalize stem:\"SHORTEST\" | summary categories | index categories; }"
-ilscript[].content[19] "clear_state | guard { input data | summary data; }"
-ilscript[].content[20] "clear_state | guard { input numreview | summary numreview; }"
-ilscript[].content[21] "clear_state | guard { input bgnsellers | summary bgnsellers; }"
-ilscript[].content[22] "clear_state | guard { input image | summary image; }"
-ilscript[].content[23] "clear_state | guard { input artist | tokenize normalize stem:\"SHORTEST\" | summary artist | index artist; }"
-ilscript[].content[24] "clear_state | guard { input artistspid | summary artistspid; }"
-ilscript[].content[25] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
-ilscript[].content[26] "clear_state | guard { input newestedition | summary newestedition | attribute newestedition; }"
-ilscript[].content[27] "clear_state | guard { input bgnpto | tokenize normalize stem:\"SHORTEST\" | summary bgnpto; }"
-ilscript[].content[28] "clear_state | guard { input year | summary year | attribute year; }"
-ilscript[].content[29] "clear_state | guard { input did | summary did | attribute did; }"
-ilscript[].content[30] "clear_state | guard { input scorekey | summary scorekey | attribute scorekey; }"
-ilscript[].content[31] "clear_state | guard { input cbid | summary cbid | attribute cbid; }"
+ilscript[].docfield[] "bgndata"
+ilscript[].docfield[] "sales"
+ilscript[].docfield[] "pto"
+ilscript[].docfield[] "keys"
+ilscript[].docfield[] "mid"
+ilscript[].docfield[] "ew"
+ilscript[].docfield[] "surl"
+ilscript[].docfield[] "userrate"
+ilscript[].docfield[] "pid"
+ilscript[].docfield[] "weight"
+ilscript[].docfield[] "url"
+ilscript[].docfield[] "isbn"
+ilscript[].docfield[] "fmt"
+ilscript[].docfield[] "albumid"
+ilscript[].docfield[] "disp_song"
+ilscript[].docfield[] "song"
+ilscript[].docfield[] "pfrom"
+ilscript[].docfield[] "bgnpfrom"
+ilscript[].docfield[] "categories"
+ilscript[].docfield[] "data"
+ilscript[].docfield[] "numreview"
+ilscript[].docfield[] "bgnsellers"
+ilscript[].docfield[] "image"
+ilscript[].docfield[] "artist"
+ilscript[].docfield[] "artistspid"
+ilscript[].docfield[] "title"
+ilscript[].docfield[] "newestedition"
+ilscript[].docfield[] "bgnpto"
+ilscript[].docfield[] "year"
+ilscript[].docfield[] "did"
+ilscript[].docfield[] "scorekey"
+ilscript[].docfield[] "cbid"
+ilscript[].content[] "clear_state | guard { input bgndata | tokenize normalize stem:\"SHORTEST\" | summary bgndata; }"
+ilscript[].content[] "clear_state | guard { input sales | summary sales | attribute sales; }"
+ilscript[].content[] "clear_state | guard { input pto | summary pto | attribute pto; }"
+ilscript[].content[] "clear_state | guard { input keys | tokenize normalize stem:\"SHORTEST\" | index keys; }"
+ilscript[].content[] "clear_state | guard { input mid | summary mid | attribute mid; }"
+ilscript[].content[] "clear_state | guard { input ew | tokenize normalize stem:\"SHORTEST\" | summary ew | index ew; }"
+ilscript[].content[] "clear_state | guard { input surl | summary surl; }"
+ilscript[].content[] "clear_state | guard { input userrate | summary userrate; }"
+ilscript[].content[] "clear_state | guard { input pid | summary pid; }"
+ilscript[].content[] "clear_state | guard { input weight | summary weight | attribute weight; }"
+ilscript[].content[] "clear_state | guard { input url | summary url; }"
+ilscript[].content[] "clear_state | guard { input isbn | summary isbn; }"
+ilscript[].content[] "clear_state | guard { input fmt | tokenize normalize stem:\"SHORTEST\" | summary fmt | index fmt; }"
+ilscript[].content[] "clear_state | guard { input albumid | summary albumid; }"
+ilscript[].content[] "clear_state | guard { input disp_song | summary disp_song; }"
+ilscript[].content[] "clear_state | guard { input song | tokenize normalize stem:\"SHORTEST\" | summary song | index song; }"
+ilscript[].content[] "clear_state | guard { input pfrom | summary pfrom; }"
+ilscript[].content[] "clear_state | guard { input bgnpfrom | summary bgnpfrom | attribute bgnpfrom; }"
+ilscript[].content[] "clear_state | guard { input categories | tokenize normalize stem:\"SHORTEST\" | summary categories | index categories; }"
+ilscript[].content[] "clear_state | guard { input data | summary data; }"
+ilscript[].content[] "clear_state | guard { input numreview | summary numreview; }"
+ilscript[].content[] "clear_state | guard { input bgnsellers | summary bgnsellers; }"
+ilscript[].content[] "clear_state | guard { input image | summary image; }"
+ilscript[].content[] "clear_state | guard { input artist | tokenize normalize stem:\"SHORTEST\" | summary artist | index artist; }"
+ilscript[].content[] "clear_state | guard { input artistspid | summary artistspid; }"
+ilscript[].content[] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
+ilscript[].content[] "clear_state | guard { input newestedition | summary newestedition | attribute newestedition; }"
+ilscript[].content[] "clear_state | guard { input bgnpto | tokenize normalize stem:\"SHORTEST\" | summary bgnpto; }"
+ilscript[].content[] "clear_state | guard { input year | summary year | attribute year; }"
+ilscript[].content[] "clear_state | guard { input did | summary did | attribute did; }"
+ilscript[].content[] "clear_state | guard { input scorekey | summary scorekey | attribute scorekey; }"
+ilscript[].content[] "clear_state | guard { input cbid | summary cbid | attribute cbid; }"
diff --git a/config-model/src/test/derived/newrank/index-info.cfg b/config-model/src/test/derived/newrank/index-info.cfg
index 3bf7f285f96..26d2b92fd10 100644
--- a/config-model/src/test/derived/newrank/index-info.cfg
+++ b/config-model/src/test/derived/newrank/index-info.cfg
@@ -159,39 +159,39 @@ indexinfo[].command[].indexname "did"
indexinfo[].command[].command "attribute"
indexinfo[].command[].indexname "did"
indexinfo[].command[].command "numerical"
-indexinfo[].command[80].indexname "scorekey"
-indexinfo[].command[80].command "index"
-indexinfo[].command[81].indexname "scorekey"
-indexinfo[].command[81].command "attribute"
-indexinfo[].command[82].indexname "scorekey"
-indexinfo[].command[82].command "numerical"
-indexinfo[].command[83].indexname "cbid"
-indexinfo[].command[83].command "index"
-indexinfo[].command[84].indexname "cbid"
-indexinfo[].command[84].command "attribute"
-indexinfo[].command[85].indexname "cbid"
-indexinfo[].command[85].command "numerical"
-indexinfo[].command[86].indexname "rankfeatures"
-indexinfo[].command[86].command "index"
-indexinfo[].command[87].indexname "summaryfeatures"
-indexinfo[].command[87].command "index"
-indexinfo[].command[88].indexname "bgndata"
-indexinfo[].command[88].command "dynteaser"
-indexinfo[].command[89].indexname "ew"
-indexinfo[].command[89].command "highlight"
-indexinfo[].command[90].indexname "song"
-indexinfo[].command[90].command "dynteaser"
-indexinfo[].command[91].indexname "bgnpto"
-indexinfo[].command[91].command "dynteaser"
-indexinfo[].command[92].indexname "bgnpto"
-indexinfo[].command[92].command "highlight"
-indexinfo[].command[93].indexname "default"
-indexinfo[].command[93].command "lowercase"
-indexinfo[].command[94].indexname "default"
-indexinfo[].command[94].command "index"
-indexinfo[].command[95].indexname "default"
-indexinfo[].command[95].command "plain-tokens"
-indexinfo[].command[96].indexname "default"
-indexinfo[].command[96].command "stem:SHORTEST"
-indexinfo[].command[97].indexname "default"
-indexinfo[].command[97].command "normalize"
+indexinfo[].command[].indexname "scorekey"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "scorekey"
+indexinfo[].command[].command "attribute"
+indexinfo[].command[].indexname "scorekey"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "cbid"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "cbid"
+indexinfo[].command[].command "attribute"
+indexinfo[].command[].indexname "cbid"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "rankfeatures"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "summaryfeatures"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "bgndata"
+indexinfo[].command[].command "dynteaser"
+indexinfo[].command[].indexname "ew"
+indexinfo[].command[].command "highlight"
+indexinfo[].command[].indexname "song"
+indexinfo[].command[].command "dynteaser"
+indexinfo[].command[].indexname "bgnpto"
+indexinfo[].command[].command "dynteaser"
+indexinfo[].command[].indexname "bgnpto"
+indexinfo[].command[].command "highlight"
+indexinfo[].command[].indexname "default"
+indexinfo[].command[].command "lowercase"
+indexinfo[].command[].indexname "default"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "default"
+indexinfo[].command[].command "plain-tokens"
+indexinfo[].command[].indexname "default"
+indexinfo[].command[].command "stem:SHORTEST"
+indexinfo[].command[].indexname "default"
+indexinfo[].command[].command "normalize"
diff --git a/config-model/src/test/derived/orderilscripts/ilscripts.cfg b/config-model/src/test/derived/orderilscripts/ilscripts.cfg
index 3dcb48e4205..801c7e4d790 100644
--- a/config-model/src/test/derived/orderilscripts/ilscripts.cfg
+++ b/config-model/src/test/derived/orderilscripts/ilscripts.cfg
@@ -1,6 +1,6 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "orderilscripts"
-ilscript[].docfield[0] "foo"
-ilscript[].content[0] "clear_state | guard { input foo | summary bar; }"
-ilscript[].content[1] "clear_state | guard { input foo | tokenize normalize stem:\"SHORTEST\" | summary foo | index foo; }"
+ilscript[].docfield[] "foo"
+ilscript[].content[] "clear_state | guard { input foo | summary bar; }"
+ilscript[].content[] "clear_state | guard { input foo | tokenize normalize stem:\"SHORTEST\" | summary foo | index foo; }"
diff --git a/config-model/src/test/derived/position_array/ilscripts.cfg b/config-model/src/test/derived/position_array/ilscripts.cfg
index 9b3be601c28..f96542147b4 100644
--- a/config-model/src/test/derived/position_array/ilscripts.cfg
+++ b/config-model/src/test/derived/position_array/ilscripts.cfg
@@ -1,5 +1,5 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "position_array"
-ilscript[].docfield[0] "pos"
-ilscript[].content[0] "clear_state | guard { input pos | for_each { zcurve } | attribute pos_zcurve; }"
+ilscript[].docfield[] "pos"
+ilscript[].content[] "clear_state | guard { input pos | for_each { zcurve } | attribute pos_zcurve; }"
diff --git a/config-model/src/test/derived/position_attribute/ilscripts.cfg b/config-model/src/test/derived/position_attribute/ilscripts.cfg
index d4cc2cd5ec5..c2c66db4f77 100644
--- a/config-model/src/test/derived/position_attribute/ilscripts.cfg
+++ b/config-model/src/test/derived/position_attribute/ilscripts.cfg
@@ -1,5 +1,5 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "position_attribute"
-ilscript[].docfield[0] "pos"
-ilscript[].content[0] "clear_state | guard { input pos | zcurve | attribute pos_zcurve; }"
+ilscript[].docfield[] "pos"
+ilscript[].content[] "clear_state | guard { input pos | zcurve | attribute pos_zcurve; }"
diff --git a/config-model/src/test/derived/position_extra/ilscripts.cfg b/config-model/src/test/derived/position_extra/ilscripts.cfg
index f7c5d1195fa..110b5e40644 100644
--- a/config-model/src/test/derived/position_extra/ilscripts.cfg
+++ b/config-model/src/test/derived/position_extra/ilscripts.cfg
@@ -1,5 +1,5 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "position_extra"
-ilscript[].docfield[0] "pos_str"
-ilscript[].content[0] "clear_state | guard { input pos_str | to_pos | zcurve | attribute pos_ext_zcurve; }"
+ilscript[].docfield[] "pos_str"
+ilscript[].content[] "clear_state | guard { input pos_str | to_pos | zcurve | attribute pos_ext_zcurve; }"
diff --git a/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg b/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg
index aa374bd18ce..adc1d7b3de6 100644
--- a/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg
+++ b/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg
@@ -54,8 +54,8 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -739138930
datatype[].documenttype[].bodystruct -480519133
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "attributefield1"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "attributefield2"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "indexfield0"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "indexfield1"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "indexfield2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attributefield1"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "attributefield2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "indexfield0"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "indexfield1"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "indexfield2"
diff --git a/config-model/src/test/derived/prefixexactattribute/ilscripts.cfg b/config-model/src/test/derived/prefixexactattribute/ilscripts.cfg
index 1d3a25c2dde..4663ef92fcf 100644
--- a/config-model/src/test/derived/prefixexactattribute/ilscripts.cfg
+++ b/config-model/src/test/derived/prefixexactattribute/ilscripts.cfg
@@ -1,13 +1,13 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "prefixexactattribute"
-ilscript[].docfield[0] "indexfield0"
-ilscript[].docfield[1] "attributefield1"
-ilscript[].docfield[2] "attributefield2"
-ilscript[].docfield[3] "indexfield1"
-ilscript[].docfield[4] "indexfield2"
-ilscript[].content[0] "clear_state | guard { input indexfield0 | tokenize normalize stem:\"SHORTEST\" max-length:79 | index indexfield0; }"
-ilscript[].content[1] "clear_state | guard { input attributefield1 | attribute attributefield1; }"
-ilscript[].content[2] "clear_state | guard { input attributefield2 | attribute attributefield2; }"
-ilscript[].content[3] "clear_state | guard { input indexfield1 | exact | index indexfield1; }"
-ilscript[].content[4] "clear_state | guard { input indexfield2 | exact | index indexfield2; }"
+ilscript[].docfield[] "indexfield0"
+ilscript[].docfield[] "attributefield1"
+ilscript[].docfield[] "attributefield2"
+ilscript[].docfield[] "indexfield1"
+ilscript[].docfield[] "indexfield2"
+ilscript[].content[] "clear_state | guard { input indexfield0 | tokenize normalize stem:\"SHORTEST\" max-length:79 | index indexfield0; }"
+ilscript[].content[] "clear_state | guard { input attributefield1 | attribute attributefield1; }"
+ilscript[].content[] "clear_state | guard { input attributefield2 | attribute attributefield2; }"
+ilscript[].content[] "clear_state | guard { input indexfield1 | exact | index indexfield1; }"
+ilscript[].content[] "clear_state | guard { input indexfield2 | exact | index indexfield2; }"
diff --git a/config-model/src/test/derived/ranktypes/documentmanager.cfg b/config-model/src/test/derived/ranktypes/documentmanager.cfg
index 62c3dff3df2..cba480489b4 100644
--- a/config-model/src/test/derived/ranktypes/documentmanager.cfg
+++ b/config-model/src/test/derived/ranktypes/documentmanager.cfg
@@ -54,7 +54,7 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -471393776
datatype[].documenttype[].bodystruct 1374506021
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "descr"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "identity"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "keywords"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "title"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "descr"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "identity"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "keywords"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "title"
diff --git a/config-model/src/test/derived/ranktypes/ilscripts.cfg b/config-model/src/test/derived/ranktypes/ilscripts.cfg
index a8c039d5b6e..21fe564c922 100644
--- a/config-model/src/test/derived/ranktypes/ilscripts.cfg
+++ b/config-model/src/test/derived/ranktypes/ilscripts.cfg
@@ -1,12 +1,12 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "ranktypes"
-ilscript[].docfield[0] "title"
-ilscript[].docfield[1] "descr"
-ilscript[].docfield[2] "keywords"
-ilscript[].docfield[3] "identity"
-ilscript[].content[0] "clear_state | guard { input identity | tokenize | index identity_literal; }"
-ilscript[].content[1] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
-ilscript[].content[2] "clear_state | guard { input descr | tokenize normalize stem:\"SHORTEST\" | summary descr | index descr; }"
-ilscript[].content[3] "clear_state | guard { input keywords | tokenize normalize stem:\"SHORTEST\" | index keywords; }"
-ilscript[].content[4] "clear_state | guard { input identity | tokenize normalize stem:\"SHORTEST\" | index identity; }"
+ilscript[].docfield[] "title"
+ilscript[].docfield[] "descr"
+ilscript[].docfield[] "keywords"
+ilscript[].docfield[] "identity"
+ilscript[].content[] "clear_state | guard { input identity | tokenize | index identity_literal; }"
+ilscript[].content[] "clear_state | guard { input title | tokenize normalize stem:\"SHORTEST\" | summary title | index title; }"
+ilscript[].content[] "clear_state | guard { input descr | tokenize normalize stem:\"SHORTEST\" | summary descr | index descr; }"
+ilscript[].content[] "clear_state | guard { input keywords | tokenize normalize stem:\"SHORTEST\" | index keywords; }"
+ilscript[].content[] "clear_state | guard { input identity | tokenize normalize stem:\"SHORTEST\" | index identity; }"
diff --git a/config-model/src/test/derived/streamingstruct/documentmanager.cfg b/config-model/src/test/derived/streamingstruct/documentmanager.cfg
index a80c2ad56ac..28690ba807f 100644
--- a/config-model/src/test/derived/streamingstruct/documentmanager.cfg
+++ b/config-model/src/test/derived/streamingstruct/documentmanager.cfg
@@ -139,20 +139,20 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 731395686
datatype[].documenttype[].bodystruct 1858438651
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "a"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "array1"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "array2"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "array3"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "b"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "c"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "c2"
-datatype[].documenttype[].fieldsets{[document]}.fields[7] "c3"
-datatype[].documenttype[].fieldsets{[document]}.fields[8] "coupleof"
-datatype[].documenttype[].fieldsets{[document]}.fields[9] "d"
-datatype[].documenttype[].fieldsets{[document]}.fields[10] "e"
-datatype[].documenttype[].fieldsets{[document]}.fields[11] "f"
-datatype[].documenttype[].fieldsets{[document]}.fields[12] "g"
-datatype[].documenttype[].fieldsets{[document]}.fields[13] "m"
-datatype[].documenttype[].fieldsets{[document]}.fields[14] "n"
-datatype[].documenttype[].fieldsets{[document]}.fields[15] "normalfields"
-datatype[].documenttype[].fieldsets{[document]}.fields[16] "subject"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "a"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "array1"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "array2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "array3"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "b"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "c"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "c2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "c3"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "coupleof"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "d"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "e"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "f"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "g"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "m"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "n"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "normalfields"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "subject"
diff --git a/config-model/src/test/derived/structanyorder/documentmanager.cfg b/config-model/src/test/derived/structanyorder/documentmanager.cfg
index a1b7ff3a71e..21503c3ad76 100644
--- a/config-model/src/test/derived/structanyorder/documentmanager.cfg
+++ b/config-model/src/test/derived/structanyorder/documentmanager.cfg
@@ -89,8 +89,8 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct -364910881
datatype[].documenttype[].bodystruct -1503592268
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "structarrayfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "structfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "structarrayfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "structfield"
annotationtype[].id -269517759
annotationtype[].name "banana"
annotationtype[].datatype 517946310
diff --git a/config-model/src/test/derived/structanyorder/ilscripts.cfg b/config-model/src/test/derived/structanyorder/ilscripts.cfg
index e346e46e94c..d89bb92df53 100644
--- a/config-model/src/test/derived/structanyorder/ilscripts.cfg
+++ b/config-model/src/test/derived/structanyorder/ilscripts.cfg
@@ -1,7 +1,7 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "annotationsimplicitstruct"
-ilscript[].docfield[0] "structfield"
-ilscript[].docfield[1] "structarrayfield"
-ilscript[].content[0] "input structarrayfield | passthrough structarrayfield"
-ilscript[].content[1] "input structfield | passthrough structfield"
+ilscript[].docfield[] "structfield"
+ilscript[].docfield[] "structarrayfield"
+ilscript[].content[] "input structarrayfield | passthrough structarrayfield"
+ilscript[].content[] "input structfield | passthrough structfield"
diff --git a/config-model/src/test/derived/structanyorder/index-info.cfg b/config-model/src/test/derived/structanyorder/index-info.cfg
index 6e3dba8944f..4aa159462a4 100644
--- a/config-model/src/test/derived/structanyorder/index-info.cfg
+++ b/config-model/src/test/derived/structanyorder/index-info.cfg
@@ -159,46 +159,46 @@ indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s2"
indexinfo[].command[].command "index"
indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3.s1"
indexinfo[].command[].command "index"
-indexinfo[].command[80].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3.s2"
-indexinfo[].command[80].command "index"
-indexinfo[].command[81].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3.s3"
-indexinfo[].command[81].command "index"
-indexinfo[].command[82].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3.s4"
-indexinfo[].command[82].command "index"
-indexinfo[].command[83].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3"
-indexinfo[].command[83].command "index"
-indexinfo[].command[84].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[84].command "index"
-indexinfo[].command[85].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[85].command "numerical"
-indexinfo[].command[86].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s4"
-indexinfo[].command[86].command "index"
-indexinfo[].command[87].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3"
-indexinfo[].command[87].command "index"
-indexinfo[].command[88].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[88].command "index"
-indexinfo[].command[89].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[89].command "numerical"
-indexinfo[].command[90].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s4"
-indexinfo[].command[90].command "index"
-indexinfo[].command[91].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3"
-indexinfo[].command[91].command "index"
-indexinfo[].command[92].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[92].command "index"
-indexinfo[].command[93].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[93].command "numerical"
-indexinfo[].command[94].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s4"
-indexinfo[].command[94].command "index"
-indexinfo[].command[95].indexname "structarrayfield.s3.s3.s3.s3.s3.s3"
-indexinfo[].command[95].command "index"
-indexinfo[].command[96].indexname "structarrayfield.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[96].command "index"
-indexinfo[].command[97].indexname "structarrayfield.s3.s3.s3.s3.s3.s4.s1"
-indexinfo[].command[97].command "numerical"
-indexinfo[].command[98].indexname "structarrayfield.s3.s3.s3.s3.s3.s4"
-indexinfo[].command[98].command "index"
-indexinfo[].command[99].indexname "structarrayfield.s3.s3.s3.s3.s3"
-indexinfo[].command[99].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3.s2"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3.s3"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3.s4"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s3"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3.s4"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s3"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3.s4"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s3"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3.s4"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s3"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s4.s1"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3.s4"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "structarrayfield.s3.s3.s3.s3.s3"
+indexinfo[].command[].command "index"
indexinfo[].command[100].indexname "structarrayfield.s3.s3.s3.s3.s4.s1"
indexinfo[].command[100].command "index"
indexinfo[].command[101].indexname "structarrayfield.s3.s3.s3.s3.s4.s1"
diff --git a/config-model/src/test/derived/tensor/documenttypes.cfg b/config-model/src/test/derived/tensor/documenttypes.cfg
index f9366ca62f6..ac452f08998 100644
--- a/config-model/src/test/derived/tensor/documenttypes.cfg
+++ b/config-model/src/test/derived/tensor/documenttypes.cfg
@@ -65,7 +65,7 @@ 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{[document]}.fields[0] "f1"
-documenttype[].fieldsets{[document]}.fields[1] "f2"
-documenttype[].fieldsets{[document]}.fields[2] "f3"
-documenttype[].fieldsets{[document]}.fields[3] "f4"
+documenttype[].fieldsets{[document]}.fields[] "f1"
+documenttype[].fieldsets{[document]}.fields[] "f2"
+documenttype[].fieldsets{[document]}.fields[] "f3"
+documenttype[].fieldsets{[document]}.fields[] "f4"
diff --git a/config-model/src/test/derived/twostreamingstructs/documentmanager.cfg b/config-model/src/test/derived/twostreamingstructs/documentmanager.cfg
index 9403a90f03d..f74b4e7b458 100644
--- a/config-model/src/test/derived/twostreamingstructs/documentmanager.cfg
+++ b/config-model/src/test/derived/twostreamingstructs/documentmanager.cfg
@@ -108,23 +108,23 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 731395686
datatype[].documenttype[].bodystruct 1858438651
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "a"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "array1"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "array2"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "array3"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "b"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "c"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "c2"
-datatype[].documenttype[].fieldsets{[document]}.fields[7] "c3"
-datatype[].documenttype[].fieldsets{[document]}.fields[8] "coupleof"
-datatype[].documenttype[].fieldsets{[document]}.fields[9] "d"
-datatype[].documenttype[].fieldsets{[document]}.fields[10] "e"
-datatype[].documenttype[].fieldsets{[document]}.fields[11] "f"
-datatype[].documenttype[].fieldsets{[document]}.fields[12] "g"
-datatype[].documenttype[].fieldsets{[document]}.fields[13] "m"
-datatype[].documenttype[].fieldsets{[document]}.fields[14] "n"
-datatype[].documenttype[].fieldsets{[document]}.fields[15] "normalfields"
-datatype[].documenttype[].fieldsets{[document]}.fields[16] "subject"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "a"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "array1"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "array2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "array3"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "b"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "c"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "c2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "c3"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "coupleof"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "d"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "e"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "f"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "g"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "m"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "n"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "normalfields"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "subject"
datatype[].id -995681764
datatype[].structtype[].name "pair"
datatype[].structtype[].version 0
@@ -163,4 +163,4 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 355471259
datatype[].documenttype[].bodystruct -1417926544
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "f1"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "f1"
diff --git a/config-model/src/test/derived/types/documentmanager.cfg b/config-model/src/test/derived/types/documentmanager.cfg
index 26fae34c04f..c490db59736 100644
--- a/config-model/src/test/derived/types/documentmanager.cfg
+++ b/config-model/src/test/derived/types/documentmanager.cfg
@@ -231,29 +231,29 @@ datatype[].documenttype[].inherits[].name "document"
datatype[].documenttype[].inherits[].version 0
datatype[].documenttype[].headerstruct 1328581348
datatype[].documenttype[].bodystruct 348447225
-datatype[].documenttype[].fieldsets{[document]}.fields[0] "Folders"
-datatype[].documenttype[].fieldsets{[document]}.fields[1] "abyte"
-datatype[].documenttype[].fieldsets{[document]}.fields[2] "album0"
-datatype[].documenttype[].fieldsets{[document]}.fields[3] "album1"
-datatype[].documenttype[].fieldsets{[document]}.fields[4] "along"
-datatype[].documenttype[].fieldsets{[document]}.fields[5] "arrarr"
-datatype[].documenttype[].fieldsets{[document]}.fields[6] "arrayfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[7] "arraymapfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[8] "complexarray"
-datatype[].documenttype[].fieldsets{[document]}.fields[9] "doublemapfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[10] "floatmapfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[11] "intmapfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[12] "juletre"
-datatype[].documenttype[].fieldsets{[document]}.fields[13] "longmapfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[14] "maparr"
-datatype[].documenttype[].fieldsets{[document]}.fields[15] "mystructarr"
-datatype[].documenttype[].fieldsets{[document]}.fields[16] "mystructfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[17] "mystructmap"
-datatype[].documenttype[].fieldsets{[document]}.fields[18] "setfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[19] "setfield2"
-datatype[].documenttype[].fieldsets{[document]}.fields[20] "setfield3"
-datatype[].documenttype[].fieldsets{[document]}.fields[21] "setfield4"
-datatype[].documenttype[].fieldsets{[document]}.fields[22] "stringmapfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[23] "structarrayfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[24] "structfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[25] "tagfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "Folders"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "abyte"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "album0"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "album1"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "along"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "arrarr"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "arrayfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "arraymapfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "complexarray"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "doublemapfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "floatmapfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "intmapfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "juletre"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "longmapfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "maparr"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "mystructarr"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "mystructfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "mystructmap"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "setfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "setfield2"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "setfield3"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "setfield4"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "stringmapfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "structarrayfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "structfield"
+datatype[].documenttype[].fieldsets{[document]}.fields[] "tagfield"
diff --git a/config-model/src/test/derived/types/ilscripts.cfg b/config-model/src/test/derived/types/ilscripts.cfg
index 0ae5570f680..92ca728cea7 100644
--- a/config-model/src/test/derived/types/ilscripts.cfg
+++ b/config-model/src/test/derived/types/ilscripts.cfg
@@ -1,56 +1,56 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "types"
-ilscript[].docfield[0] "abyte"
-ilscript[].docfield[1] "along"
-ilscript[].docfield[2] "arrayfield"
-ilscript[].docfield[3] "setfield"
-ilscript[].docfield[4] "setfield2"
-ilscript[].docfield[5] "setfield3"
-ilscript[].docfield[6] "setfield4"
-ilscript[].docfield[7] "tagfield"
-ilscript[].docfield[8] "structfield"
-ilscript[].docfield[9] "structarrayfield"
-ilscript[].docfield[10] "stringmapfield"
-ilscript[].docfield[11] "intmapfield"
-ilscript[].docfield[12] "floatmapfield"
-ilscript[].docfield[13] "longmapfield"
-ilscript[].docfield[14] "doublemapfield"
-ilscript[].docfield[15] "arraymapfield"
-ilscript[].docfield[16] "arrarr"
-ilscript[].docfield[17] "maparr"
-ilscript[].docfield[18] "mystructfield"
-ilscript[].docfield[19] "mystructmap"
-ilscript[].docfield[20] "mystructarr"
-ilscript[].docfield[21] "Folders"
-ilscript[].docfield[22] "juletre"
-ilscript[].docfield[23] "album0"
-ilscript[].docfield[24] "album1"
-ilscript[].docfield[25] "complexarray"
-ilscript[].content[0] "clear_state | guard { input along | attribute other; }"
-ilscript[].content[1] "clear_state | guard { input abyte | summary abyte | attribute abyte; }"
-ilscript[].content[2] "clear_state | guard { input along | summary along | attribute along; }"
-ilscript[].content[3] "clear_state | guard { input arrayfield | attribute arrayfield; }"
-ilscript[].content[4] "clear_state | guard { input setfield | attribute setfield; }"
-ilscript[].content[5] "clear_state | guard { input setfield2 | attribute setfield2; }"
-ilscript[].content[6] "clear_state | guard { input setfield3 | attribute setfield3; }"
-ilscript[].content[7] "clear_state | guard { input setfield4 | attribute setfield4; }"
-ilscript[].content[8] "clear_state | guard { input tagfield | attribute tagfield | summary tagfield; }"
-ilscript[].content[9] "clear_state | guard { input juletre | attribute juletre; }"
-ilscript[].content[10] "clear_state | guard { input album0 | summary album0; }"
-ilscript[].content[11] "clear_state | guard { input album1 | attribute album1 | summary album1; }"
-ilscript[].content[12] "input Folders | passthrough Folders"
-ilscript[].content[13] "input arrarr | passthrough arrarr"
-ilscript[].content[14] "input arraymapfield | passthrough arraymapfield"
-ilscript[].content[15] "input complexarray | passthrough complexarray"
-ilscript[].content[16] "input doublemapfield | passthrough doublemapfield"
-ilscript[].content[17] "input floatmapfield | passthrough floatmapfield"
-ilscript[].content[18] "input intmapfield | passthrough intmapfield"
-ilscript[].content[19] "input longmapfield | passthrough longmapfield"
-ilscript[].content[20] "input maparr | passthrough maparr"
-ilscript[].content[21] "input mystructarr | passthrough mystructarr"
-ilscript[].content[22] "input mystructfield | passthrough mystructfield"
-ilscript[].content[23] "input mystructmap | passthrough mystructmap"
-ilscript[].content[24] "input stringmapfield | passthrough stringmapfield"
-ilscript[].content[25] "input structarrayfield | passthrough structarrayfield"
-ilscript[].content[26] "input structfield | passthrough structfield"
+ilscript[].docfield[] "abyte"
+ilscript[].docfield[] "along"
+ilscript[].docfield[] "arrayfield"
+ilscript[].docfield[] "setfield"
+ilscript[].docfield[] "setfield2"
+ilscript[].docfield[] "setfield3"
+ilscript[].docfield[] "setfield4"
+ilscript[].docfield[] "tagfield"
+ilscript[].docfield[] "structfield"
+ilscript[].docfield[] "structarrayfield"
+ilscript[].docfield[] "stringmapfield"
+ilscript[].docfield[] "intmapfield"
+ilscript[].docfield[] "floatmapfield"
+ilscript[].docfield[] "longmapfield"
+ilscript[].docfield[] "doublemapfield"
+ilscript[].docfield[] "arraymapfield"
+ilscript[].docfield[] "arrarr"
+ilscript[].docfield[] "maparr"
+ilscript[].docfield[] "mystructfield"
+ilscript[].docfield[] "mystructmap"
+ilscript[].docfield[] "mystructarr"
+ilscript[].docfield[] "Folders"
+ilscript[].docfield[] "juletre"
+ilscript[].docfield[] "album0"
+ilscript[].docfield[] "album1"
+ilscript[].docfield[] "complexarray"
+ilscript[].content[] "clear_state | guard { input along | attribute other; }"
+ilscript[].content[] "clear_state | guard { input abyte | summary abyte | attribute abyte; }"
+ilscript[].content[] "clear_state | guard { input along | summary along | attribute along; }"
+ilscript[].content[] "clear_state | guard { input arrayfield | attribute arrayfield; }"
+ilscript[].content[] "clear_state | guard { input setfield | attribute setfield; }"
+ilscript[].content[] "clear_state | guard { input setfield2 | attribute setfield2; }"
+ilscript[].content[] "clear_state | guard { input setfield3 | attribute setfield3; }"
+ilscript[].content[] "clear_state | guard { input setfield4 | attribute setfield4; }"
+ilscript[].content[] "clear_state | guard { input tagfield | attribute tagfield | summary tagfield; }"
+ilscript[].content[] "clear_state | guard { input juletre | attribute juletre; }"
+ilscript[].content[] "clear_state | guard { input album0 | summary album0; }"
+ilscript[].content[] "clear_state | guard { input album1 | attribute album1 | summary album1; }"
+ilscript[].content[] "input Folders | passthrough Folders"
+ilscript[].content[] "input arrarr | passthrough arrarr"
+ilscript[].content[] "input arraymapfield | passthrough arraymapfield"
+ilscript[].content[] "input complexarray | passthrough complexarray"
+ilscript[].content[] "input doublemapfield | passthrough doublemapfield"
+ilscript[].content[] "input floatmapfield | passthrough floatmapfield"
+ilscript[].content[] "input intmapfield | passthrough intmapfield"
+ilscript[].content[] "input longmapfield | passthrough longmapfield"
+ilscript[].content[] "input maparr | passthrough maparr"
+ilscript[].content[] "input mystructarr | passthrough mystructarr"
+ilscript[].content[] "input mystructfield | passthrough mystructfield"
+ilscript[].content[] "input mystructmap | passthrough mystructmap"
+ilscript[].content[] "input stringmapfield | passthrough stringmapfield"
+ilscript[].content[] "input structarrayfield | passthrough structarrayfield"
+ilscript[].content[] "input structfield | passthrough structfield"
diff --git a/config-model/src/test/derived/types/index-info.cfg b/config-model/src/test/derived/types/index-info.cfg
index 84f6627d282..4dec9290cb5 100644
--- a/config-model/src/test/derived/types/index-info.cfg
+++ b/config-model/src/test/derived/types/index-info.cfg
@@ -159,46 +159,46 @@ indexinfo[].command[].indexname "maparr"
indexinfo[].command[].command "multivalue"
indexinfo[].command[].indexname "mystructfield.bytearr"
indexinfo[].command[].command "index"
-indexinfo[].command[80].indexname "mystructfield.bytearr"
-indexinfo[].command[80].command "multivalue"
-indexinfo[].command[81].indexname "mystructfield.mymap.key"
-indexinfo[].command[81].command "index"
-indexinfo[].command[82].indexname "mystructfield.mymap.value"
-indexinfo[].command[82].command "index"
-indexinfo[].command[83].indexname "mystructfield.mymap"
-indexinfo[].command[83].command "index"
-indexinfo[].command[84].indexname "mystructfield.mymap"
-indexinfo[].command[84].command "multivalue"
-indexinfo[].command[85].indexname "mystructfield.title"
-indexinfo[].command[85].command "index"
-indexinfo[].command[86].indexname "mystructfield.structfield"
-indexinfo[].command[86].command "index"
-indexinfo[].command[87].indexname "mystructfield"
-indexinfo[].command[87].command "index"
-indexinfo[].command[88].indexname "mystructmap.key"
-indexinfo[].command[88].command "index"
-indexinfo[].command[89].indexname "mystructmap.key"
-indexinfo[].command[89].command "numerical"
-indexinfo[].command[90].indexname "mystructmap.value.bytearr"
-indexinfo[].command[90].command "index"
-indexinfo[].command[91].indexname "mystructmap.value.bytearr"
-indexinfo[].command[91].command "multivalue"
-indexinfo[].command[92].indexname "mystructmap.value.mymap.key"
-indexinfo[].command[92].command "index"
-indexinfo[].command[93].indexname "mystructmap.value.mymap.value"
-indexinfo[].command[93].command "index"
-indexinfo[].command[94].indexname "mystructmap.value.mymap"
-indexinfo[].command[94].command "index"
-indexinfo[].command[95].indexname "mystructmap.value.mymap"
-indexinfo[].command[95].command "multivalue"
-indexinfo[].command[96].indexname "mystructmap.value.title"
-indexinfo[].command[96].command "index"
-indexinfo[].command[97].indexname "mystructmap.value.structfield"
-indexinfo[].command[97].command "index"
-indexinfo[].command[98].indexname "mystructmap.value"
-indexinfo[].command[98].command "index"
-indexinfo[].command[99].indexname "mystructmap"
-indexinfo[].command[99].command "index"
+indexinfo[].command[].indexname "mystructfield.bytearr"
+indexinfo[].command[].command "multivalue"
+indexinfo[].command[].indexname "mystructfield.mymap.key"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructfield.mymap.value"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructfield.mymap"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructfield.mymap"
+indexinfo[].command[].command "multivalue"
+indexinfo[].command[].indexname "mystructfield.title"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructfield.structfield"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructfield"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.key"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.key"
+indexinfo[].command[].command "numerical"
+indexinfo[].command[].indexname "mystructmap.value.bytearr"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.value.bytearr"
+indexinfo[].command[].command "multivalue"
+indexinfo[].command[].indexname "mystructmap.value.mymap.key"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.value.mymap.value"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.value.mymap"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.value.mymap"
+indexinfo[].command[].command "multivalue"
+indexinfo[].command[].indexname "mystructmap.value.title"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.value.structfield"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap.value"
+indexinfo[].command[].command "index"
+indexinfo[].command[].indexname "mystructmap"
+indexinfo[].command[].command "index"
indexinfo[].command[100].indexname "mystructmap"
indexinfo[].command[100].command "multivalue"
indexinfo[].command[101].indexname "mystructarr.bytearr"
diff --git a/config-model/src/test/derived/uri_array/ilscripts.cfg b/config-model/src/test/derived/uri_array/ilscripts.cfg
index cb26781c90b..90664bba50d 100644
--- a/config-model/src/test/derived/uri_array/ilscripts.cfg
+++ b/config-model/src/test/derived/uri_array/ilscripts.cfg
@@ -1,5 +1,5 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "uri_array"
-ilscript[].docfield[0] "my_uri"
-ilscript[].content[0] "clear_state | guard { input my_uri | index my_uri; }"
+ilscript[].docfield[] "my_uri"
+ilscript[].content[] "clear_state | guard { input my_uri | index my_uri; }"
diff --git a/config-model/src/test/derived/uri_wset/ilscripts.cfg b/config-model/src/test/derived/uri_wset/ilscripts.cfg
index a3efd810b35..1ada759a711 100644
--- a/config-model/src/test/derived/uri_wset/ilscripts.cfg
+++ b/config-model/src/test/derived/uri_wset/ilscripts.cfg
@@ -1,5 +1,5 @@
maxtermoccurrences 100
fieldmatchmaxlength 1000000
ilscript[].doctype "uri_wset"
-ilscript[].docfield[0] "my_uri"
-ilscript[].content[0] "clear_state | guard { input my_uri | index my_uri; }"
+ilscript[].docfield[] "my_uri"
+ilscript[].content[] "clear_state | guard { input my_uri | index my_uri; }"