I'm working on an ethics search protocol for internet search engines.
Could this be an interesting idea for nutch?
http://www.nongnu.org/esp/
An ethics-enabled search engine can act as a *complement* to the
well-known price search engines and turn ethical considerations into an
easily advertisable advantage. A search engine can store imprint and
ethics of organizations that publish them and allow users to find
organizations adhering to the desired ethics and also to verify these
ethics or the public feedback of organizations or individuals that
verify those ethics and an organization's adherance to its ethics in
detail.
Users of this system can demand ethics and support non-government
organization that try to uphold environmental, social or other ethics.
Gathering data from user profiles is expected from search engines as
users specify the ethics they are looking for and the policy providers,
certification agents and verification agents they would like to see.
A search engine must return hits according to the quality of matching
ethics, if no other criteria was specified to supercede this.
Unsatisfied users can post tickets in a well-defined format to policy
providers or verification agents to remind policy implementors to adhere
to the ethics they have published. Policy providers and verification
agents can declare a published social contract document as (partially)
invalid or revoke (self-) certifications. Users can also annotate
policies or social contracts and inform others about their private
opinion about the adherence or non-adherence of a policy implementor.
Mediators should be used to mediate in case of dispute as legal steps
are frowned upon (there is a base policy that disallows legal steps
where mediation would be appropriate) and can increase the number of
negative annotations.
Policies can extend *policy schemes* (inherting the structure of an
empty policy) or extend another policy that has not been declared final.
A final policy is not open to be extended. Extending a policy means that
paragraphs can be overridden or appended. The implementation of a policy
refers to the use of a policy in a social contract.
In an analogy to the Java language one could refer to policy schemes as
interfaces and policies as classes but where Java nomenclatur would be
to implement a scheme (instead of extending it), the term "implement"
refers to what would be the instantiation of a policy in Java, because a
policy implementation is the act of adding a policy to one's social
contract. Such an "instance" of a policy is parametrized by a single
argument, which is the implementation level. Further parametrization may
be added in the future, when the search facilities for policy parameters
are sufficiently standardized.
Policies should be structured to describe concisely *what* is required
by a policy, not *why* it is required or *how* it is to be implemented.
It should be considered good style to add links to external web pages
describing the *why* and *how* to every paragraph that requires further
explanations. Explanations should preferrably come in different degrees
of verbosity and sophistication but aim to explain the connection to
Kant's Categorical Imperative
<http://en.wikipedia.org/wiki/Categorical_Imperative>.