attempt to add to the headers (they are black boxes)

Change-Id: I30a9b5bef3955a83b8ae6bad7ea1c3cbc3f4a964
diff --git a/nkjp2korap.xsl b/nkjp2korap.xsl
index ff1ee50..19f5a1a 100644
--- a/nkjp2korap.xsl
+++ b/nkjp2korap.xsl
@@ -35,6 +35,7 @@
 
   <xsl:mode name="corpus" on-no-match="deep-skip"/>
   <xsl:mode name="text" on-no-match="deep-skip"/>
+  <xsl:mode name="header-text" on-no-match="text-only-copy"/>
 
   <!--  <xsl:variable name="text_depth" as="xs:integer" select="xs:integer('2')" static="true"/>
   <!-\-  this magic number indicates the depth of the <TEI> element inside teiCorpus/TEI -\->
@@ -79,6 +80,8 @@
     </xsl:choose>
   </xsl:function>
 
+  <xsl:template match="@default" mode="#all"/>
+
   <xsl:template name="xsl:initial-template">
     <xsl:variable name="text.xml" as="document-node()" select="doc($sourceDir || 'text.xml')"/>
     <xsl:variable name="ann_morphosyntax.xml" as="document-node()"
@@ -450,15 +453,15 @@
       xpath-default-namespace="http://ids-mannheim.de/ns/KorAP" href="{$target}">
 
       <idsHeader type="document" pattern="text" status="new" version="1.1" TEIform="teiHeader">
-        <xsl:apply-templates select="$text.xml//tei:TEI/tei:teiHeader/tei:fileDesc" mode="text"/>
+        <xsl:apply-templates select="$text.xml//tei:TEI/tei:teiHeader/tei:*" mode="text"/>
       </idsHeader>
     </xsl:result-document>
   </xsl:template>
 
   <xsl:template match="tei:fileDesc" mode="text">
-    <fileDesc>
+    <xsl:element name="{local-name()}">
       <xsl:apply-templates mode="text"/>
-    </fileDesc>
+    </xsl:element>
   </xsl:template>
 
   <xsl:template match="tei:title" mode="text">
@@ -476,7 +479,48 @@
     </titleStmt>
   </xsl:template>
 
+  <xsl:template match="tei:publicationStmt" mode="text">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="text"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:availability" mode="text">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="text" select="@* | *"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:profileDesc" mode="text">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="text"/>
+    </xsl:element>
+  </xsl:template>
 
+  <xsl:template match="tei:textClass" mode="text">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="text" select="@* | *"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:catRef" mode="text corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="text" select="@* | *"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="@status | @scheme | @target | @type | @xml:id[ancestor::tei:classDecl] | @xml:lang" mode="text corpus">
+    <xsl:copy-of select="."/>
+  </xsl:template>
+  
+  <xsl:template match="tei:p" mode="text corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="header-text"/>
+    </xsl:element>
+  </xsl:template>
+  
+  
+  <!--  OPTIMIZATION has to take modes into account   -->
   <!--   **************************        CORPUS header       *******************                -->
   <xsl:template name="create_corpus_header">
     <xsl:param name="text.xml" as="document-node()"/>
@@ -491,20 +535,22 @@
       -->
 
       <idsHeader type="corpus" pattern="text" status="new" version="1.1" TEIform="teiHeader">
-        <xsl:apply-templates select="$text.xml//tei:TEI/tei:teiHeader/tei:fileDesc" mode="corpus"/>
+        <xsl:apply-templates select="$text.xml/tei:teiCorpus/tei:teiHeader/tei:*" mode="corpus"/>
       </idsHeader>
     </xsl:result-document>
   </xsl:template>
 
   <xsl:template match="tei:fileDesc" mode="corpus">
-    <fileDesc>
+    <xsl:element name="{local-name()}">
       <xsl:apply-templates mode="corpus"/>
-    </fileDesc>
+    </xsl:element>
   </xsl:template>
+  
 
   <xsl:template match="tei:title" mode="corpus">
     <c.title>
-      <xsl:apply-templates/>
+      <xsl:apply-templates mode="corpus" select="@*"/>
+      <xsl:apply-templates mode="header-text"/>
     </c.title>
   </xsl:template>
 
@@ -517,7 +563,49 @@
     </titleStmt>
   </xsl:template>
 
-
+  <xsl:template match="tei:publicationStmt" mode="corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="corpus"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:availability" mode="corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="corpus" select="@* | *"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:encodingDesc" mode="corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="corpus"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:classDecl | tei:taxonomy | tei:category | tei:taxonomy/tei:bibl" mode="corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="corpus" select="@* | *"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:bibl/tei:title | tei:edition | tei:desc" mode="corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="corpus" select="@*"/>
+      <xsl:apply-templates mode="header-text"/>
+    </xsl:element>
+  </xsl:template>
+<!--
+  <xsl:template match="tei:textClass" mode="corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="corpus" select="@* | *"/>
+    </xsl:element>
+  </xsl:template>
+  
+  <xsl:template match="tei:catRef" mode="corpus">
+    <xsl:element name="{local-name()}">
+      <xsl:apply-templates mode="corpus" select="@* | *"/>
+    </xsl:element>
+  </xsl:template>
+-->