1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
<?xml version="1.0" encoding="utf-8"?>
<!-- AUTHOR: Chris Mungall cjm at fruitfly dot org -->
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output indent="yes" method="xml"/>
<xsl:key name="k-feature" match="//feature" use="feature_id"/>
<xsl:template match="/chado">
<chado>
<xsl:for-each select="//feature">
<feature>
<xsl:copy-of select="*[not(name(.) = 'feature_relationship')]"/>
</feature>
</xsl:for-each>
<xsl:for-each select="//feature_relationship">
<feature_relationship>
<subject_id>
<xsl:apply-templates mode="make-link" select=".."/>
</subject_id>
<object_id>
<xsl:apply-templates mode="make-link" select="subject_id/feature"/>
</object_id>
<xsl:copy-of select="type_id"/>
<xsl:copy-of select="rank"/>
</feature_relationship>
</xsl:for-each>
</chado>
</xsl:template>
<xsl:template mode="make-link" match="feature">
<feature>
<xsl:copy-of select="uniquename"/>
<xsl:copy-of select="organism_id"/>
<xsl:copy-of select="type_id"/>
</feature>
</xsl:template>
<!-- block -->
<xsl:template match="feature_relationship">
</xsl:template>
<xsl:template match="feature">
</xsl:template>
<xsl:template match="*">
<xsl:copy-of select="."/>
</xsl:template>
</xsl:stylesheet>
|