summaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2022-03-10 09:41:01 +0000
committerArne H Juul <arnej@yahooinc.com>2022-03-10 16:22:15 +0000
commited6e9b5419a99a1189434d535c8b5fd734e81cd1 (patch)
tree9d3cbec4d865776f015a27e2920eb3b7a2e53b51 /config-model
parent706fa77dd8b40168aa977b63ace411c6b016c520 (diff)
update with new-style configs
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/test/derived/advanced/documentmanager.cfg186
-rw-r--r--config-model/src/test/derived/annotationsimplicitstruct/documentmanager.cfg94
-rw-r--r--config-model/src/test/derived/annotationsinheritance/documentmanager.cfg249
-rw-r--r--config-model/src/test/derived/annotationsinheritance2/documentmanager.cfg181
-rw-r--r--config-model/src/test/derived/annotationssimple/documentmanager.cfg79
-rw-r--r--config-model/src/test/derived/annotationsstruct/documentmanager.cfg109
-rw-r--r--config-model/src/test/derived/annotationsstructarray/documentmanager.cfg115
-rw-r--r--config-model/src/test/derived/arrays/documentmanager.cfg144
-rw-r--r--config-model/src/test/derived/attributeprefetch/documentmanager.cfg324
-rw-r--r--config-model/src/test/derived/complex/documentmanager.cfg290
-rw-r--r--config-model/src/test/derived/emptydefault/documentmanager.cfg88
-rw-r--r--config-model/src/test/derived/id/documentmanager.cfg80
-rw-r--r--config-model/src/test/derived/indexswitches/documentmanager.cfg106
-rw-r--r--config-model/src/test/derived/namecollision/documentmanager.cfg115
-rw-r--r--config-model/src/test/derived/prefixexactattribute/documentmanager.cfg112
-rw-r--r--config-model/src/test/derived/ranktypes/documentmanager.cfg110
-rw-r--r--config-model/src/test/derived/schemainheritance/documentmanager.cfg195
-rw-r--r--config-model/src/test/derived/streamingstruct/documentmanager.cfg305
-rw-r--r--config-model/src/test/derived/structandfieldset/documentmanager.cfg119
-rw-r--r--config-model/src/test/derived/structanyorder/documentmanager.cfg170
-rw-r--r--config-model/src/test/derived/structinheritance/documentmanager.cfg139
-rw-r--r--config-model/src/test/derived/types/documentmanager.cfg619
22 files changed, 2172 insertions, 1757 deletions
diff --git a/config-model/src/test/derived/advanced/documentmanager.cfg b/config-model/src/test/derived/advanced/documentmanager.cfg
index c317c19b09b..6eea5ae038b 100644
--- a/config-model/src/test/derived/advanced/documentmanager.cfg
+++ b/config-model/src/test/derived/advanced/documentmanager.cfg
@@ -1,86 +1,104 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1337915045
-datatype[].structtype[].name "advanced.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "debug_src"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "attributes_src"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "location_str"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "title_src"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "product_src"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "product2_src"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "product3_src"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "debug"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "attributes"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "title"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "product"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "product2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "product3"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "location_zcurve"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "title_s"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "mysummary"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 686681444
-datatype[].documenttype[].name "advanced"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -1337915045
-datatype[].documenttype[].bodystruct 0
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "advanced"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{titleabstract}.fields[] "title"
+doctype[].fieldsets{default}.fields[] "title"
+doctype[].fieldsets{[document]}.fields[] "attributes_src"
+doctype[].fieldsets{[document]}.fields[] "debug_src"
+doctype[].fieldsets{[document]}.fields[] "location_str"
+doctype[].fieldsets{[document]}.fields[] "product2_src"
+doctype[].fieldsets{[document]}.fields[] "product3_src"
+doctype[].fieldsets{[document]}.fields[] "product_src"
+doctype[].fieldsets{[document]}.fields[] "title_src"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "advanced.header"
+doctype[].structtype[].field[].name "debug_src"
+doctype[].structtype[].field[].internalid 2040219432
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "attributes_src"
+doctype[].structtype[].field[].internalid 206068784
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "location_str"
+doctype[].structtype[].field[].internalid 1878695266
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "title_src"
+doctype[].structtype[].field[].internalid 1663435609
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "product_src"
+doctype[].structtype[].field[].internalid 721375362
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "product2_src"
+doctype[].structtype[].field[].internalid 1432937317
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "product3_src"
+doctype[].structtype[].field[].internalid 1601223618
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "debug"
+doctype[].structtype[].field[].internalid 1852175867
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "attributes"
+doctype[].structtype[].field[].internalid 1807427837
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "title"
+doctype[].structtype[].field[].internalid 567626448
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "product"
+doctype[].structtype[].field[].internalid 516982522
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "product2"
+doctype[].structtype[].field[].internalid 1822067147
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "product3"
+doctype[].structtype[].field[].internalid 1855194930
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "location_zcurve"
+doctype[].structtype[].field[].internalid 357924406
+doctype[].structtype[].field[].type 10008
+doctype[].structtype[].field[].name "title_s"
+doctype[].structtype[].field[].internalid 1424913045
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "mysummary"
+doctype[].structtype[].field[].internalid 118911010
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/annotationsimplicitstruct/documentmanager.cfg b/config-model/src/test/derived/annotationsimplicitstruct/documentmanager.cfg
index cdf554cb747..f15b49c6b76 100644
--- a/config-model/src/test/derived/annotationsimplicitstruct/documentmanager.cfg
+++ b/config-model/src/test/derived/annotationsimplicitstruct/documentmanager.cfg
@@ -1,42 +1,56 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 517946310
-datatype[].structtype[].name "annotation.banana"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "brand"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -364910881
-datatype[].structtype[].name "annotationsimplicitstruct.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id -2099544992
-datatype[].documenttype[].name "annotationsimplicitstruct"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -364910881
-datatype[].documenttype[].bodystruct 0
-annotationtype[].id -269517759
-annotationtype[].name "banana"
-annotationtype[].datatype 517946310
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "annotationsimplicitstruct"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].annotationtype[].idx 10018
+doctype[].annotationtype[].name "banana"
+doctype[].annotationtype[].internalid -269517759
+doctype[].annotationtype[].datatype 10017
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "annotationsimplicitstruct.header"
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "annotation.banana"
+doctype[].structtype[].field[].name "brand"
+doctype[].structtype[].field[].internalid 2085058127
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/annotationsinheritance/documentmanager.cfg b/config-model/src/test/derived/annotationsinheritance/documentmanager.cfg
index 9633eaa532b..4098c0fe53c 100644
--- a/config-model/src/test/derived/annotationsinheritance/documentmanager.cfg
+++ b/config-model/src/test/derived/annotationsinheritance/documentmanager.cfg
@@ -1,133 +1,120 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 517946310
-datatype[].structtype[].name "annotation.banana"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "brand"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1339036621
-datatype[].structtype[].name "annotation.intern"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "enddate"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].inherits[].name "annotation.employee"
-datatype[].structtype[].inherits[].version 0
-datatype[].id 249059607
-datatype[].structtype[].name "annotation.car"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "color"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].inherits[].name "annotation.vehicle"
-datatype[].structtype[].inherits[].version 0
-datatype[].id -1466283082
-datatype[].structtype[].name "annotation.person"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "name"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -858216177
-datatype[].structtype[].name "annotation.employee"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "employeeid"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].inherits[].name "annotation.worker"
-datatype[].structtype[].inherits[].version 0
-datatype[].id -1874092641
-datatype[].structtype[].name "annotation.worker"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].inherits[].name "annotation.person"
-datatype[].structtype[].inherits[].version 0
-datatype[].id -1047410193
-datatype[].structtype[].name "annotation.vehicle"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "numwheels"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1406250281
-datatype[].structtype[].name "annotationsinheritance.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id -748546200
-datatype[].documenttype[].name "annotationsinheritance"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -1406250281
-datatype[].documenttype[].bodystruct 0
-annotationtype[].id -269517759
-annotationtype[].name "banana"
-annotationtype[].datatype 517946310
-annotationtype[].inherits[].id 877283632
-annotationtype[].id 855102455
-annotationtype[].name "intern"
-annotationtype[].datatype -1339036621
-annotationtype[].inherits[].id 804106508
-annotationtype[].id -973728295
-annotationtype[].name "car"
-annotationtype[].datatype 249059607
-annotationtype[].inherits[].id 290814930
-annotationtype[].id 877283632
-annotationtype[].name "fruit"
-annotationtype[].datatype -1
-annotationtype[].id 609952424
-annotationtype[].name "person"
-annotationtype[].datatype -1466283082
-annotationtype[].id 804106508
-annotationtype[].name "employee"
-annotationtype[].datatype -858216177
-annotationtype[].inherits[].id 881692980
-annotationtype[].id 881692980
-annotationtype[].name "worker"
-annotationtype[].datatype -1874092641
-annotationtype[].inherits[].id 609952424
-annotationtype[].id 290814930
-annotationtype[].name "vehicle"
-annotationtype[].datatype -1047410193
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "annotationsinheritance"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].annotationtype[].idx 10024
+doctype[].annotationtype[].name "banana"
+doctype[].annotationtype[].internalid -269517759
+doctype[].annotationtype[].datatype 10017
+doctype[].annotationtype[].inherits[].idx 10025
+doctype[].annotationtype[].idx 10026
+doctype[].annotationtype[].name "car"
+doctype[].annotationtype[].internalid -973728295
+doctype[].annotationtype[].datatype 10018
+doctype[].annotationtype[].inherits[].idx 10027
+doctype[].annotationtype[].idx 10028
+doctype[].annotationtype[].name "employee"
+doctype[].annotationtype[].internalid 804106508
+doctype[].annotationtype[].datatype 10020
+doctype[].annotationtype[].inherits[].idx 10029
+doctype[].annotationtype[].idx 10025
+doctype[].annotationtype[].name "fruit"
+doctype[].annotationtype[].internalid 877283632
+doctype[].annotationtype[].datatype -1
+doctype[].annotationtype[].idx 10030
+doctype[].annotationtype[].name "intern"
+doctype[].annotationtype[].internalid 855102455
+doctype[].annotationtype[].datatype 10023
+doctype[].annotationtype[].inherits[].idx 10028
+doctype[].annotationtype[].idx 10031
+doctype[].annotationtype[].name "person"
+doctype[].annotationtype[].internalid 609952424
+doctype[].annotationtype[].datatype 10022
+doctype[].annotationtype[].idx 10027
+doctype[].annotationtype[].name "vehicle"
+doctype[].annotationtype[].internalid 290814930
+doctype[].annotationtype[].datatype 10019
+doctype[].annotationtype[].idx 10029
+doctype[].annotationtype[].name "worker"
+doctype[].annotationtype[].internalid 881692980
+doctype[].annotationtype[].datatype 10021
+doctype[].annotationtype[].inherits[].idx 10031
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "annotationsinheritance.header"
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "annotation.banana"
+doctype[].structtype[].field[].name "brand"
+doctype[].structtype[].field[].internalid 2085058127
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "annotation.vehicle"
+doctype[].structtype[].field[].name "numwheels"
+doctype[].structtype[].field[].internalid 50890304
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "annotation.car"
+doctype[].structtype[].inherits[].type 10019
+doctype[].structtype[].field[].name "color"
+doctype[].structtype[].field[].internalid 344415742
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10022
+doctype[].structtype[].name "annotation.person"
+doctype[].structtype[].field[].name "name"
+doctype[].structtype[].field[].internalid 1160796772
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10021
+doctype[].structtype[].name "annotation.worker"
+doctype[].structtype[].inherits[].type 10022
+doctype[].structtype[].idx 10020
+doctype[].structtype[].name "annotation.employee"
+doctype[].structtype[].inherits[].type 10021
+doctype[].structtype[].field[].name "employeeid"
+doctype[].structtype[].field[].internalid 109528570
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].idx 10023
+doctype[].structtype[].name "annotation.intern"
+doctype[].structtype[].inherits[].type 10020
+doctype[].structtype[].field[].name "enddate"
+doctype[].structtype[].field[].internalid 206146600
+doctype[].structtype[].field[].type 10008
diff --git a/config-model/src/test/derived/annotationsinheritance2/documentmanager.cfg b/config-model/src/test/derived/annotationsinheritance2/documentmanager.cfg
index 85aef02bb3c..b67f1df3b4b 100644
--- a/config-model/src/test/derived/annotationsinheritance2/documentmanager.cfg
+++ b/config-model/src/test/derived/annotationsinheritance2/documentmanager.cfg
@@ -1,91 +1,94 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1443831334
-datatype[].structtype[].name "annotation.c"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "cfoo"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1443832295
-datatype[].structtype[].name "annotation.d"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].inherits[].name "annotation.c"
-datatype[].structtype[].inherits[].version 0
-datatype[].id 1443833256
-datatype[].structtype[].name "annotation.e"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].inherits[].name "annotation.d"
-datatype[].structtype[].inherits[].version 0
-datatype[].id 1443835178
-datatype[].structtype[].name "annotation.g"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "gfoo"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 424382193
-datatype[].structtype[].name "annotationsinheritance2.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id -1730091890
-datatype[].documenttype[].name "annotationsinheritance2"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 424382193
-datatype[].documenttype[].bodystruct 0
-annotationtype[].id 1769416289
-annotationtype[].name "a"
-annotationtype[].datatype -1
-annotationtype[].id 1966167951
-annotationtype[].name "b"
-annotationtype[].datatype -1
-annotationtype[].inherits[].id 1769416289
-annotationtype[].id 1082875699
-annotationtype[].name "c"
-annotationtype[].datatype 1443831334
-annotationtype[].id 383816109
-annotationtype[].name "d"
-annotationtype[].datatype 1443832295
-annotationtype[].inherits[].id 1082875699
-annotationtype[].id -398332878
-annotationtype[].name "e"
-annotationtype[].datatype 1443833256
-annotationtype[].inherits[].id 383816109
-annotationtype[].id 422169831
-annotationtype[].name "f"
-annotationtype[].datatype -1
-annotationtype[].id 907314269
-annotationtype[].name "g"
-annotationtype[].datatype 1443835178
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "annotationsinheritance2"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].annotationtype[].idx 10021
+doctype[].annotationtype[].name "a"
+doctype[].annotationtype[].internalid 1769416289
+doctype[].annotationtype[].datatype -1
+doctype[].annotationtype[].idx 10022
+doctype[].annotationtype[].name "b"
+doctype[].annotationtype[].internalid 1966167951
+doctype[].annotationtype[].datatype -1
+doctype[].annotationtype[].inherits[].idx 10021
+doctype[].annotationtype[].idx 10023
+doctype[].annotationtype[].name "c"
+doctype[].annotationtype[].internalid 1082875699
+doctype[].annotationtype[].datatype 10017
+doctype[].annotationtype[].idx 10024
+doctype[].annotationtype[].name "d"
+doctype[].annotationtype[].internalid 383816109
+doctype[].annotationtype[].datatype 10018
+doctype[].annotationtype[].inherits[].idx 10023
+doctype[].annotationtype[].idx 10025
+doctype[].annotationtype[].name "e"
+doctype[].annotationtype[].internalid -398332878
+doctype[].annotationtype[].datatype 10019
+doctype[].annotationtype[].inherits[].idx 10024
+doctype[].annotationtype[].idx 10026
+doctype[].annotationtype[].name "f"
+doctype[].annotationtype[].internalid 422169831
+doctype[].annotationtype[].datatype -1
+doctype[].annotationtype[].idx 10027
+doctype[].annotationtype[].name "g"
+doctype[].annotationtype[].internalid 907314269
+doctype[].annotationtype[].datatype 10020
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "annotationsinheritance2.header"
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "annotation.c"
+doctype[].structtype[].field[].name "cfoo"
+doctype[].structtype[].field[].internalid 648705706
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "annotation.d"
+doctype[].structtype[].inherits[].type 10017
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "annotation.e"
+doctype[].structtype[].inherits[].type 10018
+doctype[].structtype[].idx 10020
+doctype[].structtype[].name "annotation.g"
+doctype[].structtype[].field[].name "gfoo"
+doctype[].structtype[].field[].internalid 1703390249
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/annotationssimple/documentmanager.cfg b/config-model/src/test/derived/annotationssimple/documentmanager.cfg
index 1342a179239..e863e305643 100644
--- a/config-model/src/test/derived/annotationssimple/documentmanager.cfg
+++ b/config-model/src/test/derived/annotationssimple/documentmanager.cfg
@@ -1,32 +1,51 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1205708249
-datatype[].structtype[].name "annotationssimple.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id -1584092648
-datatype[].documenttype[].name "annotationssimple"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -1205708249
-datatype[].documenttype[].bodystruct 0
-annotationtype[].id -269517759
-annotationtype[].name "banana"
-annotationtype[].datatype -1
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "annotationssimple"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].annotationtype[].idx 10017
+doctype[].annotationtype[].name "banana"
+doctype[].annotationtype[].internalid -269517759
+doctype[].annotationtype[].datatype -1
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "annotationssimple.header"
diff --git a/config-model/src/test/derived/annotationsstruct/documentmanager.cfg b/config-model/src/test/derived/annotationsstruct/documentmanager.cfg
index 233c2f729fe..62084994721 100644
--- a/config-model/src/test/derived/annotationsstruct/documentmanager.cfg
+++ b/config-model/src/test/derived/annotationsstruct/documentmanager.cfg
@@ -1,52 +1,61 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1293792650
-datatype[].structtype[].name "my_struct"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "my_structfield"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1080124700
-datatype[].structtype[].name "annotation.my_anno"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "my_annofield"
-datatype[].structtype[].field[].datatype 1293792650
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1341437796
-datatype[].structtype[].name "annotationsstruct.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id -263977093
-datatype[].documenttype[].name "annotationsstruct"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 1341437796
-datatype[].documenttype[].bodystruct 0
-annotationtype[].id -160036815
-annotationtype[].name "my_anno"
-annotationtype[].datatype -1080124700
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "annotationsstruct"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].annotationtype[].idx 10019
+doctype[].annotationtype[].name "my_anno"
+doctype[].annotationtype[].internalid -160036815
+doctype[].annotationtype[].datatype 10017
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "annotationsstruct.header"
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "my_struct"
+doctype[].structtype[].field[].name "my_structfield"
+doctype[].structtype[].field[].internalid 327607926
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "annotation.my_anno"
+doctype[].structtype[].field[].name "my_annofield"
+doctype[].structtype[].field[].internalid 594209253
+doctype[].structtype[].field[].type 10018
diff --git a/config-model/src/test/derived/annotationsstructarray/documentmanager.cfg b/config-model/src/test/derived/annotationsstructarray/documentmanager.cfg
index 19c1c5eda2f..f30914ebbf6 100644
--- a/config-model/src/test/derived/annotationsstructarray/documentmanager.cfg
+++ b/config-model/src/test/derived/annotationsstructarray/documentmanager.cfg
@@ -1,54 +1,65 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1293792650
-datatype[].structtype[].name "my_struct"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "my_structfield"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 754837689
-datatype[].arraytype[].datatype 1293792650
-datatype[].id -1080124700
-datatype[].structtype[].name "annotation.my_anno"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "my_annofield"
-datatype[].structtype[].field[].datatype 754837689
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 94945597
-datatype[].structtype[].name "annotationsstructarray.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id 1593733058
-datatype[].documenttype[].name "annotationsstructarray"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 94945597
-datatype[].documenttype[].bodystruct 0
-annotationtype[].id -160036815
-annotationtype[].name "my_anno"
-annotationtype[].datatype -1080124700
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "annotationsstructarray"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].arraytype[].idx 10017
+doctype[].arraytype[].elementtype 10018
+doctype[].arraytype[].idx 10020
+doctype[].arraytype[].elementtype 10018
+doctype[].annotationtype[].idx 10021
+doctype[].annotationtype[].name "my_anno"
+doctype[].annotationtype[].internalid -160036815
+doctype[].annotationtype[].datatype 10019
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "annotationsstructarray.header"
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "my_struct"
+doctype[].structtype[].field[].name "my_structfield"
+doctype[].structtype[].field[].internalid 327607926
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "annotation.my_anno"
+doctype[].structtype[].field[].name "my_annofield"
+doctype[].structtype[].field[].internalid 718266337
+doctype[].structtype[].field[].type 10020
diff --git a/config-model/src/test/derived/arrays/documentmanager.cfg b/config-model/src/test/derived/arrays/documentmanager.cfg
index 554cf017b54..fc9f42afab2 100644
--- a/config-model/src/test/derived/arrays/documentmanager.cfg
+++ b/config-model/src/test/derived/arrays/documentmanager.cfg
@@ -1,60 +1,88 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1486737430
-datatype[].arraytype[].datatype 2
-datatype[].id -1245117006
-datatype[].arraytype[].datatype 0
-datatype[].id 1328286588
-datatype[].weightedsettype[].datatype 2
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id 1081627459
-datatype[].structtype[].name "arrays.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "tags"
-datatype[].structtype[].field[].datatype -1486737430
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "ratings"
-datatype[].structtype[].field[].datatype -1245117006
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "a"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "b"
-datatype[].structtype[].field[].datatype -1486737430
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "c"
-datatype[].structtype[].field[].datatype 1328286588
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1292863364
-datatype[].documenttype[].name "arrays"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 1081627459
-datatype[].documenttype[].bodystruct 0
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "arrays"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{default}.fields[] "a"
+doctype[].fieldsets{default}.fields[] "b"
+doctype[].fieldsets{default}.fields[] "c"
+doctype[].fieldsets{[document]}.fields[] "a"
+doctype[].fieldsets{[document]}.fields[] "b"
+doctype[].fieldsets{[document]}.fields[] "c"
+doctype[].fieldsets{[document]}.fields[] "ratings"
+doctype[].fieldsets{[document]}.fields[] "tags"
+doctype[].arraytype[].idx 10017
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10018
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10019
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10021
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10022
+doctype[].arraytype[].elementtype 10012
+doctype[].wsettype[].idx 10020
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10023
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "arrays.header"
+doctype[].structtype[].field[].name "tags"
+doctype[].structtype[].field[].internalid 477541661
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "ratings"
+doctype[].structtype[].field[].internalid 80274180
+doctype[].structtype[].field[].type 10018
+doctype[].structtype[].field[].name "a"
+doctype[].structtype[].field[].internalid 493339625
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "b"
+doctype[].structtype[].field[].internalid 1913648692
+doctype[].structtype[].field[].type 10019
+doctype[].structtype[].field[].name "c"
+doctype[].structtype[].field[].internalid 2069269023
+doctype[].structtype[].field[].type 10020
diff --git a/config-model/src/test/derived/attributeprefetch/documentmanager.cfg b/config-model/src/test/derived/attributeprefetch/documentmanager.cfg
index b26698d83a6..aeca3f9fd74 100644
--- a/config-model/src/test/derived/attributeprefetch/documentmanager.cfg
+++ b/config-model/src/test/derived/attributeprefetch/documentmanager.cfg
@@ -1,137 +1,191 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 49942803
-datatype[].arraytype[].datatype 16
-datatype[].id -1068914395
-datatype[].weightedsettype[].datatype 16
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id -1245117006
-datatype[].arraytype[].datatype 0
-datatype[].id 519906144
-datatype[].weightedsettype[].datatype 0
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id 58874399
-datatype[].arraytype[].datatype 4
-datatype[].id -1059982799
-datatype[].weightedsettype[].datatype 4
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id 1650586661
-datatype[].arraytype[].datatype 1
-datatype[].id 1325751891
-datatype[].weightedsettype[].datatype 1
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id -2054976470
-datatype[].arraytype[].datatype 5
-datatype[].id 760047548
-datatype[].weightedsettype[].datatype 5
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id -1486737430
-datatype[].arraytype[].datatype 2
-datatype[].id 1328286588
-datatype[].weightedsettype[].datatype 2
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id -109105370
-datatype[].structtype[].name "prefetch.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "singlebyte"
-datatype[].structtype[].field[].datatype 16
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "multibyte"
-datatype[].structtype[].field[].datatype 49942803
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "wsbyte"
-datatype[].structtype[].field[].datatype -1068914395
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "singleint"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "multiint"
-datatype[].structtype[].field[].datatype -1245117006
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "wsint"
-datatype[].structtype[].field[].datatype 519906144
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "singlelong"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "multilong"
-datatype[].structtype[].field[].datatype 58874399
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "wslong"
-datatype[].structtype[].field[].datatype -1059982799
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "singlefloat"
-datatype[].structtype[].field[].datatype 1
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "multifloat"
-datatype[].structtype[].field[].datatype 1650586661
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "wsfloat"
-datatype[].structtype[].field[].datatype 1325751891
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "singledouble"
-datatype[].structtype[].field[].datatype 5
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "multidouble"
-datatype[].structtype[].field[].datatype -2054976470
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "wsdouble"
-datatype[].structtype[].field[].datatype 760047548
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "singlestring"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "multistring"
-datatype[].structtype[].field[].datatype -1486737430
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "wsstring"
-datatype[].structtype[].field[].datatype 1328286588
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1458051591
-datatype[].documenttype[].name "prefetch"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -109105370
-datatype[].documenttype[].bodystruct 0
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "prefetch"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "multibyte"
+doctype[].fieldsets{[document]}.fields[] "multidouble"
+doctype[].fieldsets{[document]}.fields[] "multifloat"
+doctype[].fieldsets{[document]}.fields[] "multiint"
+doctype[].fieldsets{[document]}.fields[] "multilong"
+doctype[].fieldsets{[document]}.fields[] "multistring"
+doctype[].fieldsets{[document]}.fields[] "singlebyte"
+doctype[].fieldsets{[document]}.fields[] "singledouble"
+doctype[].fieldsets{[document]}.fields[] "singlefloat"
+doctype[].fieldsets{[document]}.fields[] "singleint"
+doctype[].fieldsets{[document]}.fields[] "singlelong"
+doctype[].fieldsets{[document]}.fields[] "singlestring"
+doctype[].fieldsets{[document]}.fields[] "wsbyte"
+doctype[].fieldsets{[document]}.fields[] "wsdouble"
+doctype[].fieldsets{[document]}.fields[] "wsfloat"
+doctype[].fieldsets{[document]}.fields[] "wsint"
+doctype[].fieldsets{[document]}.fields[] "wslong"
+doctype[].fieldsets{[document]}.fields[] "wsstring"
+doctype[].arraytype[].idx 10017
+doctype[].arraytype[].elementtype 10003
+doctype[].arraytype[].idx 10019
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10021
+doctype[].arraytype[].elementtype 10008
+doctype[].arraytype[].idx 10023
+doctype[].arraytype[].elementtype 10005
+doctype[].arraytype[].idx 10025
+doctype[].arraytype[].elementtype 10004
+doctype[].arraytype[].idx 10027
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10029
+doctype[].arraytype[].elementtype 10003
+doctype[].arraytype[].idx 10030
+doctype[].arraytype[].elementtype 10004
+doctype[].arraytype[].idx 10031
+doctype[].arraytype[].elementtype 10005
+doctype[].arraytype[].idx 10032
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10033
+doctype[].arraytype[].elementtype 10008
+doctype[].arraytype[].idx 10034
+doctype[].arraytype[].elementtype 10012
+doctype[].wsettype[].idx 10018
+doctype[].wsettype[].elementtype 10003
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10020
+doctype[].wsettype[].elementtype 10007
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10022
+doctype[].wsettype[].elementtype 10008
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10024
+doctype[].wsettype[].elementtype 10005
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10026
+doctype[].wsettype[].elementtype 10004
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10028
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10035
+doctype[].wsettype[].elementtype 10003
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10036
+doctype[].wsettype[].elementtype 10004
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10037
+doctype[].wsettype[].elementtype 10005
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10038
+doctype[].wsettype[].elementtype 10007
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10039
+doctype[].wsettype[].elementtype 10008
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10040
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "prefetch.header"
+doctype[].structtype[].field[].name "singlebyte"
+doctype[].structtype[].field[].internalid 283133197
+doctype[].structtype[].field[].type 10003
+doctype[].structtype[].field[].name "multibyte"
+doctype[].structtype[].field[].internalid 97388815
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "wsbyte"
+doctype[].structtype[].field[].internalid 208948697
+doctype[].structtype[].field[].type 10018
+doctype[].structtype[].field[].name "singleint"
+doctype[].structtype[].field[].internalid 939533053
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "multiint"
+doctype[].structtype[].field[].internalid 1746431344
+doctype[].structtype[].field[].type 10019
+doctype[].structtype[].field[].name "wsint"
+doctype[].structtype[].field[].internalid 1936248443
+doctype[].structtype[].field[].type 10020
+doctype[].structtype[].field[].name "singlelong"
+doctype[].structtype[].field[].internalid 926038302
+doctype[].structtype[].field[].type 10008
+doctype[].structtype[].field[].name "multilong"
+doctype[].structtype[].field[].internalid 1450042501
+doctype[].structtype[].field[].type 10021
+doctype[].structtype[].field[].name "wslong"
+doctype[].structtype[].field[].internalid 838342430
+doctype[].structtype[].field[].type 10022
+doctype[].structtype[].field[].name "singlefloat"
+doctype[].structtype[].field[].internalid 454654240
+doctype[].structtype[].field[].type 10005
+doctype[].structtype[].field[].name "multifloat"
+doctype[].structtype[].field[].internalid 1028626753
+doctype[].structtype[].field[].type 10023
+doctype[].structtype[].field[].name "wsfloat"
+doctype[].structtype[].field[].internalid 2087992058
+doctype[].structtype[].field[].type 10024
+doctype[].structtype[].field[].name "singledouble"
+doctype[].structtype[].field[].internalid 1982688634
+doctype[].structtype[].field[].type 10004
+doctype[].structtype[].field[].name "multidouble"
+doctype[].structtype[].field[].internalid 1316159002
+doctype[].structtype[].field[].type 10025
+doctype[].structtype[].field[].name "wsdouble"
+doctype[].structtype[].field[].internalid 995331392
+doctype[].structtype[].field[].type 10026
+doctype[].structtype[].field[].name "singlestring"
+doctype[].structtype[].field[].internalid 289408547
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "multistring"
+doctype[].structtype[].field[].internalid 862051908
+doctype[].structtype[].field[].type 10027
+doctype[].structtype[].field[].name "wsstring"
+doctype[].structtype[].field[].internalid 447961272
+doctype[].structtype[].field[].type 10028
diff --git a/config-model/src/test/derived/complex/documentmanager.cfg b/config-model/src/test/derived/complex/documentmanager.cfg
index bc5947ad2b5..dd243a88f69 100644
--- a/config-model/src/test/derived/complex/documentmanager.cfg
+++ b/config-model/src/test/derived/complex/documentmanager.cfg
@@ -1,136 +1,158 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1650586661
-datatype[].arraytype[].datatype 1
-datatype[].id -1245117006
-datatype[].arraytype[].datatype 0
-datatype[].id -1749463923
-datatype[].structtype[].name "complex.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "title"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "location"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "dyntitle"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "special1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "special2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "special3"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "prefixenabled"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "source"
-datatype[].structtype[].field[].datatype 10
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "docurl"
-datatype[].structtype[].field[].datatype 10
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "fleeting"
-datatype[].structtype[].field[].datatype 1650586661
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "fleeting2"
-datatype[].structtype[].field[].datatype 1
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "foundat"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "collapseby"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "yEaR"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "stringfield"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "exactemento"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "exactagain"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "ts"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "combineda"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "combinedb"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "category"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "woe"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "year_sub"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "year_arr"
-datatype[].structtype[].field[].datatype -1245117006
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "exact"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1402929550
-datatype[].documenttype[].name "complex"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -1749463923
-datatype[].documenttype[].bodystruct 0
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "complex"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{default}.fields[] "stringfield"
+doctype[].fieldsets{default}.fields[] "title"
+doctype[].fieldsets{special}.fields[] "special1"
+doctype[].fieldsets{special}.fields[] "special2"
+doctype[].fieldsets{special}.fields[] "special3"
+doctype[].fieldsets{all}.fields[] "combineda"
+doctype[].fieldsets{all}.fields[] "combinedb"
+doctype[].fieldsets{[document]}.fields[] "category"
+doctype[].fieldsets{[document]}.fields[] "collapseby"
+doctype[].fieldsets{[document]}.fields[] "combineda"
+doctype[].fieldsets{[document]}.fields[] "combinedb"
+doctype[].fieldsets{[document]}.fields[] "docurl"
+doctype[].fieldsets{[document]}.fields[] "dyntitle"
+doctype[].fieldsets{[document]}.fields[] "exactagain"
+doctype[].fieldsets{[document]}.fields[] "exactemento"
+doctype[].fieldsets{[document]}.fields[] "fleeting"
+doctype[].fieldsets{[document]}.fields[] "fleeting2"
+doctype[].fieldsets{[document]}.fields[] "foundat"
+doctype[].fieldsets{[document]}.fields[] "location"
+doctype[].fieldsets{[document]}.fields[] "prefixenabled"
+doctype[].fieldsets{[document]}.fields[] "source"
+doctype[].fieldsets{[document]}.fields[] "special1"
+doctype[].fieldsets{[document]}.fields[] "special2"
+doctype[].fieldsets{[document]}.fields[] "special3"
+doctype[].fieldsets{[document]}.fields[] "stringfield"
+doctype[].fieldsets{[document]}.fields[] "title"
+doctype[].fieldsets{[document]}.fields[] "ts"
+doctype[].fieldsets{[document]}.fields[] "yEaR"
+doctype[].arraytype[].idx 10017
+doctype[].arraytype[].elementtype 10005
+doctype[].arraytype[].idx 10018
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10019
+doctype[].arraytype[].elementtype 10005
+doctype[].arraytype[].idx 10020
+doctype[].arraytype[].elementtype 10007
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "complex.header"
+doctype[].structtype[].field[].name "title"
+doctype[].structtype[].field[].internalid 567626448
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "location"
+doctype[].structtype[].field[].internalid 2099439365
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "dyntitle"
+doctype[].structtype[].field[].internalid 182615872
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "special1"
+doctype[].structtype[].field[].internalid 37251308
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "special2"
+doctype[].structtype[].field[].internalid 46142511
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "special3"
+doctype[].structtype[].field[].internalid 605997964
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "prefixenabled"
+doctype[].structtype[].field[].internalid 1688590618
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "source"
+doctype[].structtype[].field[].internalid 563409865
+doctype[].structtype[].field[].type 10014
+doctype[].structtype[].field[].name "docurl"
+doctype[].structtype[].field[].internalid 689738609
+doctype[].structtype[].field[].type 10014
+doctype[].structtype[].field[].name "fleeting"
+doctype[].structtype[].field[].internalid 1278868010
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "fleeting2"
+doctype[].structtype[].field[].internalid 298469070
+doctype[].structtype[].field[].type 10005
+doctype[].structtype[].field[].name "foundat"
+doctype[].structtype[].field[].internalid 827329375
+doctype[].structtype[].field[].type 10008
+doctype[].structtype[].field[].name "collapseby"
+doctype[].structtype[].field[].internalid 2107367198
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "yEaR"
+doctype[].structtype[].field[].internalid 1488364441
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "stringfield"
+doctype[].structtype[].field[].internalid 1182460484
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "exactemento"
+doctype[].structtype[].field[].internalid 1641665351
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "exactagain"
+doctype[].structtype[].field[].internalid 2115261858
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "ts"
+doctype[].structtype[].field[].internalid 227578142
+doctype[].structtype[].field[].type 10008
+doctype[].structtype[].field[].name "combineda"
+doctype[].structtype[].field[].internalid 1941849266
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "combinedb"
+doctype[].structtype[].field[].internalid 215566953
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "category"
+doctype[].structtype[].field[].internalid 1356821726
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "woe"
+doctype[].structtype[].field[].internalid 730907325
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "year_sub"
+doctype[].structtype[].field[].internalid 920405828
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "year_arr"
+doctype[].structtype[].field[].internalid 2008361478
+doctype[].structtype[].field[].type 10018
+doctype[].structtype[].field[].name "exact"
+doctype[].structtype[].field[].internalid 1658433671
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/emptydefault/documentmanager.cfg b/config-model/src/test/derived/emptydefault/documentmanager.cfg
index f4234aee087..a6530d49507 100644
--- a/config-model/src/test/derived/emptydefault/documentmanager.cfg
+++ b/config-model/src/test/derived/emptydefault/documentmanager.cfg
@@ -1,37 +1,55 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 461724009
-datatype[].structtype[].name "emptydefault.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "one"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "two"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1663995626
-datatype[].documenttype[].name "emptydefault"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 461724009
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{[document]}.fields[] "one"
-datatype[].documenttype[].fieldsets{[document]}.fields[] "two"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "emptydefault"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "one"
+doctype[].fieldsets{[document]}.fields[] "two"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "emptydefault.header"
+doctype[].structtype[].field[].name "one"
+doctype[].structtype[].field[].internalid 997119011
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "two"
+doctype[].structtype[].field[].internalid 2054688289
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/id/documentmanager.cfg b/config-model/src/test/derived/id/documentmanager.cfg
index dad69375887..fafea7dd4bc 100644
--- a/config-model/src/test/derived/id/documentmanager.cfg
+++ b/config-model/src/test/derived/id/documentmanager.cfg
@@ -1,33 +1,51 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -531633022
-datatype[].structtype[].name "id.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "uri"
-datatype[].structtype[].field[].datatype 10
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 3225629
-datatype[].documenttype[].name "id"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -531633022
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{[document]}.fields[] "uri"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "id"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "uri"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "id.header"
+doctype[].structtype[].field[].name "uri"
+doctype[].structtype[].field[].internalid 933242992
+doctype[].structtype[].field[].type 10014
diff --git a/config-model/src/test/derived/indexswitches/documentmanager.cfg b/config-model/src/test/derived/indexswitches/documentmanager.cfg
index 8ba249ed751..7f6b9150e07 100644
--- a/config-model/src/test/derived/indexswitches/documentmanager.cfg
+++ b/config-model/src/test/derived/indexswitches/documentmanager.cfg
@@ -1,46 +1,64 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -555640823
-datatype[].structtype[].name "indexswitches.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "title"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "descr"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "source_src"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "source"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -753375626
-datatype[].documenttype[].name "indexswitches"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -555640823
-datatype[].documenttype[].bodystruct 0
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "indexswitches"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{default}.fields[] "descr"
+doctype[].fieldsets{default}.fields[] "title"
+doctype[].fieldsets{[document]}.fields[] "descr"
+doctype[].fieldsets{[document]}.fields[] "source_src"
+doctype[].fieldsets{[document]}.fields[] "title"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "indexswitches.header"
+doctype[].structtype[].field[].name "title"
+doctype[].structtype[].field[].internalid 567626448
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "descr"
+doctype[].structtype[].field[].internalid 1499258718
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "source_src"
+doctype[].structtype[].field[].internalid 563732473
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "source"
+doctype[].structtype[].field[].internalid 1327368301
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/namecollision/documentmanager.cfg b/config-model/src/test/derived/namecollision/documentmanager.cfg
index 99da89f4fbf..e520c1144fa 100644
--- a/config-model/src/test/derived/namecollision/documentmanager.cfg
+++ b/config-model/src/test/derived/namecollision/documentmanager.cfg
@@ -1,56 +1,63 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -379118517
-datatype[].structtype[].name "collision.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id 1557022836
-datatype[].documenttype[].name "collision"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -379118517
-datatype[].documenttype[].bodystruct 0
-datatype[].id 1557022836
-datatype[].structtype[].name "collision"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].id -1730522993
-datatype[].arraytype[].datatype 1557022836
-datatype[].id -1270379114
-datatype[].structtype[].name "collisionstruct.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "structarray"
-datatype[].structtype[].field[].datatype -1730522993
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1723079287
-datatype[].documenttype[].name "collisionstruct"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -1270379114
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{[]}.fields[] "structarray"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "collision"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "collision.header"
+doctype[].name "collisionstruct"
+doctype[].idx 10017
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10018
+doctype[].fieldsets{[document]}.fields[] "structarray"
+doctype[].arraytype[].idx 10019
+doctype[].arraytype[].elementtype 10020
+doctype[].arraytype[].idx 10021
+doctype[].arraytype[].elementtype 10020
+doctype[].structtype[].idx 10020
+doctype[].structtype[].name "collision"
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "collisionstruct.header"
+doctype[].structtype[].field[].name "structarray"
+doctype[].structtype[].field[].internalid 828511543
+doctype[].structtype[].field[].type 10019
diff --git a/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg b/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg
index e37ea304b18..be048ee2eba 100644
--- a/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg
+++ b/config-model/src/test/derived/prefixexactattribute/documentmanager.cfg
@@ -1,49 +1,67 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -739138930
-datatype[].structtype[].name "prefixexactattribute.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "indexfield0"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "attributefield1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "attributefield2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "indexfield1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "indexfield2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1812793455
-datatype[].documenttype[].name "prefixexactattribute"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -739138930
-datatype[].documenttype[].bodystruct 0
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "prefixexactattribute"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "attributefield1"
+doctype[].fieldsets{[document]}.fields[] "attributefield2"
+doctype[].fieldsets{[document]}.fields[] "indexfield0"
+doctype[].fieldsets{[document]}.fields[] "indexfield1"
+doctype[].fieldsets{[document]}.fields[] "indexfield2"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "prefixexactattribute.header"
+doctype[].structtype[].field[].name "indexfield0"
+doctype[].structtype[].field[].internalid 645342977
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "attributefield1"
+doctype[].structtype[].field[].internalid 76109497
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "attributefield2"
+doctype[].structtype[].field[].internalid 1802174375
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "indexfield1"
+doctype[].structtype[].field[].internalid 428289584
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "indexfield2"
+doctype[].structtype[].field[].internalid 901251686
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/ranktypes/documentmanager.cfg b/config-model/src/test/derived/ranktypes/documentmanager.cfg
index dc02052c509..33d41084651 100644
--- a/config-model/src/test/derived/ranktypes/documentmanager.cfg
+++ b/config-model/src/test/derived/ranktypes/documentmanager.cfg
@@ -1,48 +1,66 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -471393776
-datatype[].structtype[].name "ranktypes.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "title"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "descr"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "keywords"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "identity"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "identity_literal"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -883421617
-datatype[].documenttype[].name "ranktypes"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -471393776
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{[document]}.fields[] "descr"
-datatype[].documenttype[].fieldsets{[document]}.fields[] "identity"
-datatype[].documenttype[].fieldsets{[document]}.fields[] "keywords"
-datatype[].documenttype[].fieldsets{[document]}.fields[] "title"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "ranktypes"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "descr"
+doctype[].fieldsets{[document]}.fields[] "identity"
+doctype[].fieldsets{[document]}.fields[] "keywords"
+doctype[].fieldsets{[document]}.fields[] "title"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "ranktypes.header"
+doctype[].structtype[].field[].name "title"
+doctype[].structtype[].field[].internalid 567626448
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "descr"
+doctype[].structtype[].field[].internalid 1499258718
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "keywords"
+doctype[].structtype[].field[].internalid 1813672906
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "identity"
+doctype[].structtype[].field[].internalid 92760117
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "identity_literal"
+doctype[].structtype[].field[].internalid 459073620
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/schemainheritance/documentmanager.cfg b/config-model/src/test/derived/schemainheritance/documentmanager.cfg
index ec13eae92ff..12c29667079 100644
--- a/config-model/src/test/derived/schemainheritance/documentmanager.cfg
+++ b/config-model/src/test/derived/schemainheritance/documentmanager.cfg
@@ -1,99 +1,100 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 990242616
-datatype[].structtype[].name "importedschema.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "importedfield1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "importedfield2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 167001639
-datatype[].documenttype[].name "importedschema"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 990242616
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{[]}.fields[] "importedfield1"
-datatype[].documenttype[].fieldsets{[]}.fields[] "importedfield2"
-datatype[].id -1266134872
-datatype[].referencetype[].target_type_id 167001639
-datatype[].id 836075987
-datatype[].structtype[].name "parent.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "pf1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "importedschema_ref"
-datatype[].structtype[].field[].datatype -1266134872
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "parent_field"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1175161836
-datatype[].documenttype[].name "parent"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 836075987
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{parent_set}.fields[] "pf1"
-datatype[].documenttype[].fieldsets{[]}.fields[] "importedschema_ref"
-datatype[].documenttype[].fieldsets{[]}.fields[] "pf1"
-datatype[].documenttype[].importedfield[].name "parent_imported"
-datatype[].id 81425825
-datatype[].structtype[].name "child.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "cf1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "parent_field"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "child_field"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 746267614
-datatype[].documenttype[].name "child"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].inherits[].name "parent"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 81425825
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{parent_set}.fields[] "pf1"
-datatype[].documenttype[].fieldsets{child_set}.fields[] "cf1"
-datatype[].documenttype[].fieldsets{child_set}.fields[] "pf1"
-datatype[].documenttype[].fieldsets{[]}.fields[] "cf1"
-datatype[].documenttype[].fieldsets{[]}.fields[] "importedschema_ref"
-datatype[].documenttype[].fieldsets{[]}.fields[] "pf1"
-datatype[].documenttype[].importedfield[].name "parent_imported"
-datatype[].documenttype[].importedfield[].name "child_imported"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "importedschema"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "importedfield1"
+doctype[].fieldsets{[document]}.fields[] "importedfield2"
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "importedschema.header"
+doctype[].structtype[].field[].name "importedfield1"
+doctype[].structtype[].field[].internalid 847030245
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "importedfield2"
+doctype[].structtype[].field[].internalid 1763348623
+doctype[].structtype[].field[].type 10012
+doctype[].name "parent"
+doctype[].idx 10017
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10018
+doctype[].fieldsets{parent_set}.fields[] "pf1"
+doctype[].fieldsets{[document]}.fields[] "importedschema_ref"
+doctype[].fieldsets{[document]}.fields[] "pf1"
+doctype[].importedfield[].name "parent_imported"
+doctype[].documentref[].idx 10019
+doctype[].documentref[].targettype 10015
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "parent.header"
+doctype[].structtype[].field[].name "pf1"
+doctype[].structtype[].field[].internalid 1474272447
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "importedschema_ref"
+doctype[].structtype[].field[].internalid 243883444
+doctype[].structtype[].field[].type 10019
+doctype[].structtype[].field[].name "parent_field"
+doctype[].structtype[].field[].internalid 933533022
+doctype[].structtype[].field[].type 10012
+doctype[].name "child"
+doctype[].idx 10020
+doctype[].inherits[].idx 10000
+doctype[].inherits[].idx 10017
+doctype[].contentstruct 10021
+doctype[].fieldsets{parent_set}.fields[] "pf1"
+doctype[].fieldsets{child_set}.fields[] "cf1"
+doctype[].fieldsets{child_set}.fields[] "pf1"
+doctype[].fieldsets{[document]}.fields[] "cf1"
+doctype[].fieldsets{[document]}.fields[] "importedschema_ref"
+doctype[].fieldsets{[document]}.fields[] "pf1"
+doctype[].importedfield[].name "parent_imported"
+doctype[].importedfield[].name "child_imported"
+doctype[].structtype[].idx 10021
+doctype[].structtype[].name "child.header"
+doctype[].structtype[].field[].name "cf1"
+doctype[].structtype[].field[].internalid 142606489
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "parent_field"
+doctype[].structtype[].field[].internalid 933533022
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "child_field"
+doctype[].structtype[].field[].internalid 1373649209
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/streamingstruct/documentmanager.cfg b/config-model/src/test/derived/streamingstruct/documentmanager.cfg
index 567944d3b78..cc2ee0b3979 100644
--- a/config-model/src/test/derived/streamingstruct/documentmanager.cfg
+++ b/config-model/src/test/derived/streamingstruct/documentmanager.cfg
@@ -1,146 +1,163 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 105061838
-datatype[].structtype[].name "ns1"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "nf1"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "nf1s"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "nf2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 3474528
-datatype[].structtype[].name "s1"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "f1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "f1s"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "f2"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "f3"
-datatype[].structtype[].field[].datatype 5
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1497802371
-datatype[].maptype[].keytype 4
-datatype[].maptype[].valtype 2
-datatype[].id -1425630723
-datatype[].arraytype[].datatype 3474528
-datatype[].id 731395686
-datatype[].structtype[].name "streamingstruct.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "coupleof"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "normalfields"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "a"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "m"
-datatype[].structtype[].field[].datatype -1497802371
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "b"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "c"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "c2"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "c3"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "n"
-datatype[].structtype[].field[].datatype 105061838
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "array1"
-datatype[].structtype[].field[].datatype -1425630723
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "array2"
-datatype[].structtype[].field[].datatype -1425630723
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "array3"
-datatype[].structtype[].field[].datatype -1425630723
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "subject"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "d"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "e"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "f"
-datatype[].structtype[].field[].datatype 3474528
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "g"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "anothersummaryfield"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "snippet"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "snippet2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 1433175737
-datatype[].documenttype[].name "streamingstruct"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 731395686
-datatype[].documenttype[].bodystruct 0
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "streamingstruct"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "a"
+doctype[].fieldsets{[document]}.fields[] "array1"
+doctype[].fieldsets{[document]}.fields[] "array2"
+doctype[].fieldsets{[document]}.fields[] "array3"
+doctype[].fieldsets{[document]}.fields[] "b"
+doctype[].fieldsets{[document]}.fields[] "c"
+doctype[].fieldsets{[document]}.fields[] "c2"
+doctype[].fieldsets{[document]}.fields[] "c3"
+doctype[].fieldsets{[document]}.fields[] "coupleof"
+doctype[].fieldsets{[document]}.fields[] "d"
+doctype[].fieldsets{[document]}.fields[] "e"
+doctype[].fieldsets{[document]}.fields[] "f"
+doctype[].fieldsets{[document]}.fields[] "g"
+doctype[].fieldsets{[document]}.fields[] "m"
+doctype[].fieldsets{[document]}.fields[] "n"
+doctype[].fieldsets{[document]}.fields[] "normalfields"
+doctype[].fieldsets{[document]}.fields[] "subject"
+doctype[].arraytype[].idx 10020
+doctype[].arraytype[].elementtype 10017
+doctype[].arraytype[].idx 10021
+doctype[].arraytype[].elementtype 10017
+doctype[].arraytype[].idx 10022
+doctype[].arraytype[].elementtype 10017
+doctype[].arraytype[].idx 10023
+doctype[].arraytype[].elementtype 10017
+doctype[].maptype[].idx 10018
+doctype[].maptype[].keytype 10008
+doctype[].maptype[].valuetype 10012
+doctype[].maptype[].idx 10024
+doctype[].maptype[].keytype 10008
+doctype[].maptype[].valuetype 10012
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "s1"
+doctype[].structtype[].field[].name "f1"
+doctype[].structtype[].field[].internalid 1911889118
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "f1s"
+doctype[].structtype[].field[].internalid 624198897
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "f2"
+doctype[].structtype[].field[].internalid 708327411
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "f3"
+doctype[].structtype[].field[].internalid 2137295507
+doctype[].structtype[].field[].type 10004
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "ns1"
+doctype[].structtype[].field[].name "nf1"
+doctype[].structtype[].field[].internalid 970725348
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "nf1s"
+doctype[].structtype[].field[].internalid 47697102
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "nf2"
+doctype[].structtype[].field[].internalid 1084090162
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "streamingstruct.header"
+doctype[].structtype[].field[].name "coupleof"
+doctype[].structtype[].field[].internalid 1611860736
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "normalfields"
+doctype[].structtype[].field[].internalid 1898724546
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "a"
+doctype[].structtype[].field[].internalid 1097803284
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "m"
+doctype[].structtype[].field[].internalid 914298689
+doctype[].structtype[].field[].type 10018
+doctype[].structtype[].field[].name "b"
+doctype[].structtype[].field[].internalid 754773144
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "c"
+doctype[].structtype[].field[].internalid 480045975
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "c2"
+doctype[].structtype[].field[].internalid 504337916
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "c3"
+doctype[].structtype[].field[].internalid 996353555
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "n"
+doctype[].structtype[].field[].internalid 679223015
+doctype[].structtype[].field[].type 10019
+doctype[].structtype[].field[].name "array1"
+doctype[].structtype[].field[].internalid 1863296233
+doctype[].structtype[].field[].type 10020
+doctype[].structtype[].field[].name "array2"
+doctype[].structtype[].field[].internalid 1491532076
+doctype[].structtype[].field[].type 10021
+doctype[].structtype[].field[].name "array3"
+doctype[].structtype[].field[].internalid 1585514103
+doctype[].structtype[].field[].type 10022
+doctype[].structtype[].field[].name "subject"
+doctype[].structtype[].field[].internalid 1677912730
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "d"
+doctype[].structtype[].field[].internalid 679827909
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "e"
+doctype[].structtype[].field[].internalid 416661641
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "f"
+doctype[].structtype[].field[].internalid 1258112309
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "g"
+doctype[].structtype[].field[].internalid 1091070635
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "snippet"
+doctype[].structtype[].field[].internalid 1102597618
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "snippet2"
+doctype[].structtype[].field[].internalid 1812076817
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "anothersummaryfield"
+doctype[].structtype[].field[].internalid 1811005492
+doctype[].structtype[].field[].type 10012
diff --git a/config-model/src/test/derived/structandfieldset/documentmanager.cfg b/config-model/src/test/derived/structandfieldset/documentmanager.cfg
index 64677184fb7..f30377a5b7e 100644
--- a/config-model/src/test/derived/structandfieldset/documentmanager.cfg
+++ b/config-model/src/test/derived/structandfieldset/documentmanager.cfg
@@ -1,54 +1,69 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -283419354
-datatype[].arraytype[].datatype 443162583
-datatype[].id 443162583
-datatype[].structtype[].name "person"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "first_name"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "last_name"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 306916075
-datatype[].structtype[].name "test.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "tag"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "people"
-datatype[].structtype[].field[].datatype -283419354
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -877171244
-datatype[].documenttype[].name "test"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 306916075
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{default}.fields[] "people.first_name"
-datatype[].documenttype[].fieldsets{default}.fields[] "tag"
-datatype[].documenttype[].fieldsets{[]}.fields[] "people"
-datatype[].documenttype[].fieldsets{[]}.fields[] "tag"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "test"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{default}.fields[] "people.first_name"
+doctype[].fieldsets{default}.fields[] "tag"
+doctype[].fieldsets{[document]}.fields[] "people"
+doctype[].fieldsets{[document]}.fields[] "tag"
+doctype[].arraytype[].idx 10017
+doctype[].arraytype[].elementtype 10018
+doctype[].arraytype[].idx 10019
+doctype[].arraytype[].elementtype 10018
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "person"
+doctype[].structtype[].field[].name "first_name"
+doctype[].structtype[].field[].internalid 1282582812
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "last_name"
+doctype[].structtype[].field[].internalid 127888549
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "test.header"
+doctype[].structtype[].field[].name "tag"
+doctype[].structtype[].field[].internalid 431488563
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "people"
+doctype[].structtype[].field[].internalid 1364826217
+doctype[].structtype[].field[].type 10017
diff --git a/config-model/src/test/derived/structanyorder/documentmanager.cfg b/config-model/src/test/derived/structanyorder/documentmanager.cfg
index be5e473e460..2b06c6d7214 100644
--- a/config-model/src/test/derived/structanyorder/documentmanager.cfg
+++ b/config-model/src/test/derived/structanyorder/documentmanager.cfg
@@ -1,84 +1,90 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 109267174
-datatype[].structtype[].name "sct"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "s1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "s2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "s3"
-datatype[].structtype[].field[].datatype 109267174
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "s4"
-datatype[].structtype[].field[].datatype 97614088
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 97614088
-datatype[].structtype[].name "foo"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "s1"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 517946310
-datatype[].structtype[].name "annotation.banana"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "b"
-datatype[].structtype[].field[].datatype 109267174
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "c"
-datatype[].structtype[].field[].datatype 97614088
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1244829667
-datatype[].arraytype[].datatype 109267174
-datatype[].id -364910881
-datatype[].structtype[].name "annotationsimplicitstruct.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "structfield"
-datatype[].structtype[].field[].datatype 109267174
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "structarrayfield"
-datatype[].structtype[].field[].datatype -1244829667
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -2099544992
-datatype[].documenttype[].name "annotationsimplicitstruct"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct -364910881
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{[document]}.fields[] "structarrayfield"
-datatype[].documenttype[].fieldsets{[document]}.fields[] "structfield"
-annotationtype[].id -269517759
-annotationtype[].name "banana"
-annotationtype[].datatype 517946310
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "annotationsimplicitstruct"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "structarrayfield"
+doctype[].fieldsets{[document]}.fields[] "structfield"
+doctype[].arraytype[].idx 10019
+doctype[].arraytype[].elementtype 10017
+doctype[].arraytype[].idx 10020
+doctype[].arraytype[].elementtype 10017
+doctype[].annotationtype[].idx 10022
+doctype[].annotationtype[].name "banana"
+doctype[].annotationtype[].internalid -269517759
+doctype[].annotationtype[].datatype 10021
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "foo"
+doctype[].structtype[].field[].name "s1"
+doctype[].structtype[].field[].internalid 475255687
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "sct"
+doctype[].structtype[].field[].name "s1"
+doctype[].structtype[].field[].internalid 2146820765
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "s2"
+doctype[].structtype[].field[].internalid 45366795
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "s3"
+doctype[].structtype[].field[].internalid 939491122
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "s4"
+doctype[].structtype[].field[].internalid 1572342940
+doctype[].structtype[].field[].type 10018
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "annotationsimplicitstruct.header"
+doctype[].structtype[].field[].name "structfield"
+doctype[].structtype[].field[].internalid 486207386
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "structarrayfield"
+doctype[].structtype[].field[].internalid 335048518
+doctype[].structtype[].field[].type 10019
+doctype[].structtype[].idx 10021
+doctype[].structtype[].name "annotation.banana"
+doctype[].structtype[].field[].name "b"
+doctype[].structtype[].field[].internalid 1964392128
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "c"
+doctype[].structtype[].field[].internalid 250751515
+doctype[].structtype[].field[].type 10018
diff --git a/config-model/src/test/derived/structinheritance/documentmanager.cfg b/config-model/src/test/derived/structinheritance/documentmanager.cfg
index 20994bacca2..ca11481afa4 100644
--- a/config-model/src/test/derived/structinheritance/documentmanager.cfg
+++ b/config-model/src/test/derived/structinheritance/documentmanager.cfg
@@ -1,71 +1,72 @@
enablecompression false
usev8geopositions false
-datatype[0].id 1381038251
-datatype[0].structtype[0].name "position"
-datatype[0].structtype[0].version 0
-datatype[0].structtype[0].compresstype NONE
-datatype[0].structtype[0].compresslevel 0
-datatype[0].structtype[0].compressthreshold 95
-datatype[0].structtype[0].compressminsize 800
-datatype[0].structtype[0].field[0].name "x"
-datatype[0].structtype[0].field[0].datatype 0
-datatype[0].structtype[0].field[0].detailedtype ""
-datatype[0].structtype[0].field[1].name "y"
-datatype[0].structtype[0].field[1].datatype 0
-datatype[0].structtype[0].field[1].detailedtype ""
-datatype[1].id -1396204461
-datatype[1].structtype[0].name "base"
-datatype[1].structtype[0].version 0
-datatype[1].structtype[0].compresstype NONE
-datatype[1].structtype[0].compresslevel 0
-datatype[1].structtype[0].compressthreshold 95
-datatype[1].structtype[0].compressminsize 800
-datatype[1].structtype[0].field[0].name "name"
-datatype[1].structtype[0].field[0].datatype 2
-datatype[1].structtype[0].field[0].detailedtype ""
-datatype[2].id 746267614
-datatype[2].structtype[0].name "child"
-datatype[2].structtype[0].version 0
-datatype[2].structtype[0].compresstype NONE
-datatype[2].structtype[0].compresslevel 0
-datatype[2].structtype[0].compressthreshold 95
-datatype[2].structtype[0].compressminsize 800
-datatype[2].structtype[0].field[0].name "age"
-datatype[2].structtype[0].field[0].datatype 0
-datatype[2].structtype[0].field[0].detailedtype ""
-datatype[2].structtype[0].inherits[0].name "base"
-datatype[2].structtype[0].inherits[0].version 0
-datatype[3].id 1811766610
-datatype[3].structtype[0].name "grandchild"
-datatype[3].structtype[0].version 0
-datatype[3].structtype[0].compresstype NONE
-datatype[3].structtype[0].compresslevel 0
-datatype[3].structtype[0].compressthreshold 95
-datatype[3].structtype[0].compressminsize 800
-datatype[3].structtype[0].field[0].name "toy"
-datatype[3].structtype[0].field[0].datatype 2
-datatype[3].structtype[0].field[0].detailedtype ""
-datatype[3].structtype[0].inherits[0].name "child"
-datatype[3].structtype[0].inherits[0].version 0
-datatype[4].id -2142109237
-datatype[4].structtype[0].name "simple.header"
-datatype[4].structtype[0].version 0
-datatype[4].structtype[0].compresstype NONE
-datatype[4].structtype[0].compresslevel 0
-datatype[4].structtype[0].compressthreshold 95
-datatype[4].structtype[0].compressminsize 800
-datatype[4].structtype[0].field[0].name "f1"
-datatype[4].structtype[0].field[0].datatype 746267614
-datatype[4].structtype[0].field[0].detailedtype ""
-datatype[4].structtype[0].field[1].name "f2"
-datatype[4].structtype[0].field[1].datatype 1811766610
-datatype[4].structtype[0].field[1].detailedtype ""
-datatype[5].id 485659380
-datatype[5].documenttype[0].name "simple"
-datatype[5].documenttype[0].version 0
-datatype[5].documenttype[0].inherits[0].name "document"
-datatype[5].documenttype[0].inherits[0].version 0
-datatype[5].documenttype[0].headerstruct -2142109237
-datatype[5].documenttype[0].bodystruct 0
-datatype[5].documenttype[0].fieldsets{[document]}.fields[0] "f1"
-datatype[5].documenttype[0].fieldsets{[document]}.fields[1] "f2"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "simple"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "f1"
+doctype[].fieldsets{[document]}.fields[] "f2"
+doctype[].structtype[].idx 10018
+doctype[].structtype[].name "base"
+doctype[].structtype[].field[].name "name"
+doctype[].structtype[].field[].internalid 1160796772
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10017
+doctype[].structtype[].name "child"
+doctype[].structtype[].inherits[].type 10018
+doctype[].structtype[].field[].name "age"
+doctype[].structtype[].field[].internalid 1862473705
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].idx 10019
+doctype[].structtype[].name "grandchild"
+doctype[].structtype[].inherits[].type 10017
+doctype[].structtype[].field[].name "toy"
+doctype[].structtype[].field[].internalid 536645790
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "simple.header"
+doctype[].structtype[].field[].name "f1"
+doctype[].structtype[].field[].internalid 750623154
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "f2"
+doctype[].structtype[].field[].internalid 1523850983
+doctype[].structtype[].field[].type 10019
diff --git a/config-model/src/test/derived/types/documentmanager.cfg b/config-model/src/test/derived/types/documentmanager.cfg
index ffdf090f761..3ee8b5cb38c 100644
--- a/config-model/src/test/derived/types/documentmanager.cfg
+++ b/config-model/src/test/derived/types/documentmanager.cfg
@@ -1,255 +1,368 @@
enablecompression false
usev8geopositions false
-datatype[].id 1381038251
-datatype[].structtype[].name "position"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "x"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "y"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1865479609
-datatype[].maptype[].keytype 2
-datatype[].maptype[].valtype 4
-datatype[].id 294108848
-datatype[].structtype[].name "folder"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "Version"
-datatype[].structtype[].field[].datatype 0
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "Name"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "FlagsCounter"
-datatype[].structtype[].field[].datatype -1865479609
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "anotherfolder"
-datatype[].structtype[].field[].datatype 294108848
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 109267174
-datatype[].structtype[].name "sct"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "s1"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "s2"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id 49942803
-datatype[].arraytype[].datatype 16
-datatype[].id 339965458
-datatype[].maptype[].keytype 2
-datatype[].maptype[].valtype 2
-datatype[].id -2092985853
-datatype[].structtype[].name "mystruct"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "bytearr"
-datatype[].structtype[].field[].datatype 49942803
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "mymap"
-datatype[].structtype[].field[].datatype 339965458
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "title"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "structfield"
-datatype[].structtype[].field[].datatype 2
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -1245117006
-datatype[].arraytype[].datatype 0
-datatype[].id 1328286588
-datatype[].weightedsettype[].datatype 2
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero false
-datatype[].id 2125328771
-datatype[].weightedsettype[].datatype 2
-datatype[].weightedsettype[].createifnonexistant false
-datatype[].weightedsettype[].removeifzero true
-datatype[].id 2065577986
-datatype[].weightedsettype[].datatype 2
-datatype[].weightedsettype[].createifnonexistant true
-datatype[].weightedsettype[].removeifzero false
-datatype[].id -1244829667
-datatype[].arraytype[].datatype 109267174
-datatype[].id -1584287606
-datatype[].maptype[].keytype 2
-datatype[].maptype[].valtype 0
-datatype[].id 2125154557
-datatype[].maptype[].keytype 2
-datatype[].maptype[].valtype 1
-datatype[].id -1715531035
-datatype[].maptype[].keytype 0
-datatype[].maptype[].valtype 4
-datatype[].id 2138385264
-datatype[].maptype[].keytype 0
-datatype[].maptype[].valtype 5
-datatype[].id 435886609
-datatype[].maptype[].keytype 2
-datatype[].maptype[].valtype -1245117006
-datatype[].id -1486737430
-datatype[].arraytype[].datatype 2
-datatype[].id 1707615575
-datatype[].arraytype[].datatype -1486737430
-datatype[].id -794985308
-datatype[].arraytype[].datatype 1707615575
-datatype[].id 69621385
-datatype[].arraytype[].datatype 339965458
-datatype[].id 1901258752
-datatype[].maptype[].keytype 0
-datatype[].maptype[].valtype -2092985853
-datatype[].id 759956026
-datatype[].arraytype[].datatype -2092985853
-datatype[].id -389833101
-datatype[].maptype[].keytype 0
-datatype[].maptype[].valtype 294108848
-datatype[].id 1328581348
-datatype[].structtype[].name "types.header"
-datatype[].structtype[].version 0
-datatype[].structtype[].compresstype NONE
-datatype[].structtype[].compresslevel 0
-datatype[].structtype[].compressthreshold 95
-datatype[].structtype[].compressminsize 800
-datatype[].structtype[].field[].name "abyte"
-datatype[].structtype[].field[].datatype 16
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "along"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "abool"
-datatype[].structtype[].field[].datatype 6
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "ashortfloat"
-datatype[].structtype[].field[].datatype 7
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "arrayfield"
-datatype[].structtype[].field[].datatype -1245117006
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "setfield"
-datatype[].structtype[].field[].datatype 1328286588
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "setfield2"
-datatype[].structtype[].field[].datatype 18
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "setfield3"
-datatype[].structtype[].field[].datatype 2125328771
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "setfield4"
-datatype[].structtype[].field[].datatype 2065577986
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "tagfield"
-datatype[].structtype[].field[].datatype 18
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "structfield"
-datatype[].structtype[].field[].datatype 109267174
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "structarrayfield"
-datatype[].structtype[].field[].datatype -1244829667
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "stringmapfield"
-datatype[].structtype[].field[].datatype 339965458
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "intmapfield"
-datatype[].structtype[].field[].datatype -1584287606
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "floatmapfield"
-datatype[].structtype[].field[].datatype 2125154557
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "longmapfield"
-datatype[].structtype[].field[].datatype -1715531035
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "doublemapfield"
-datatype[].structtype[].field[].datatype 2138385264
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "arraymapfield"
-datatype[].structtype[].field[].datatype 435886609
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "arrarr"
-datatype[].structtype[].field[].datatype -794985308
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "maparr"
-datatype[].structtype[].field[].datatype 69621385
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "mystructfield"
-datatype[].structtype[].field[].datatype -2092985853
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "mystructmap"
-datatype[].structtype[].field[].datatype 1901258752
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "mystructarr"
-datatype[].structtype[].field[].datatype 759956026
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "Folders"
-datatype[].structtype[].field[].datatype -389833101
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "juletre"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "album0"
-datatype[].structtype[].field[].datatype 18
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "album1"
-datatype[].structtype[].field[].datatype 18
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "other"
-datatype[].structtype[].field[].datatype 4
-datatype[].structtype[].field[].detailedtype ""
-datatype[].structtype[].field[].name "complexarray"
-datatype[].structtype[].field[].datatype 1416345047
-datatype[].structtype[].field[].detailedtype ""
-datatype[].id -372512406
-datatype[].maptype[].keytype 0
-datatype[].maptype[].valtype 1707615575
-datatype[].id 1416345047
-datatype[].arraytype[].datatype -372512406
-datatype[].id -853072901
-datatype[].documenttype[].name "types"
-datatype[].documenttype[].version 0
-datatype[].documenttype[].inherits[].name "document"
-datatype[].documenttype[].inherits[].version 0
-datatype[].documenttype[].headerstruct 1328581348
-datatype[].documenttype[].bodystruct 0
-datatype[].documenttype[].fieldsets{[document]}.fields[] "Folders"
-datatype[].documenttype[].fieldsets{[document]}.fields[] "abool"
-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[] "ashortfloat"
-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"
+doctype[].name "document"
+doctype[].idx 10000
+doctype[].contentstruct 10001
+doctype[].primitivetype[].idx 10002
+doctype[].primitivetype[].name "bool"
+doctype[].primitivetype[].idx 10003
+doctype[].primitivetype[].name "byte"
+doctype[].primitivetype[].idx 10004
+doctype[].primitivetype[].name "double"
+doctype[].primitivetype[].idx 10005
+doctype[].primitivetype[].name "float"
+doctype[].primitivetype[].idx 10006
+doctype[].primitivetype[].name "float16"
+doctype[].primitivetype[].idx 10007
+doctype[].primitivetype[].name "int"
+doctype[].primitivetype[].idx 10008
+doctype[].primitivetype[].name "long"
+doctype[].primitivetype[].idx 10010
+doctype[].primitivetype[].name "predicate"
+doctype[].primitivetype[].idx 10011
+doctype[].primitivetype[].name "raw"
+doctype[].primitivetype[].idx 10012
+doctype[].primitivetype[].name "string"
+doctype[].primitivetype[].idx 10014
+doctype[].primitivetype[].name "uri"
+doctype[].wsettype[].idx 10013
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10001
+doctype[].structtype[].name "document.header"
+doctype[].structtype[].idx 10009
+doctype[].structtype[].name "position"
+doctype[].structtype[].field[].name "x"
+doctype[].structtype[].field[].internalid 914677694
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "y"
+doctype[].structtype[].field[].internalid 900009410
+doctype[].structtype[].field[].type 10007
+doctype[].name "types"
+doctype[].idx 10015
+doctype[].inherits[].idx 10000
+doctype[].contentstruct 10016
+doctype[].fieldsets{[document]}.fields[] "Folders"
+doctype[].fieldsets{[document]}.fields[] "abool"
+doctype[].fieldsets{[document]}.fields[] "abyte"
+doctype[].fieldsets{[document]}.fields[] "album0"
+doctype[].fieldsets{[document]}.fields[] "album1"
+doctype[].fieldsets{[document]}.fields[] "along"
+doctype[].fieldsets{[document]}.fields[] "arrarr"
+doctype[].fieldsets{[document]}.fields[] "arrayfield"
+doctype[].fieldsets{[document]}.fields[] "arraymapfield"
+doctype[].fieldsets{[document]}.fields[] "ashortfloat"
+doctype[].fieldsets{[document]}.fields[] "complexarray"
+doctype[].fieldsets{[document]}.fields[] "doublemapfield"
+doctype[].fieldsets{[document]}.fields[] "floatmapfield"
+doctype[].fieldsets{[document]}.fields[] "intmapfield"
+doctype[].fieldsets{[document]}.fields[] "juletre"
+doctype[].fieldsets{[document]}.fields[] "longmapfield"
+doctype[].fieldsets{[document]}.fields[] "maparr"
+doctype[].fieldsets{[document]}.fields[] "mystructarr"
+doctype[].fieldsets{[document]}.fields[] "mystructfield"
+doctype[].fieldsets{[document]}.fields[] "mystructmap"
+doctype[].fieldsets{[document]}.fields[] "setfield"
+doctype[].fieldsets{[document]}.fields[] "setfield2"
+doctype[].fieldsets{[document]}.fields[] "setfield3"
+doctype[].fieldsets{[document]}.fields[] "setfield4"
+doctype[].fieldsets{[document]}.fields[] "stringmapfield"
+doctype[].fieldsets{[document]}.fields[] "structarrayfield"
+doctype[].fieldsets{[document]}.fields[] "structfield"
+doctype[].fieldsets{[document]}.fields[] "tagfield"
+doctype[].arraytype[].idx 10017
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10024
+doctype[].arraytype[].elementtype 10023
+doctype[].arraytype[].idx 10031
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10032
+doctype[].arraytype[].elementtype 10033
+doctype[].arraytype[].idx 10033
+doctype[].arraytype[].elementtype 10034
+doctype[].arraytype[].idx 10034
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10035
+doctype[].arraytype[].elementtype 10036
+doctype[].arraytype[].idx 10037
+doctype[].arraytype[].elementtype 10038
+doctype[].arraytype[].idx 10039
+doctype[].arraytype[].elementtype 10040
+doctype[].arraytype[].idx 10040
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10042
+doctype[].arraytype[].elementtype 10003
+doctype[].arraytype[].idx 10045
+doctype[].arraytype[].elementtype 10041
+doctype[].arraytype[].idx 10051
+doctype[].arraytype[].elementtype 10052
+doctype[].arraytype[].idx 10052
+doctype[].arraytype[].elementtype 10053
+doctype[].arraytype[].idx 10053
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10054
+doctype[].arraytype[].elementtype 10055
+doctype[].arraytype[].idx 10055
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10056
+doctype[].arraytype[].elementtype 10057
+doctype[].arraytype[].idx 10058
+doctype[].arraytype[].elementtype 10059
+doctype[].arraytype[].idx 10059
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10060
+doctype[].arraytype[].elementtype 10061
+doctype[].arraytype[].idx 10062
+doctype[].arraytype[].elementtype 10003
+doctype[].arraytype[].idx 10063
+doctype[].arraytype[].elementtype 10007
+doctype[].arraytype[].idx 10064
+doctype[].arraytype[].elementtype 10041
+doctype[].arraytype[].idx 10065
+doctype[].arraytype[].elementtype 10023
+doctype[].arraytype[].idx 10066
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10068
+doctype[].arraytype[].elementtype 10069
+doctype[].arraytype[].idx 10069
+doctype[].arraytype[].elementtype 10012
+doctype[].arraytype[].idx 10075
+doctype[].arraytype[].elementtype 10007
+doctype[].maptype[].idx 10025
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10012
+doctype[].maptype[].idx 10026
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10007
+doctype[].maptype[].idx 10027
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10005
+doctype[].maptype[].idx 10028
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10008
+doctype[].maptype[].idx 10029
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10004
+doctype[].maptype[].idx 10030
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10031
+doctype[].maptype[].idx 10036
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10012
+doctype[].maptype[].idx 10038
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10039
+doctype[].maptype[].idx 10043
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10012
+doctype[].maptype[].idx 10044
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10041
+doctype[].maptype[].idx 10046
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10047
+doctype[].maptype[].idx 10048
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10008
+doctype[].maptype[].idx 10057
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10058
+doctype[].maptype[].idx 10061
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10012
+doctype[].maptype[].idx 10067
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10068
+doctype[].maptype[].idx 10070
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10004
+doctype[].maptype[].idx 10071
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10047
+doctype[].maptype[].idx 10072
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10008
+doctype[].maptype[].idx 10073
+doctype[].maptype[].keytype 10007
+doctype[].maptype[].valuetype 10041
+doctype[].maptype[].idx 10074
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10075
+doctype[].maptype[].idx 10076
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10005
+doctype[].maptype[].idx 10077
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10007
+doctype[].maptype[].idx 10078
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10008
+doctype[].maptype[].idx 10079
+doctype[].maptype[].keytype 10012
+doctype[].maptype[].valuetype 10012
+doctype[].wsettype[].idx 10018
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10019
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].wsettype[].idx 10020
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero true
+doctype[].wsettype[].idx 10021
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10022
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].wsettype[].idx 10049
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].wsettype[].idx 10050
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero true
+doctype[].wsettype[].idx 10080
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10081
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent true
+doctype[].wsettype[].removeifzero false
+doctype[].wsettype[].idx 10082
+doctype[].wsettype[].elementtype 10012
+doctype[].wsettype[].createifnonexistent false
+doctype[].wsettype[].removeifzero true
+doctype[].structtype[].idx 10023
+doctype[].structtype[].name "sct"
+doctype[].structtype[].field[].name "s1"
+doctype[].structtype[].field[].internalid 2146820765
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "s2"
+doctype[].structtype[].field[].internalid 45366795
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10041
+doctype[].structtype[].name "mystruct"
+doctype[].structtype[].field[].name "bytearr"
+doctype[].structtype[].field[].internalid 1079701754
+doctype[].structtype[].field[].type 10042
+doctype[].structtype[].field[].name "mymap"
+doctype[].structtype[].field[].internalid 1954178122
+doctype[].structtype[].field[].type 10043
+doctype[].structtype[].field[].name "title"
+doctype[].structtype[].field[].internalid 567626448
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "structfield"
+doctype[].structtype[].field[].internalid 1726890940
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].idx 10047
+doctype[].structtype[].name "folder"
+doctype[].structtype[].field[].name "Version"
+doctype[].structtype[].field[].internalid 64430502
+doctype[].structtype[].field[].type 10007
+doctype[].structtype[].field[].name "Name"
+doctype[].structtype[].field[].internalid 2002760220
+doctype[].structtype[].field[].type 10012
+doctype[].structtype[].field[].name "FlagsCounter"
+doctype[].structtype[].field[].internalid 1741227606
+doctype[].structtype[].field[].type 10048
+doctype[].structtype[].field[].name "anotherfolder"
+doctype[].structtype[].field[].internalid 1582421848
+doctype[].structtype[].field[].type 10047
+doctype[].structtype[].idx 10016
+doctype[].structtype[].name "types.header"
+doctype[].structtype[].field[].name "abyte"
+doctype[].structtype[].field[].internalid 110138156
+doctype[].structtype[].field[].type 10003
+doctype[].structtype[].field[].name "along"
+doctype[].structtype[].field[].internalid 1206464520
+doctype[].structtype[].field[].type 10008
+doctype[].structtype[].field[].name "abool"
+doctype[].structtype[].field[].internalid 492328000
+doctype[].structtype[].field[].type 10002
+doctype[].structtype[].field[].name "ashortfloat"
+doctype[].structtype[].field[].internalid 1012106297
+doctype[].structtype[].field[].type 10006
+doctype[].structtype[].field[].name "arrayfield"
+doctype[].structtype[].field[].internalid 965790107
+doctype[].structtype[].field[].type 10017
+doctype[].structtype[].field[].name "setfield"
+doctype[].structtype[].field[].internalid 761581914
+doctype[].structtype[].field[].type 10018
+doctype[].structtype[].field[].name "setfield2"
+doctype[].structtype[].field[].internalid 1066659198
+doctype[].structtype[].field[].type 10019
+doctype[].structtype[].field[].name "setfield3"
+doctype[].structtype[].field[].internalid 1180155772
+doctype[].structtype[].field[].type 10020
+doctype[].structtype[].field[].name "setfield4"
+doctype[].structtype[].field[].internalid 1254131631
+doctype[].structtype[].field[].type 10021
+doctype[].structtype[].field[].name "tagfield"
+doctype[].structtype[].field[].internalid 1653562069
+doctype[].structtype[].field[].type 10022
+doctype[].structtype[].field[].name "structfield"
+doctype[].structtype[].field[].internalid 486207386
+doctype[].structtype[].field[].type 10023
+doctype[].structtype[].field[].name "structarrayfield"
+doctype[].structtype[].field[].internalid 335048518
+doctype[].structtype[].field[].type 10024
+doctype[].structtype[].field[].name "stringmapfield"
+doctype[].structtype[].field[].internalid 117465687
+doctype[].structtype[].field[].type 10025
+doctype[].structtype[].field[].name "intmapfield"
+doctype[].structtype[].field[].internalid 121004462
+doctype[].structtype[].field[].type 10026
+doctype[].structtype[].field[].name "floatmapfield"
+doctype[].structtype[].field[].internalid 1239120925
+doctype[].structtype[].field[].type 10027
+doctype[].structtype[].field[].name "longmapfield"
+doctype[].structtype[].field[].internalid 477718745
+doctype[].structtype[].field[].type 10028
+doctype[].structtype[].field[].name "doublemapfield"
+doctype[].structtype[].field[].internalid 877047192
+doctype[].structtype[].field[].type 10029
+doctype[].structtype[].field[].name "arraymapfield"
+doctype[].structtype[].field[].internalid 1670805928
+doctype[].structtype[].field[].type 10030
+doctype[].structtype[].field[].name "arrarr"
+doctype[].structtype[].field[].internalid 1962567166
+doctype[].structtype[].field[].type 10032
+doctype[].structtype[].field[].name "maparr"
+doctype[].structtype[].field[].internalid 904375219
+doctype[].structtype[].field[].type 10035
+doctype[].structtype[].field[].name "complexarray"
+doctype[].structtype[].field[].internalid 795629533
+doctype[].structtype[].field[].type 10037
+doctype[].structtype[].field[].name "mystructfield"
+doctype[].structtype[].field[].internalid 1348513378
+doctype[].structtype[].field[].type 10041
+doctype[].structtype[].field[].name "mystructmap"
+doctype[].structtype[].field[].internalid 1511423250
+doctype[].structtype[].field[].type 10044
+doctype[].structtype[].field[].name "mystructarr"
+doctype[].structtype[].field[].internalid 595856991
+doctype[].structtype[].field[].type 10045
+doctype[].structtype[].field[].name "Folders"
+doctype[].structtype[].field[].internalid 34575524
+doctype[].structtype[].field[].type 10046
+doctype[].structtype[].field[].name "juletre"
+doctype[].structtype[].field[].internalid 1039981530
+doctype[].structtype[].field[].type 10008
+doctype[].structtype[].field[].name "album0"
+doctype[].structtype[].field[].internalid 764312262
+doctype[].structtype[].field[].type 10049
+doctype[].structtype[].field[].name "album1"
+doctype[].structtype[].field[].internalid 1967160809
+doctype[].structtype[].field[].type 10050
+doctype[].structtype[].field[].name "other"
+doctype[].structtype[].field[].internalid 2443357
+doctype[].structtype[].field[].type 10008