Postby ConvertFromOldNGs » Fri Aug 07, 2009 12:18 pm
by skipton >> Tue, 31 Dec 2002 17:20:59 GMT
Torrie,
If you can avoid storing references from user data to system data do so. You may be ok until such time as you need todo some out-of-the-ordinary change further down the line, such as copying map files to another system, data loads/archiving into another base or debugging from data. Ive found that it makes sense to draw a line between what is Jade data and what is User data.
Class numbers are unique within a Jade database, there is a sequential number that all schemas use. The problem comes when you load a schema into another Jade system where the number is already used. The new class needs a new number so it ends up being different to the number in the base it was extracted from. Hence you could end up with a problem similar to referencing the classes directly.
Why not use the schemaname/classname keys as you are suggesting? If storage is a concern then you could look to have your own schema object with the classname keyed objects in a collection off that. There maybe some form of hashing you can do to reduce the size further. The tradeoff is the extra drilling down to find the object you want. I would have thought the storage space required would not be to much of an issue for a large system (given having 1000s of classes means Jade internally will need the extra space anyway?).
Remember that this also turns to custard when someone renames a class.
Cheers,
John Beaufoy
JBS Solutions Ltd (UK)