Drools Knowledge Modules

Drools Knowledge Modules

DKM file format

DKM file format, Version 1

DKM stands for Drools Knowledge Module.

File Offset Length Data Type Content
0x00 8 bytes byte[] File Magic: 'DRLKMOD' followed by 0x00
0x08 8 bytes long File Format Version (currently, only version 1 is used)
0x10 2 bytes short Length of Drools runtime version ( =: <rtlength>)
0x12 <rtlength> byte[] UTF-8 encoded Implementation-Version of Java package containing Drools' KnowledgePackage class
0x12 + <rtlength> variable;
to end of file
GZIPOutputStream contains DroolsObjectOutputStream with all the KnowledgePackages generated by the rules compiler

Example Hex Dump

00000000  44 52 4c 4b 4d 4f 44 00  00 00 00 00 00 00 00 01  |DRLKMOD.........|
00000010  00 0b 35 2e 33 2e 30 2e  46 69 6e 61 6c 1f 8b 08  |..5.3.0.Final...|
00000020  00 00 00 00 00 00 00 a5  58 5d 6c db d6 15 3e 94  |........X]l...>.|
00000030  e4 48 56 64 c7 96 13 3b  b6 1b ff c5 4e fd 93 88  |.HVd...;....N...|
00000040  f5 bf b3 fc 3a fe 49 9c  28 71 60 1b 0e 92 74 d8  |....:.I.(q`...t.|
00000050  18 e9 5a 66 42 89 0c 49  45 74 b7 06 cd 43 9f 06  |..ZfB..IEt...C..|
00000060  0c d8 c3 06 14 c3 80 61  6b fb 32 0f 58 87 d4 2e  |.......ak.2.X...|
00000070  1a a0 c8 b0 15 05 ba 97  a5 0f db 30 ac 40 06 14  |...........0.@..|
00000080  2b 0a 6c 2f 2b 36 6c 2b  d0 ee 9c 4b 4a a2 24 ca  |+.l/+6l+...KJ.$.|
00000090  49 57 c1 be 24 ef 3d e7  bb e7 9c 7b ce c7 7b b9  |IW..$.=....{..{.|
000000a0  f9 77 a8 31 74 68 ba 29  dd 91 62 59 53 56 62 d3  |.w.1th.)..bYSVb.|
000000b0  ba 2e 6d c4 65 c3 b4 ee  7d 70 e0 95 f7 a4 1f f9  |..m.e...}p......|
000000c0  41 58 80 80 21 bf c0 2c  0d 00 84 5c 80 5a 54 12  |AX..!..,...\.ZT.|
000000d0  55 3d 15 4b ea aa aa 18  b1 24 5b 93 33 b2 29 ab  |U=.K.....$[.3.).|
000000e0  19 23 26 a7 35 25 76 21  a3 e6 14 96 4c b1 cb 52  |.#&.5%v!....L..R|
000000f0  e2 96 94 62 0b 69 ed dd  6f b3 07 23 af 64 95 08  |...b.i..o..#.d..|
...       .. .. .. ..