The Semantic Network Engine is kept as universal as possible: it doesn't contain any knowledge about what information it is handling. It does what it has to do (maintaining the network) and nothing more.
All information handling needing some knowledge about what the information means is done by the services. One example used by the web interface consists of the spiders that have the mission to get the best image for a node. They run through the network from a specific node under well defined conditions (a subset of all possible paths) looking for specific information. When found they have finished their job.
There is little kind of information in the network, namely attributes and relationships. An elementary operation (EO) is defined on the information in the network. It consists of:
- get a set of predicates
- get a set of attribute types, perhaps associated with values
- do something with it
Services are typically composed of one or more of these elementary operations executed one after another (or some in parallel) to obtain eventually an extreme complex operation. These services would be called in other contexts inferencing or reasoning.
Almost all services are configured through nodes in the network. This allows the services' behavior to be modified, by changing the information in the network and also to have personalized behaviour. If a particular application or a particular person doesn't want to use the default behaviour, only an alternate configuration for the service has to be used.
Furthermore, with a high degree of automatic maintenance in mind, when new data models are added, some services will have to take the new model elements into account. Actually the configuration modification (adding new elements to the configuration node of the service) is done manually. In the future automatic identification of the new model elements will be possible (at least to some extend) and the service configuration can then be adapted automatically.
Applications, which are basically nothing more than service consumers with an user interface, are configured in exactly the same way.