The DAISY Pipeline 2 is an open-source, cross-platform framework for the automated processing of digital content in and between various file formats. It facilitates the production and maintenance of accessible content for people with print disabilities. Pipeline 2 is a direct follow-on from the original pipeline project, taking into account new standards and technologies which have emerged in the meantime. Whilst it has meant a re-design of the framework, the overarching principles and purpose remain the same:
- To provide the functionality to produce, maintain, and validate accessible digital formats
- To embrace good practices for the creation of quality accessible content
- To support the single source master approach where applicable
- To minimize overlap and duplication, notably via the development of reusable components
Who is this for?
As with the original project Pipeline 2 can be used by anyone creating digital content for print disabled readers.
The project is led and maintained by the DAISY Consortium but involves several member organizations. This reduces the duplication of effort and ensures maximum sharing of best practices among the user community.
DAISY Pipeline 2 is an ordinary desktop application but also a web application. This means that, unlike with the desktop application, multiple users can work together in the same application, each through their own web browser, while the real work happens on a central server. The web application offers some additional features that are not available in the desktop application yet, such as “templates”.
DAISY Pipeline 2 can also be run as a service to which client programs can connect, through a web API. In fact, the DAISY Pipeline 2 web application is an example of such a server-client configuration. There is also a command line tool.
DAISY Pipeline 2, in all its forms, is supported on Windows, Mac OS, and Linux.
- Accessibility—the main interest of the tool. There are Pipeline transformations for migrating from one accessible format to another, enriching an input format with certain accessible features, and producing formats targeting a specific disability.
- Standards—accessibility goes hand in hand with standards. The file formats that the Pipeline primarily focuses on are EPUB 3, DAISY and PEF. Standards are also important under the hood. The system is based on standard XML processing technologies and these technologies are platform neutral, supported by active communities, and easy to maintain.
- Cross-platform—The application can be run on most common operating systems. It must be run in a Java runtime environment, but its platform neutral RESTful API (web service) allows it to be called from any programming language and makes it interoperable with heterogenous production workflows. In addition to the programming interface there is also a command-line interface and there are graphical user interfaces.
- Modular—The system was designed with a modular architecture, the key to better scalability and extensibility. Processing functionality is provided by cohesive and reusable software components—modules.
- Collaborative—The project is led and maintained by the DAISY Consortium but involves several member organizations. This reduces the duplication of effort and ensures maximum sharing of best practices among the user community.
- Open-source—All software products maintained by the DAISY Consortium are available under a business-friendly licence (LGPL), to stimulate collaboration between organizations and to maximize reuse and integration in other contexts, including commercial software.
By adopting modern standards (and off-the-shelf implementations of those standards), version 2 of the pipeline project aims to:
- prepare for the future
- better integrate with the publishing mainstream
- minimize development and maintenance cost, allowing developers to ultimately focus more on actual transformations rather than the engine that drives the transformations.
- lower the framework learning curve
- increase interoperability with the heterogeneous production workflows
- increase the likelihood of re-use in both open source and commercial applications.