Relativity Fest London Recap

Relativity Fest London Recap - April 2017

In case you couldn't join us, here's our Relativity Fest London recap:

We were thrilled to co-host with kCura hosted the first ever Relativity Developer User Group at RelativityFest London 2017 in April 2017. As the 5th annual Relativity event hosted by kCura in London, it was attended by over 450 members of the UK’s eDiscovery community.

Our software team have put together their reflections on the User Group below - we'd be delighted to hear more insights from the Developer Community, so please get in touch.

During the User Group, we talked through an overview of one of Anexsys’ RTK (Review Tool Kit) products and discussed Relativity’s APIs, custom objects (RDOs), and all the ways we love to build software on top of Relativity. We broke out into groups to look at an example challenge and structured a solution using Relativity’s APIs and other extension points. We also discussed our ‘Tips and Tricks’ for developing software on top of Relativity, and the Developer Experience Roadmap from Relativity.

The sample application we ran through was our native Excel redaction software, RTK.ExcelRedact. We talked about the different elements of the Relativity extensibility points that make up the application, such as:

RDOs (Relativity Dynamic Objects)

In this Relativity Fest London recap we don't need to tell you how RDOs are the ‘building blocks’ of Relativity Applications. They behave much like Document objects, in that they can have views, fields, and layouts – but they are much more flexible. We use RDOs in RTK.ExcelRedact to store values that help with the configuration of the software, such as settings to use during the processing or saving of documents. One key feature is that RDOs allow us to load data into fields on the Document object based on a ‘Field Mapping’ stored in the RDO.

Event Handlers

Event handlers manage everything from data validation to controlling the flow of data. They are triggered by user interaction, either on an object or Document save or on a Console.

We use a Pre-Save Event Handler on a custom Layout which allows a user to prepare an Excel for redaction. This performs some validation on the settings that the user has chosen, then adds the Excel to a work queue to be picked up by a Custom Agent which will run the initial processing.

We also use Post-Install event handlers to create proprietary SQL tables within the workspace’s database that store processing and redaction information required for RTK.ExcelRedact. The Install Event Handlers are useful for setting up this information, along with any configuration options that may be required for the software.

Custom Agents

Agents perform long-running background tasks like OCR and Imaging, but Custom Agents can also be written to run tasks specific to your application. Computationally intensive work should be distributed to Agents.

In RTK.ExcelRedact, Custom Agents do much of the work when processing Excels or applying redactions. Agents are ideal for this job as they can perform long-running tasks without locking up the rest of the workspace, and can run repeatedly at specified intervals to check queues for additional work.

ExcelRedact follows a ‘Manager-Worker’ design where a single manager agent per instance is responsible for distributing work, and one or more worker agents can pick up jobs from a queue and process them as needed.

Custom Pages

A Custom Page is a web page, deployed by Relativity, to display information or allow users to interact with data in a way that Relativity limits. These can be used for advanced data inputs, graphics, or visualisations of data.

ExcelRedact uses a Custom Page to display an Excel document to a user for redaction. We can display custom tools, options, and information with the extra flexibility a Custom Page allows us.

Well, there we are with our Relativity Fest London recap - we hope you found it useful.