In this paper we describe the system architecture of PROBADO, a project funded by the German Research Foundation (DFG). Its main goal is to provide a general library infrastructure for dealing with non-textual documents, in particular for content-based searching. PROBADO provides an infrastructure that allows integrating existing data repositories and content-based search engines into one common framework. The system architecture has three layers interconnected by a service-oriented architecture (SOA) currently using SOAP 1.1 as the communication protocol. The layers are: (1) a front-end layer, responsible for providing the user interface, (2) a core layer, responsible for scheduling requests from the interface to different repositories, and (3) a repository wrapper layer, responsible for enabling existing repositories and search engines to interface to the system. The functionality of each layer is described in detail. The general architecture is complemented by a brief introduction to the domain-dependent functionality currently provided.