My ABA Innovation Fellowship project, through the ABA Center for Innovation, is docassemble-openlcbr. It is an open source software package that extends the capabilities of docassemble, a leading open source legal expert system tool.*
(How leading? Of the top 20 web tools announced by the ABA this week, one is docassemble, and two more were built using docassemble. )
Docassemble-openlcbr allows docassemble interview developers to use another open source tool, OpenLCBR, to automate legal reasoning about subjective questions.
For a basic understanding of why that’s important, and a link to a live demo, check out this blog post.
One of the goals of my project was to make openlcbr something that lawyers could play with. I can talk until I’m blue in the face about how useful openlcbr might be, but until people can actually play with it, we will never know how useful it really is.
Draw the F*(%#$ Owl
As a part of the training for the ABA Innovation Fellowship, the fellows received an introduction to design thinking and improvement kata, both of which suggest prototyping early, and often. Clio, the Canadian cloud-based legal practice management software company that has generously sponsored my fellowship project, has a different name for the same idea: “draw the [expletive] owl.” Click here for the NSFW meme that idea comes from.
So part of the fellowship project is to get lawyers playing with OpenLCBR, so that people can start drawing some owls. But playing is supposed to be fun and easy, and building an OpenLCBR reasoner is… well, here, this is what one looks like.
Now don’t get me wrong. That looks like fun to me. But I’m weird.
The Goal: User-Friendly Analogical Reasoner Design Tool
So one of my objectives for this project was to create a user-friendly tool for lawyers and other non-technical users to generate a OpenLCBR reasoner that can be used with docassemble-openlcbr.
Before OpenLCBR can do its magic, an expert needs to set out the factors, issues, and cases relevant to the legal issue. For details on what those are, and how they are used, check out this deep-dive blog post about the IBP algorithm used by OpenLCBR.
So I built a reasoner-building tool in docassemble, and included it in the docassemble-openlcbr package. The reasoner-building tool treats the YAML file above as the document to be assembled and takes you through a user-friendly interview for generating that file. You can build a new reasoner from scratch, one question at a time, or you can edit an existing one.
The reasoner builder is effectively a small application, built entirely in docassemble. It uses a number of powerful features of docassemble, including review screens that allow the user to review a list of information they have provided, and make changes to that list later in the interview.
Can I Just Try It, Already?
Yes! I’m happy to say that this builder tool is now included in the docassemble-openlcbr package, and you can try a live demo of it here.
How Can I Try Building and Using a Reasoner?
I’m working on documentation and tutorials that will eventually be at the github page, but if you’re curious what it would take to get yourself drawing some owls, here are the broad strokes.
- Get a docassemble server. The easy way is to get a hosted docassemble server from Community.Lawyer for a very reasonable price. (Community.Lawyer was also recognized in the top 20!)
- Install docassemble-openlcbr package in docassemble’s package management by typing in the github address.
- Run the reasoner builder interview, and download your new reasoner file.
- Upload your reasoner file to the “sources” section of your docassemble server.
- Create an interview using the demo interview as a template that defines a test case and uses your new reasoner to predict the result.
Is it really that easy?
No. Not really. Between steps 2 and 3 is where all the “legal knowledge engineer” (h/t Richard Susskind) stuff happens. This tool gives you an easy way to write down the analogical tool you have designed. But it does not teach you the law, or how to design an analogical reasoner well.
But don’t worry. Help is on the way.
My plan for the remainder of the fellowship project is to expand the demonstration integration with Clio, build a new demonstration reasoner from scratch, build a demonstration interview that uses that reasoner, and generate some tutorials and instructions based off that experience.
Building this tool would have been absolutely impossible without the support of Jonathan Pyle and the docassemble community. Thanks, all.