diff --git a/swig/CMakeLists.txt b/swig/CMakeLists.txt
index 1221f861eebe28ecc83369a949809965a8f616b3..732acec748b559786f3bace19959f4e8dc264396 100644
--- a/swig/CMakeLists.txt
+++ b/swig/CMakeLists.txt
@@ -12,6 +12,10 @@ link_directories(${Libcorpus2_BINARY_DIR})
 FIND_PACKAGE(SWIG REQUIRED)
 INCLUDE(${SWIG_USE_FILE})
 
+FIND_PACKAGE(LibXML++ REQUIRED QUIET)
+include_directories(${LibXML++_INCLUDE_DIRS})
+
+
 find_package(PythonLibs)
 find_package(PythonInterp)
 # idea taken from pyplot build system 
diff --git a/swig/corpus2.i b/swig/corpus2.i
index 3dbe4ae7b4ebeb4491f33677f6c4212067bdd007..7f8a53840b4c75f859f627d8ee72a1f6644a6e46 100644
--- a/swig/corpus2.i
+++ b/swig/corpus2.i
@@ -11,19 +11,20 @@
 %include "annotationview.i"
 %include "chunk.i"
 %include "document.i"
+%include "documentreader.i"
 %include "iob.i"
 %include "lexeme.i"
+%include "libpwrnlperror.i"
 %include "relation.i"
 %include "sentence.i"
 %include "tag.i"
+%include "tagging.i"
 %include "tagset.i"
 %include "tagsetmanager.i"
 %include "token.i"
 %include "tokenmetadata.i"
 %include "tokenreader.i"
 %include "tokenwriter.i"
-%include "libpwrnlperror.i"
-%include "tagging.i"
 
 %{
 #include <libcorpus2/util/settings.h>
diff --git a/swig/documentreader.i b/swig/documentreader.i
new file mode 100644
index 0000000000000000000000000000000000000000..1a4bf310479ec25181c39ff5d4afb6a8c41f9d93
--- /dev/null
+++ b/swig/documentreader.i
@@ -0,0 +1,26 @@
+#ifndef SWIG_LIBCORPUS2_DOCUMENTREADER_I
+#define SWIG_LIBCORPUS2_DOCUMENTREADER_I
+
+%module libcorpusdocumentreader
+%{
+  #include <libcorpus2/io/docreader.h>
+%}
+
+%include "document.i"
+%include "boost_shared_ptr.i"
+
+namespace Corpus2 {
+  class DocumentReader {
+  public:
+    DocumentReader(const Tagset&, const std::string&, const std::string &);
+    boost::shared_ptr<Document> read();
+
+    /* --------------------------------------------------------------------- */
+    ~DocumentReader();
+  };
+}
+
+using namespace std;
+using namespace Corpus2;
+
+#endif /* SWIG_LIBCORPUS2_DOCUMENTREADER_I */