<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"
	xmlns:xalan="org.apache.xalan.xslt.extensions.Redirect"
	extension-element-prefixes="xalan"
>

<xsl:output
    encoding="ISO-8859-1"
    method="text"
    indent="no"
/>


<xsl:variable name="directory">
    <xsl:text>c:/tmp</xsl:text>
</xsl:variable>

<xsl:strip-space elements="*"/>

<xsl:template match="BIBDB/GROUP">

<!-- open all files-->
	<xalan:open file="{$directory}/Titles.txt">
	</xalan:open>
	
	<xalan:open file="{$directory}/TitelVariations.txt">
	</xalan:open>
	
	<xalan:open file="{$directory}/JoinTitleAndVariant.txt">
	</xalan:open>
	
	<xalan:open file="{$directory}/JoinTitlePublication.txt">
	</xalan:open>
	<!-- Write headers-->
	<xalan:write file="{$directory}/Titles.txt">
	<xsl:text>TitleId|Title|Length|IMDBID|Year|Country|Category
</xsl:text>
	</xalan:write>
	
	<xalan:write file="{$directory}/TitelVariations.txt">
	<xsl:text>VariantId|Title Variant|
</xsl:text>
	</xalan:write>
	
	<xalan:write file="{$directory}/JoinTitleAndVariant.txt">
	<xsl:text>TitleId|VariantId|
</xsl:text>
	</xalan:write>
	
	<xalan:write file="{$directory}/JoinTitlePublication.txt">
	<xsl:text>TitelId|PubId|
</xsl:text>
	</xalan:write>
	
	
	<xsl:apply-templates select="A"/>
	
		<!-- Close the files -->
	
	<xalan:close file="{$directory}/Titles.txt">
	</xalan:close>
	
	<xalan:close file="{$directory}/TitelVariations.txt">
	</xalan:close>
	
	<xalan:close file="{$directory}/JoinTitleAndVariant.txt">
	</xalan:close>
	
	<xalan:close file="{$directory}/JoinTitlePublication.txt">
	</xalan:close>
	
</xsl:template>

<xsl:template match="A">
	<xsl:apply-templates select="film"/>
</xsl:template>

<xsl:template match="film">

<xalan:write file="{$directory}/Titles.txt">
<xsl:value-of select="film.title/@title.id"/><xsl:text>|</xsl:text>
<xsl:value-of select="normalize-space(film.title)"/><xsl:text>|</xsl:text>
<xsl:value-of select="film.length"/><xsl:text>|</xsl:text>
<xsl:value-of select="film.imdb"/><xsl:text>|</xsl:text>
<xsl:value-of select="film.year"/><xsl:text>|</xsl:text>
<xsl:value-of select="film.country"/><xsl:text>|</xsl:text>
<xsl:for-each select="film.w_categories/film.category">
<xsl:value-of select="."/><xsl:text> </xsl:text>
</xsl:for-each>
<xsl:text>|
</xsl:text>
</xalan:write>
	
	
	<xsl:apply-templates select="film.w_title_variations/film.title_variation"/>
		
	<xsl:apply-templates select="film.publication.links/film.publication.link"/>
		
	
	
</xsl:template>


<xsl:template match="film.title_variation">

	<xalan:write file="{$directory}/TitelVariations.txt">
<xsl:value-of select="film.title/@title.id"/><xsl:text>|</xsl:text>
<xsl:value-of select="normalize-space(film.title)"/><xsl:text>|</xsl:text><xsl:text>
</xsl:text>
	</xalan:write>
	
	<xalan:write file="{$directory}/JoinTitleAndVariant.txt">	
<xsl:value-of select="../../film.title/@title.id"/><xsl:text>|</xsl:text>
<xsl:value-of select="film.title/@title.id"/><xsl:text>|</xsl:text><xsl:text>
</xsl:text>
	</xalan:write>

</xsl:template>

<xsl:template match="film.publication.link">
	<xalan:write file="{$directory}/JoinTitlePublication.txt">
<xsl:value-of select="../../film.title/@title.id"/><xsl:text>|</xsl:text>
<xsl:value-of select="@target.id"/><xsl:text>|
</xsl:text>
	</xalan:write>	
</xsl:template>

</xsl:stylesheet>
