<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                xmlns:fo="http://www.w3.org/1999/XSL/Format"
                xmlns:svg="http://www.w3.org/2000/svg"
                xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
                xmlns:dc="http://purl.org/dc/elements/1.1/"
                xmlns:dcterms="http://purl.org/dc/terms/"
                xmlns:xlink="http://www.w3.org/1999/xlink"
                version="1.0">
                
    <xsl:import href="rdf_to_svg.svg.xsl" />
               
    <xsl:output method="xml"
                omit-xml-declaration="no"
                indent="yes"
                encoding="utf-8"  />
    
    <xsl:template match="/rdf:RDF">
        <fo:root>
            <xsl:call-template name="setup_page_template" />
            <xsl:call-template name="page_content" />
        </fo:root>
    </xsl:template>
    
    <xsl:template name="setup_page_template">
        <fo:layout-master-set>
        
            <fo:simple-page-master
                master-name="simple"
                page-height="21cm"
                page-width="29.7cm"
                margin-left="1cm"
                margin-right="1cm"
                margin-top="2cm"
                margin-bottom="0.5cm">
                <fo:region-body region-name="xsl-region-body" margin-bottom="1.5cm" />
                <fo:region-after region-name="xsl-region-after" extent="1cm" />
            </fo:simple-page-master>
        </fo:layout-master-set>
    </xsl:template>
   
    
    <xsl:template name="page_content">
        <fo:page-sequence master-reference="simple">

            <fo:static-content flow-name="xsl-region-after">
                <fo:block text-align="right" font-size="50%" color="grey">XML Family Diagram: <fo:page-number /></fo:block>
            </fo:static-content>
        
            <fo:flow flow-name="xsl-region-body" font-size="70%">
                <xsl:call-template name="page_title" />
                <xsl:call-template name="draw_svg_graph" />    
            </fo:flow>

        </fo:page-sequence>
    </xsl:template>
    
    <xsl:template name="page_title">
        <fo:block space-after="2em" font-size="200%" font-weight="bold">XML technology relationships</fo:block>
    </xsl:template>
   
    <!-- displays the graph -->
    <xsl:template name="draw_svg_graph">
        <fo:block align="center">
            <fo:instream-foreign-object>
                <xsl:call-template name="create_svg_drawing" />
            </fo:instream-foreign-object>
        </fo:block>
    </xsl:template>
 
    
</xsl:stylesheet>