diff --git a/lib/KorAP/Index/CoreNLP/NamedEntities.pm b/lib/KorAP/Index/CoreNLP/NamedEntities.pm
index 942b5b6..5308f83 100644
--- a/lib/KorAP/Index/CoreNLP/NamedEntities.pm
+++ b/lib/KorAP/Index/CoreNLP/NamedEntities.pm
@@ -1,6 +1,10 @@
 package KorAP::Index::CoreNLP::NamedEntities;
 use KorAP::Index::Base;
 
+# Import named entities, potentially with a specified
+# Model. However - now all models are mapped to the 'ne'-Prefix
+# and are indistinguishable in annotations. However - if only one
+# model is used, the model is listed in the foundries.
 sub parse {
   my $self   = shift;
   my $model  = shift;
diff --git a/lib/KorAP/Index/XIP/Constituency.pm b/lib/KorAP/Index/XIP/Constituency.pm
index d181afd..7e2853e 100644
--- a/lib/KorAP/Index/XIP/Constituency.pm
+++ b/lib/KorAP/Index/XIP/Constituency.pm
@@ -88,7 +88,8 @@
       term => '<>:xip/c:' . $type,
       o_start => $span->o_start,
       o_end => $span->o_end,
-      p_end => $span->p_end
+      p_end => $span->p_end,
+      pti => 64
     );
 
     # Only add level payload if node != root
diff --git a/lib/KorAP/Index/XIP/Morpho.pm b/lib/KorAP/Index/XIP/Morpho.pm
index 474bef0..2c82ba7 100644
--- a/lib/KorAP/Index/XIP/Morpho.pm
+++ b/lib/KorAP/Index/XIP/Morpho.pm
@@ -43,9 +43,8 @@
 	  # Composites
 	  my (@token) = split('#', $found);
 
-	  if (@token == 1) {
-	    next;
-	  };
+	  next if @token == 1;
+
 	  my $full = '';
 	  foreach (@token) {
 	    $full .= $_;
diff --git a/lib/KorAP/Index/XIP/Sentences.pm b/lib/KorAP/Index/XIP/Sentences.pm
index 9d61825..0273b39 100644
--- a/lib/KorAP/Index/XIP/Sentences.pm
+++ b/lib/KorAP/Index/XIP/Sentences.pm
@@ -19,6 +19,7 @@
 	o_start => $span->o_start,
 	o_end => $span->o_end,
 	p_end => $span->p_end,
+	pti => 64,
 	payload => '<b>0' # Could be 2 as well for t/p/s
       );
       $i++;
diff --git a/t/index/corenlp_ent.t b/t/index/corenlp_ent.t
new file mode 100644
index 0000000..87bf741
--- /dev/null
+++ b/t/index/corenlp_ent.t
@@ -0,0 +1,52 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use utf8;
+use Test::More;
+use Scalar::Util qw/weaken/;
+use Data::Dumper;
+
+use_ok('KorAP::Document');
+
+use File::Basename 'dirname';
+use File::Spec::Functions 'catdir';
+
+my $path = catdir(dirname(__FILE__), 'corpus', 'doc', 'text');
+
+ok(my $doc = KorAP::Document->new(
+  path => $path . '/'
+), 'Load Korap::Document');
+
+like($doc->path, qr!$path/$!, 'Path');
+ok($doc->parse, 'Parse document');
+
+ok($doc->primary->data, 'Primary data in existence');
+is($doc->primary->data_length, 129, 'Data length');
+
+use_ok('KorAP::Tokenizer');
+
+ok(my $tokens = KorAP::Tokenizer->new(
+  path => $doc->path,
+  doc => $doc,
+  foundry => 'OpenNLP',
+  layer => 'Tokens',
+  name => 'tokens'
+), 'New Tokenizer');
+
+ok($tokens->parse, 'Parse');
+
+ok($tokens->add('CoreNLP', 'NamedEntities', 'ne_dewac_175m_600'), 'Add Structure');
+
+my $data = $tokens->to_data->{data};
+
+like($data->{foundries}, qr!corenlp/namedentities!, 'data');
+like($data->{foundries}, qr!corenlp/namedentities/ne_dewac_175m_600!, 'data');
+like($data->{layerInfos}, qr!corenlp/ne=tokens!, 'layerInfos');
+is($data->{stream}->[0]->[0], '-:tokens$<i>18', 'Number of tokens');
+is($data->{stream}->[9]->[0], '_9$<i>64<i>73', 'Position of NE');
+is($data->{stream}->[9]->[1], 'corenlp/ne:I-LOC', 'Position of NE');
+is($data->{stream}->[9]->[2], 'i:hofbergli', 'Position of NE');
+
+done_testing;
+
+__END__
diff --git a/t/index/corenlp_sentences.t b/t/index/corenlp_sentences.t
index fc0965e..18c9e06 100644
--- a/t/index/corenlp_sentences.t
+++ b/t/index/corenlp_sentences.t
@@ -39,12 +39,13 @@
 
 my $data = $tokens->to_data->{data};
 
