The Emulation-approach centres on the emulation of obsolete technology on a future system. Thereby, it is possible to view the digital document in its original environment recreating its functionality, look, and feel. For example, the hardware of a Commodore C-64 can be emulated on a current Pentium processor. Subsequently, the appropriate operation system can be installed in the virtual environment, which, in turn, allows executing the original software (e.g. a browser plug-in), thus granting access to a document with its original look and feel. Emulation is designed to be once and for all and it minimises potential loss via corruption. Advocates of this strategy suggest that it is, in fact, the only solution capable of conserving a document in its original form for a very long term [Rot99].
As a prerequisite for being able to mimic a, by then, non-existent environment, an explicit description of the technology used has to be retained along with the original document. It is, thus, necessary to encapsulate auxiliary information and data with each digital document. Basically, this auxiliary material will be composed of three groups of items. Firstly, the original document in its entire software context, including the operating system, the application program, and anything else needed for getting access. Further, a specification of an emulator that will be developed for a system in the future unknown of. The description must provide sufficient information to recreate the document's original computing platform. As a last but very important group of items, explanatory material will be enclosed in the encapsulation. This involves documentation for the software enclosed, a history of the document, and whatever conceivable that could be important or interesting to know.
In principle, emulation can take place at two levels, at the software or at the hardware level [Rus99]. The former involves emulating the behaviour of the software that was originally built to access the digital material. This could be done by emulating the application program, that was used to read a data format, or the operating system, the original application ran on. Yet, there is no adequate way of specifying the behaviour of most programs. Also, the sheer number of available software systems makes this approach unattractive. Alternatively, the underlying hardware platform is emulated. Hardware specifications already exist, as they are needed for building the devices in the first place. Once implemented, an emulator can be used for a great number of documents, since there are relatively few hardware platforms in existence at any given moment.
Seen with suspicion is the fact that the actual work is shifted to the future. Trying to access a document, for which no emulator has been written, demands a considerable effort. As Emulation is no finished technical solution, its actual demands and expenses, as well as its implications can only roughly be estimated. It is, in fact, questionable, whether emulators offering a complete solution can be built that easily. After all, the approach is still highly theoretical and its definite feasibility hardly predictable at this point of time [Gra00]. Yet, it is a promising approach and offers potentially a sound solution in the long run.