Legend:
Library
Module
Module type
Parameter
Class
Class type
An information provider.
A piece of information could be predicated with its source to denote the trustworthiness of the information an/or to enable information provenance.
An agent is a registry entity with associated name, description, and reliability. The name and description are used for introspection. The reliability could be used for conflict resolution.
Using Domain.opinions it is easy to embed any data into the domain structure, by pairing the elements of this set with the information about its source, i.e., with the agent.
abstract ordered type to quantify reliability of agents.
val register :
?desc:string ->?package:string ->?reliability:reliability->string ->agent
register name registers a new agent.
The provided package and name pair should be unique. If an agent with the given package:name is already registered, the registration of the new agent will fail.
parameterdesc
a description of the registered agent.
parameterpackage
a namespace of the registered agent.
parameterreliability
is the amount of agent's trustworthiness (defaults to trustworthy).
This source sometimes provides inaccurate information or relies on doubtful methods. It is still providing useful and accurate information more often than not.
It could be compared to the information obtained from a knowledgeable person.
This source provides accurate information slightly more often than inaccurate. Though it is a bad source of information, many unreliable source could be combined to.
It could be compared to the knowledge obtained from gossips, i.e., from not knowledgeable persons close to the knowledge.