+like($data->{foundries}, qr!corenlp/sentences!, 'data');
+is($data->{stream}->[0]->[0], '-:corenlp/sentences$<i>1', 'Number of paragraphs');
+is($data->{stream}->[0]->[1], '-:tokens$<i>18', 'Number of tokens');
+is($data->{stream}->[0]->[2], '<>:corenlp/s:s$<b>64<i>0<i>129<i>17<b>0', 'Text');
+is($data->{stream}->[0]->[3], '_0$<i>0<i>3', 'Position');
+is($data->{stream}->[-1]->[0], '_17$<i>124<i>128', 'Position');
+
 done_testing;
 
 __END__
-
-like($data->{foundries}, qr!corenlp/morpho!, 'data');
-like($data->{layerInfos}, qr!corenlp/p=tokens!, 'data');
-is($data->{stream}->[0]->[2], 'corenlp/p:APPRART', 'POS');
-is($data->{stream}->[1]->[1], 'corenlp/p:ADJ', 'POS');
-is($data->{stream}->[2]->[1], 'corenlp/p:ADJA', 'POS');
diff --git a/t/index/corpus/doc/text/xip/constituency.xml b/t/index/corpus/doc/text/xip/constituency.xml
new file mode 100644
index 0000000..a410fe6
--- /dev/null
+++ b/t/index/corpus/doc/text/xip/constituency.xml
@@ -0,0 +1,251 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-model href="span.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
+<layer docid="Corpus_Doc.00001" version="KorAP-0.4" xmlns="http://ids-mannheim.de/ns/KorAP">
+  <spanList> 
+    <span from="0" id="s2_n40" to="130">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">TOP</f>
+      </fs>
+      <rel label="dominates" target="s2_n60" />
+    </span>
+    <span from="0" id="s2_n60" to="130">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">MC</f>
+      </fs>
+      <rel label="dominates" target="s2_n57" />
+      <rel label="dominates" uri="morpho.xml#s2_n8" />
+      <rel label="dominates" target="s2_n50" />
+      <rel label="dominates" target="s2_n51" />
+      <rel label="dominates" target="s2_n54" />
+      <rel label="dominates" uri="morpho.xml#s2_n20" />
+      <rel label="dominates" target="s2_n59" />
+    </span>
+    <span from="0" id="s2_n57" to="30">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">PP</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n0" />
+      <rel label="dominates" target="s2_n53" />
+    </span>
+    <span from="0" id="s2_n0" to="3">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">PREP</f>
+      </fs>
+    </span>
+    <span from="4" id="s2_n53" to="30">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NP</f>
+      </fs>
+      <rel label="dominates" target="s2_n43" />
+    </span>
+    <span from="4" id="s2_n43" to="30">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NPA</f>
+      </fs>
+      <rel label="dominates" target="s2_n41" />
+      <rel label="dominates" target="s2_n42" />
+      <rel label="dominates" uri="morpho.xml#s2_n6" />
+    </span>
+    <span from="4" id="s2_n41" to="11">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">AP</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n2" />
+    </span>
+    <span from="4" id="s2_n2" to="11">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">ADJ</f>
+      </fs>
+    </span>
+    <span from="12" id="s2_n42" to="23">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">AP</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n4" />
+    </span>
+    <span from="12" id="s2_n4" to="23">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">ADJ</f>
+      </fs>
+    </span>
+    <span from="24" id="s2_n6" to="30">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NOUN</f>
+      </fs>
+    </span>
+    <span from="31" id="s2_n8" to="36">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">VERB</f>
+      </fs>
+    </span>
+    <span from="37" id="s2_n50" to="48">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NP</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n10" />
+      <rel label="dominates" target="s2_n44" />
+    </span>
+    <span from="37" id="s2_n10" to="40">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">DET</f>
+      </fs>
+    </span>
+    <span from="41" id="s2_n44" to="48">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NPA</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n12" />
+    </span>
+    <span from="41" id="s2_n12" to="48">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NOUN</f>
+      </fs>
+    </span>
+    <span from="49" id="s2_n51" to="64">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NP</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n14" />
+      <rel label="dominates" target="s2_n45" />
+    </span>
+    <span from="49" id="s2_n14" to="52">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">DET</f>
+      </fs>
+    </span>
+    <span from="53" id="s2_n45" to="64">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NPA</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n16" />
+    </span>
+    <span from="53" id="s2_n16" to="64">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NOUN</f>
+      </fs>
+    </span>
+    <span from="65" id="s2_n54" to="74">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NP</f>
+      </fs>
+      <rel label="dominates" target="s2_n46" />
+    </span>
+    <span from="65" id="s2_n46" to="74">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NPA</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n18" />
+    </span>
+    <span from="65" id="s2_n18" to="74">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NOUN</f>
+      </fs>
+    </span>
+    <span from="75" id="s2_n20" to="78">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">PTCL</f>
+      </fs>
+    </span>
+    <span from="78" id="s2_n59" to="130">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">INS</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n22" />
+      <rel label="dominates" target="s2_n58" />
+      <rel label="dominates" uri="morpho.xml#s2_n38" />
+    </span>
+    <span from="78" id="s2_n22" to="79">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">PUNCT</f>
+      </fs>
+    </span>
+    <span from="80" id="s2_n58" to="129">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">SC</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n24" />
+      <rel label="dominates" target="s2_n52" />
+      <rel label="dominates" target="s2_n55" />
+      <rel label="dominates" target="s2_n56" />
+      <rel label="dominates" uri="morpho.xml#s2_n34" />
+      <rel label="dominates" uri="morpho.xml#s2_n36" />
+    </span>
+    <span from="80" id="s2_n24" to="85">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">CONJ</f>
+      </fs>
+    </span>
+    <span from="86" id="s2_n52" to="97">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NP</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n26" />
+      <rel label="dominates" target="s2_n47" />
+    </span>
+    <span from="86" id="s2_n26" to="89">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">DET</f>
+      </fs>
+    </span>
+    <span from="90" id="s2_n47" to="97">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NPA</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n28" />
+    </span>
+    <span from="90" id="s2_n28" to="97">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NOUN</f>
+      </fs>
+    </span>
+    <span from="98" id="s2_n55" to="102">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NP</f>
+      </fs>
+      <rel label="dominates" target="s2_n48" />
+    </span>
+    <span from="98" id="s2_n48" to="102">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NPA</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n30" />
+    </span>
+    <span from="98" id="s2_n30" to="102">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NOUN</f>
+      </fs>
+    </span>
+    <span from="103" id="s2_n56" to="112">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NP</f>
+      </fs>
+      <rel label="dominates" target="s2_n49" />
+    </span>
+    <span from="103" id="s2_n49" to="112">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NPA</f>
+      </fs>
+      <rel label="dominates" uri="morpho.xml#s2_n32" />
+    </span>
+    <span from="103" id="s2_n32" to="112">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">NOUN</f>
+      </fs>
+    </span>
+    <span from="113" id="s2_n34" to="124">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">VERB</f>
+      </fs>
+    </span>
+    <span from="125" id="s2_n36" to="129">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">VERB</f>
+      </fs>
+    </span>
+    <span from="129" id="s2_n38" to="130">
+      <fs type="node" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="const">PUNCT</f>
+      </fs>
+    </span>
+  </spanList>
+</layer>
diff --git a/t/index/corpus/doc/text/xip/dependency.xml b/t/index/corpus/doc/text/xip/dependency.xml
new file mode 100644
index 0000000..3ba0237
--- /dev/null
+++ b/t/index/corpus/doc/text/xip/dependency.xml
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-model href="span.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
+<layer docid="Corpus_Doc.00001" version="KorAP-0.4" xmlns="http://ids-mannheim.de/ns/KorAP">
+  <spanList> 
+    <span from="0" id="s2_n57" to="30">
+      <rel label="VMOD">
+        <span from="31" to="36" />
+      </rel>
+    </span>
+    <span from="4" id="s2_n2" to="11">
+      <rel label="NMOD">
+        <span from="24" to="30" />
+      </rel>
+    </span>
+    <span from="12" id="s2_n4" to="23">
+      <rel label="NMOD">
+        <span from="24" to="30" />
+      </rel>
+    </span>
+    <span from="31" id="s2_n8" to="36">
+      <rel label="VMAIN" type="unary" />
+    </span>
+    <span from="37" id="s2_n10" to="40">
+      <rel label="DETERM">
+        <span from="41" to="48" />
+      </rel>
+    </span>
+    <span from="41" id="s2_n12" to="48">
+      <rel label="SUBJ">
+        <span from="31" to="36" />
+      </rel>
+    </span>
+    <span from="49" id="s2_n14" to="52">
+      <rel label="DETERM">
+        <span from="53" to="64" />
+      </rel>
+    </span>
+    <span from="53" id="s2_n16" to="64">
+      <rel label="NMOD">
+        <span from="41" to="48" />
+      </rel>
+    </span>
+    <span from="65" id="s2_n18" to="74">
+      <rel label="NMOD">
+        <span from="53" to="64" />
+      </rel>
+    </span>
+    <span from="75" id="s2_n20" to="78">
+      <rel label="VPREF">
+        <span from="31" to="36" />
+      </rel>
+    </span>
+    <span from="80" id="s2_n24" to="85">
+      <rel label="CONNECT">
+        <span from="113" to="124" />
+      </rel>
+    </span>
+    <span from="86" id="s2_n26" to="89">
+      <rel label="DETERM">
+        <span from="90" to="97" />
+      </rel>
+    </span>
+    <span from="90" id="s2_n28" to="97">
+      <rel label="SUBJ">
+        <span from="113" to="124" />
+      </rel>
+    </span>
+    <span from="98" id="s2_n30" to="102">
+      <rel label="OBJ">
+        <span from="113" to="124" />
+      </rel>
+    </span>
+    <span from="103" id="s2_n32" to="112">
+      <rel label="OBJ">
+        <span from="113" to="124" />
+      </rel>
+    </span>
+    <span from="113" id="s2_n34" to="124">
+      <rel label="AUXIL">
+        <span from="125" to="129" />
+      </rel>
+      <rel label="VMAIN" type="unary" />
+    </span>
+  </spanList>
+</layer>
diff --git a/t/index/corpus/doc/text/xip/morpho.xml b/t/index/corpus/doc/text/xip/morpho.xml
new file mode 100644
index 0000000..7c10928
--- /dev/null
+++ b/t/index/corpus/doc/text/xip/morpho.xml
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-model href="span.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
+<layer docid="Corpus_Doc.00001" version="KorAP-0.4" xmlns="http://ids-mannheim.de/ns/KorAP">
+  <spanList>
+    <span from="0" id="s2_n0" to="3">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">zu</f>
+            <f name="pos">PREP</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="4" id="s2_n2" to="11">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">letzt</f>
+            <f name="pos">ADJ</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="12" id="s2_n4" to="23">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">kulturell</f>
+             <f name="pos">ADJ</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="24" id="s2_n6" to="30">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">Anlass</f>
+            <f name="pos">NOUN</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="31" id="s2_n8" to="36">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">=laden</f>
+            <f name="pos">VERB</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="37" id="s2_n10" to="40">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">die</f>
+            <f name="pos">DET</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="41" id="s2_n12" to="48">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">Leitung</f>
+            <f name="pos">NOUN</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="49" id="s2_n14" to="52">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">der</f>
+            <f name="pos">DET</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="53" id="s2_n16" to="64">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">schulen#Heim</f>
+            <f name="pos">NOUN</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="65" id="s2_n18" to="74">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">Hofbergli</f>
+            <f name="pos">NOUN</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="75" id="s2_n20" to="78">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">ein</f>
+            <f name="pos">PTCL</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="78" id="s2_n22" to="79">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">,</f>
+            <f name="pos">PUNCT</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="80" id="s2_n24" to="85">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">bevor</f>
+            <f name="pos">CONJ</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="86" id="s2_n26" to="89">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">der</f>
+            <f name="pos">DET</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="90" id="s2_n28" to="97">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">Betrieb</f>
+            <f name="pos">NOUN</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="98" id="s2_n30" to="102">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">Ende</f>
+            <f name="pos">NOUN</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="103" id="s2_n32" to="112">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">schulen#Jahr</f>
+            <f name="pos">NOUN</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="113" id="s2_n34" to="124">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">ein=stellen</f>
+            <f name="pos">VERB</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="125" id="s2_n36" to="129">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">werden</f>
+            <f name="pos">VERB</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+    <span from="129" id="s2_n38" to="130">
+      <fs type="lex" xmlns="http://www.tei-c.org/ns/1.0">
+        <f name="lex">
+          <fs>
+            <f name="lemma">.</f>
+            <f name="pos">PUNCT</f>
+          </fs>
+        </f>
+      </fs>
+    </span>
+  </spanList>
+</layer>
diff --git a/t/index/corpus/doc/text/xip/sentences.xml b/t/index/corpus/doc/text/xip/sentences.xml
new file mode 100644
index 0000000..0965bc6
--- /dev/null
+++ b/t/index/corpus/doc/text/xip/sentences.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?xml-model href="span.rng" type="application/xml" schematypens="http://relaxng.org/ns/structure/1.0"?>
+<layer docid="Corpus_Doc.00001" version="KorAP-0.4" xmlns="http://ids-mannheim.de/ns/KorAP">
+  <spanList> 
+    <span from="0" to="130" />
+  </spanList>
+</layer>
diff --git a/t/index/xip_constituency.t b/t/index/xip_constituency.t
new file mode 100644
index 0000000..7197bea
--- /dev/null
+++ b/t/index/xip_constituency.t
@@ -0,0 +1,58 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use utf8;
+use Test::More;
+use Scalar::Util qw/weaken/;
+use Data::Dumper;
+
+use_ok('KorAP::Document');
+
+use File::Basename 'dirname';
+use File::Spec::Functions 'catdir';
+
+my $path = catdir(dirname(__FILE__), 'corpus', 'doc', 'text');
+
+ok(my $doc = KorAP::Document->new(
+  path => $path . '/'
+), 'Load Korap::Document');
+
+like($doc->path, qr!$path/$!, 'Path');
+ok($doc->parse, 'Parse document');
+
+ok($doc->primary->data, 'Primary data in existence');
+is($doc->primary->data_length, 129, 'Data length');
+
+use_ok('KorAP::Tokenizer');
+
+ok(my $tokens = KorAP::Tokenizer->new(
+  path => $doc->path,
+  doc => $doc,
+  foundry => 'OpenNLP',
+  layer => 'Tokens',
+  name => 'tokens'
+), 'New Tokenizer');
+
+ok($tokens->parse, 'Parse');
+
+ok($tokens->add('XIP', 'Constituency'), 'Add Structure');
+
+my $data = $tokens->to_data->{data};
+like($data->{foundries}, qr!xip/constituency!, 'data');
+like($data->{layerInfos}, qr!xip/c=spans!, 'data');
+
+# The length includes the punct - but that doesn't matter
+is($data->{stream}->[0]->[1], '<>:xip/c:PREP$<b>64<i>0<i>3<i>1<b>3', 'Prep phrase');
+is($data->{stream}->[0]->[2], '<>:xip/c:PP$<b>64<i>0<i>30<i>4<b>2', 'pp phrase');
+is($data->{stream}->[0]->[3], '<>:xip/c:TOP$<b>64<i>0<i>129<i>17<b>0', 'top phrase');
+is($data->{stream}->[0]->[4], '<>:xip/c:MC$<b>64<i>0<i>129<i>17<b>1', 'mc phrase');
+
+is($data->{stream}->[-1]->[0], '<>:xip/c:VERB$<b>64<i>124<i>128<i>18<b>4', 'Noun phrase');
+
+done_testing;
+
+__END__
+
+
+
+
diff --git a/t/index/xip_morpho.t b/t/index/xip_morpho.t
new file mode 100644
index 0000000..4cf37b7
--- /dev/null
+++ b/t/index/xip_morpho.t
@@ -0,0 +1,61 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use utf8;
+use Test::More;
+use Scalar::Util qw/weaken/;
+use Data::Dumper;
+
+use_ok('KorAP::Document');
+
+use File::Basename 'dirname';
+use File::Spec::Functions 'catdir';
+
+my $path = catdir(dirname(__FILE__), 'corpus', 'doc', 'text');
+
+ok(my $doc = KorAP::Document->new(
+  path => $path . '/'
+), 'Load Korap::Document');
+
+like($doc->path, qr!$path/$!, 'Path');
+ok($doc->parse, 'Parse document');
+
+ok($doc->primary->data, 'Primary data in existence');
+is($doc->primary->data_length, 129, 'Data length');
+
+use_ok('KorAP::Tokenizer');
+
+ok(my $tokens = KorAP::Tokenizer->new(
+  path => $doc->path,
+  doc => $doc,
+  foundry => 'OpenNLP',
+  layer => 'Tokens',
+  name => 'tokens'
+), 'New Tokenizer');
+
+ok($tokens->parse, 'Parse');
+
+ok($tokens->add('XIP', 'Morpho'), 'Add Structure');
+
+my $data = $tokens->to_data->{data};
+
+like($data->{foundries}, qr!xip/morpho!, 'data');
+like($data->{layerInfos}, qr!xip/l=tokens!, 'data');
+like($data->{layerInfos}, qr!xip/p=tokens!, 'data');
+is($data->{stream}->[0]->[4], 'xip/l:zu', 'Lemma');
+is($data->{stream}->[0]->[5], 'xip/p:PREP', 'POS');
+
+is($data->{stream}->[1]->[3], 'xip/l:letzt', 'Lemma');
+is($data->{stream}->[1]->[4], 'xip/p:ADJ', 'POS');
+
+is($data->{stream}->[8]->[3], 'xip/l:\#Heim', 'Lemma (part)');
+is($data->{stream}->[8]->[4], 'xip/l:\#schulen', 'Lemma (part)');
+is($data->{stream}->[8]->[5], 'xip/l:schulen\#Heim', 'Lemma (part)');
+
+is($data->{stream}->[-1]->[3], 'xip/l:werden', 'Lemma');
+is($data->{stream}->[-1]->[4], 'xip/p:VERB', 'POS');
+
+done_testing;
+
+__END__
+
diff --git a/t/index/xip_sentences.t b/t/index/xip_sentences.t
new file mode 100644
index 0000000..1fa9ee6
--- /dev/null
+++ b/t/index/xip_sentences.t
@@ -0,0 +1,51 @@
+#!/usr/bin/env perl
+use strict;
+use warnings;
+use utf8;
+use Test::More;
+use Scalar::Util qw/weaken/;
+use Data::Dumper;
+
+use_ok('KorAP::Document');
+
+use File::Basename 'dirname';
+use File::Spec::Functions 'catdir';
+
+my $path = catdir(dirname(__FILE__), 'corpus', 'doc', 'text');
+
+ok(my $doc = KorAP::Document->new(
+  path => $path . '/'
+), 'Load Korap::Document');
+
+like($doc->path, qr!$path/$!, 'Path');
+ok($doc->parse, 'Parse document');
+
+ok($doc->primary->data, 'Primary data in existence');
+is($doc->primary->data_length, 129, 'Data length');
+
+use_ok('KorAP::Tokenizer');
+
+ok(my $tokens = KorAP::Tokenizer->new(
+  path => $doc->path,
+  doc => $doc,
+  foundry => 'OpenNLP',
+  layer => 'Tokens',
+  name => 'tokens'
+), 'New Tokenizer');
+
+ok($tokens->parse, 'Parse');
+
+ok($tokens->add('XIP', 'Sentences'), 'Add Structure');
+
+my $data = $tokens->to_data->{data};
+
+like($data->{foundries}, qr!xip/sentences!, 'data');
+
+is($data->{stream}->[0]->[1], '-:xip/sentences$<i>1', 'Number of paragraphs');
+is($data->{stream}->[0]->[0], '-:tokens$<i>18', 'Number of tokens');
+is($data->{stream}->[0]->[2], '<>:xip/s:s$<b>64<i>0<i>129<i>17<b>0', 'Text');
+is($data->{stream}->[0]->[3], '_0$<i>0<i>3', 'Position');
+is($data->{stream}->[-1]->[0], '_17$<i>124<i>128', 'Position');
+
+done_testing;
+__END__
