@gki
Hi,
ich denke, als erstes sollte geklärt werden - und dazu reicht erst mal einfaches Text-Format - welche Daten unbedingt dargestellt werden sollen und dann noch eine grobe Struktur des ganzen. Anschließend kann man mit LaTex oder HTML und CSS die Formatierung machen. Als Sortierung der Familien würde ich die Kekule-Zahlen empfehlen. Ich selber fasse gern alle Familien zusammen, die zu einem Ahnen gehören - sprich der Ahne mit seinen Partnern samt den entsprechenden Kindern und den Ehepartnern der Kinder.
Und jetzt versuche ich mal die aktuelle XSL-Datei anzuhängen:
Hi,
ich denke, als erstes sollte geklärt werden - und dazu reicht erst mal einfaches Text-Format - welche Daten unbedingt dargestellt werden sollen und dann noch eine grobe Struktur des ganzen. Anschließend kann man mit LaTex oder HTML und CSS die Formatierung machen. Als Sortierung der Familien würde ich die Kekule-Zahlen empfehlen. Ich selber fasse gern alle Familien zusammen, die zu einem Ahnen gehören - sprich der Ahne mit seinen Partnern samt den entsprechenden Kindern und den Ehepartnern der Kinder.
Und jetzt versuche ich mal die aktuelle XSL-Datei anzuhängen:
Code:
<?xml version="1.0" encoding="iso-8859-1"?> <xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="text" indent="yes" encoding="ISO-8859-1" omit-xml-declaration="no"/> <xsl:template match="/"> <xsl:apply-templates select="*"/> </xsl:template> <xsl:template match="*:database"> <xsl:apply-templates select="*:families" /> <!-- <xsl:apply-templates select="*:people" /> --> </xsl:template> <xsl:template match="*:people"> <xsl:apply-templates select="*:person" /> </xsl:template> <xsl:template match="*:person"> <xsl:apply-templates select="*:name" /> <xsl:text> </xsl:text> </xsl:template> <xsl:template match="*:name"> <xsl:choose> <xsl:when test="@type='Birth Name'"> <xsl:value-of select="*:surname" /> </xsl:when> <xsl:otherwise> <xsl:text>???</xsl:text> </xsl:otherwise> </xsl:choose> <xsl:text>, </xsl:text> <xsl:value-of select="*:first" /> </xsl:template> <xsl:template match="*:families"> <xsl:apply-templates select="*:family" /> </xsl:template> <xsl:template match="*:family"> <xsl:if test="*:father"> <xsl:call-template name="search_person"> <xsl:with-param name="hlink" select="*:father/@hlink" /> </xsl:call-template> <xsl:text> </xsl:text> </xsl:if> <xsl:if test="*:mother"> <xsl:call-template name="search_person"> <xsl:with-param name="hlink" select="*:mother/@hlink" /> </xsl:call-template> <xsl:text> </xsl:text> </xsl:if> <xsl:for-each select="*:childref"> <xsl:text> - </xsl:text> <xsl:call-template name="search_person"> <xsl:with-param name="hlink" select="@hlink" /> </xsl:call-template> <xsl:text> </xsl:text> </xsl:for-each> <xsl:text> </xsl:text> </xsl:template> <xsl:template name="search_person"> <xsl:param name="hlink" /> <xsl:apply-templates select="/descendant::*:person[$hlink=@handle]/*:name" /> </xsl:template> </xsl:stylesheet>
Kommentar