Knobjex-background; a knowledge-base-concept (legacy considerations)
The word 'Knobjex' is a merging of 'knowledge' and 'objects', so actually knowledge-objects. This does describe the underlying concept; knowledge represented as objects with certain properties. Each object can be represented as a specification of a more abstract object (and theirby inheriting its properties), together with the properties that make it specific as compared to the abstract object.
An example can clarify things. Take as object 'car'. This can be seen as a specification of 'vehicle', and so it will overtake it's properties. Then the only needy info to qualify the car is what makes it specific as compared to the vehicle. This is for example the property 'road-travelling', 'four-wheeled', and -depending of you definition- 'personal use focussed'. So a car is a road-travelling, four-wheeled and personal-use-focussed vehicle. The specification-model does imply that you declare the properties at the most abstract level, so that they don't have to be defined at specific levels for all specifications. Exemplarly, the vehicle can be defined as a 'transporting-means'. Defining this at abstract level does make it unnecessary to say that cars, trucks, aircraft or trains are 'transporting means'.
Besides describing the objects, the relations between the object must be clarified. One relation has been seen already, namely 'can be specified to', in the senctence 'vehicle can be specified to car'. Another relation in the same example does concern the property 'road-travelling'. In the knowledge-format I have defined, it is preferable to describe properties as related objects. In this case the sentence 'the car is road-travelling' can be written to 'the car travels the road'. Thatway, everything can be written as a relation between objects. Exemplarly, 'my hair is short' can be rewritten as 'person joris has short hair'.
I will add some examples in the database to make more sense. Generally spoken, the database can hold information that would normally be put in text-format. Also it can hold information that would normally be stored in a dedicated database. In both cases however, it is advisable to define additional usage-rules, especially for the kind of relations that are used. In other words, a heavy emphasis is laid on the implementation of the database (as with all modern, generalized software).
The ability to emulate other databases has made me to emulate my other software-program Processual in Knobjex. This enables me to use only 1 database for all the info I want to store. Allthough I have not (yet) written the conversion-code to import Processual-data into Knobjex, it wouldn't be too much work. However, because I started entering data from scratch in Knobjex I didn't feel the need.