Register type
-------------
| FIELD NAME | TYPE | MIN,MAX OCC | INLINE | DESCRIPTION |
|------------|--------------------|-------------|--------|----------------------------------------------|
| docs | Doc(Document type) | 0,N | false | document liste, first one is the primary one |
Document type
-------------
| FIELD NAME | TYPE | MIN,MAX OCC | INLINE | DESCRIPTION |
|------------|---------------------|-------------|--------|--------------------|
| id | Text | 1,1 | | doctype ID |
| parents | Int32 LE | 0,N | | parent types index |
| fields | Doc(Field type) | 0,N | false | doctype fields |
| attributes | Doc(Attribute type) | 0,N | false | doctype attributes |
Field type
----------
| FIELD NAME | TYPE | MIN,MAX OCC | INLINE | DESCRIPTION |
|------------|-----------------------|-------------|--------|---------------------------|
| id | Text | 1,1 | | field ID |
| minocc | Int32 LE | 1,1 | | field minimum occurrences |
| maxocc | Int32 LE | 1,1 | | field maximum occurrences |
| attributes | Doc(Attribute type) | 0,N | false | field attributes |
| valuetype | Doc(Field value type) | 1,1 | true | field value type |
| default | UInt8[] | 0.1 | | default value |
Field value type
----------------
| FIELD NAME | TYPE | MIN,MAX OCC | INLINE | DESCRIPTION |
|------------|--------------------|-------------|--------|------------------------------------------------------|
| ptype | UInt8 | 1,1 | | field type |
| size | VarUInt | 0,N | | field array size |
| reftype | Int32 LE | 0,1 | | field doc type, should be a reference index in the 'docs' field list |
| inline | Boolean byte | 0,1 | | if document are stored inline |
| charenc | Text | 0,1 | | field character encoding |
Attribute type
--------------
| FIELD NAME | TYPE | MIN,MAX OCC | INLINE | DESCRIPTION |
|------------|-----------------------|-------------|--------|----------------------------------------------------|
| id | Text | 1,1 | | attribute ID |
| nbocc | VarUInt | 1,1 | | attribute number of occurrences |
| valuetype | Doc(Field value type) | 1,1 | true | attribute field value type |
| value | UInt8[] | 1.1 | | attributes values encoded as defined by value type |