The customer is a world famous film production company, one of the top 10 Hollywood film studios.
Develop a web application for tagging movies. Tags can reflect characters, places, music, mood etc.; they form a hierarchy. All tags should be stored in a MarkLogic NoSQL database — a document-oriented database with a schema-agnostic data model for storing and managing XML, JSON, RDF and geospatial data.
There were two main requirements from the customer: to develop a workable prototype in very short time and to make the client-side of the application very responsive to user’s actions.
The specifics of the project was the need to use MarkLogic NoSQL database and to store tags as triples in a triplestore. Triple is a base element for semantic data storage, like “Bob is 35” or “Bob knows Fred”. The key feature of triplestore is that it is optimised for storage and retrieval of triples with a query language. Therefore, the user can easily get an answer to a question like “How two particular entities are connected?”
When developing the user interface, the main requirement from the customer was that application should be interactive, i.e. it should allow continuing the movie tagging while the user’s command is performed in the background. AngularJS framework was the most appropriate choice, as it allowed developing a very interactive user application, which interacted with the server without refreshing the web page.
Our solution makes it possible for end users to tag movies very fast — without waiting long for the response of the application. The application significantly increases users’ performance in tagging movies and therefore saves much customer's resources. In addition, we were able to pack the whole project in Docker containers for faster deployment.