Interface AbstractDialecticalFramework

All Superinterfaces:
ArgumentationFramework<Argument>, BeliefBase, Collection<Argument>, GeneralGraph<Argument>, Graph<Argument>, Iterable<Argument>

public interface AbstractDialecticalFramework extends Graph<Argument>, Collection<Argument>, ArgumentationFramework<Argument>
The implementing subtypes must ensure the following properties:
  • Immutability
  • All methods return a non-null value if its parameters, e.g. arguments, are from this ADF
  • If a method returns a collection or stream, all its elements are non-null
This makes the usage of AbstractDialecticalFramework implementations more convenient to the user, since it avoids unnecessary nullchecks and therefore leads to more readable code. Immutability should lead to more robust code, since an ADF always remains in a valid state after creation. It makes it also easier to use in a parallel context.
Author:
Mathias Hofer