Argumentation
Argument maps
The key dependency is the use of Argument Interchange Format (AIF) to model argument and dialogue. Arguments link through shared premises and conclusions to form argument maps. If different parties use the same identifier when they refer to the same claim, their respective lumps of AIF can be added together and the ‘linked data’ nature of AIF will make the connections.
Constructing AIF
-
I use XHTML+RDFa to create a ‘workbook’. I apply claims.xsl to transform workbooks to AIF.
-
I draw AIF argument maps in yEd Graph Editor. This produces GraphML format, which I transform to AIF as described on the Dstl eleatics web pages.
Evaluating arguments
-
I use the Java code in my argumentation repository.
-
See The Online Argument Structures Tool (TOAST) for a browser-based evaluator. This include a REST API.
-
See also TweetyProject. This includes libraries for the Dung argumentation framework, the ASPIC+ argumentation theory, and more.
Models of dialogue and debate
I use the AIF-RDF specification here.
AIF supports the idea of extension through adjunct ontologies, bits of model specification that can be used to extend the core AIF in interesting and useful ways. For example, S-AIF and T-AIF let you model the speakers in a debate and their relationships, thereby bringing credibility and trust into argument evaluation. I’m not using these (for the moment at least), but I’m keeping the door open by doing things like using a DOI, where possible, to link to the source of quoted arguments. Tools such as Crossref can then be used to get information about authors.
Diagrams
Diagrams are useful, but AIF argument maps become cluttered and complex very quickly. I’ll use diagrams in explanation, but these are often going to be selected fragments of larger arguments maps. You’ll be perfectly justified in treating these with suspicion: It’s the AIF model itself that has authority, not any selective depiction.
To make a diagram, I generate GraphML from AIF using an XSLT stylesheet and load it into yEd to lay it out neatly. See the Dstl eleatics wiki for details. I then export from yEd as SVG for use in web pages.
Locution
L-node is a subclass of I-node, which means you can treat an L-node as an I-node if you want to. The distinction between the two becomes import when you want to model a dialogue; where there is more than one speaker, and the sequence of utterances and their illocutionary force might be important. These things are the province of the L-node.
I’m currently being a bit lax in making these distinctions. At the moment, I’m just generating I-nodes from the workbook XHTML. Whether these should really be L-nodes can be inferred from their relationship to TA-nodes and YA-nodes.
Questions
It’s useful to capture questions that are raised in a debate. I’m modelling a question as a locution that links from the locution that prompts it, via a TA-node.
Rewrites
AIF has an MA-node to support rewriting or rephrasing arguments. I can use it in the AI debate to assert an equivalence relationship between arguments expressed by different speakers. This needs thinking about: two arguments might be equivalent in some contexts, but not others; asserting equivalence is making a claim, and this ought to be defeasible.
Composition
It’s worth exploring the composition of large argument maps. Can we break a large argument map down into meaningful, but related, sub-arguments that make it easier to comprehend? This sort of thing seems to happen in the philosphical literature anyway, with a potentially complex network of arguments effectively condensed into a single “thesis” I-node in an argument map. The Toulmin pattern might be useful here.
Argument mining
This is NLP for the purpose of constructing argument maps. Manually constructed arguments maps provide training data for argument mining methods. Conceivably, a dialgoue that defines terms could be used directly by an argument mining agent.
Terminology
If we’re joining argument from different sources together, we need to understand variations in terminology. Mapping terminology is something that would both help argument mining and be helped by argument mining.
Argumentation Schemes
Argumentation schemes are stereotypical patterns of argument. An argumentation scheme suggests critical questions that can be used to explore the strength or validity of an argument. Argumentation schemes can be used to classify arguments, and the classification used to assess their worth. See also Dstl eleatics.
A list of argumentation schemes here. This is XHTML+RDFa and AIF can be extracted from this document.