- Timestamp:
- 09/19/12 10:35:47 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
SMC/trunk/SMC/src/scripts/smc_stats.xsl
r1650 r2234 20 20 currently the main map is produced in a separate step and loaded from static-xml (map_file)</purpose> 21 21 <params> 22 22 main input file is expected dcr-cmd-map.xml 23 23 </params> 24 24 <history> … … 29 29 <!--<xsl:import href="cmd_commons.xsl"/>--> 30 30 31 <xsl:output method="xml" indent="yes" /> 32 33 <xsl:include href="smc_commons.xsl"/> 31 32 <xsl:import href="smc_commons.xsl"/> 33 34 <xsl:output method="html" indent="yes" /> 34 35 35 36 <xsl:param name="title" select="'SMC Stats'" /> … … 37 38 <!-- 38 39 <xsl:param name="map_file" select="'../../../../SMC/output/map_full.xml'" /> 39 <xsl:variable name="map" select="document($ map_file)" />40 <xsl:variable name="map" select="document($dcr-cmd-map_file)" /> 40 41 --> 41 42 42 <xsl:template name="continue-root"> 43 <!--<xsl:template name="continue-root">--> 44 <xsl:template match="/"> 43 45 <xsl:call-template name="summary-overall"></xsl:call-template> 44 <xsl:call-template name="summary-terms"></xsl:call-template> 45 <xsl:call-template name="summary-cmd"></xsl:call-template> 46 <!-- <xsl:call-template name="summary-concepts"></xsl:call-template>--> 46 <xsl:call-template name="summary-concepts"></xsl:call-template> 47 <xsl:call-template name="summary-terms"></xsl:call-template> 48 <xsl:call-template name="summary-cmd"></xsl:call-template> 49 <xsl:call-template name="ambigue-elems"></xsl:call-template> 50 47 51 </xsl:template> 48 52 … … 51 55 <table> 52 56 <tbody> 57 <tr><td>dcr-terms</td><td ><xsl:value-of select="document-uri($dcr-terms)"/></td></tr> 53 58 <tr><td>creation date</td><td align="right"><xsl:value-of select="current-date()"/></td></tr> 54 <tr><td>available Concepts</td><td align="right"><xsl:value-of select="count($dcr _terms//Concept)"/></td></tr>55 <tr><td>used Concept</td><td align="right"><xsl:value-of select="count($map//Concept)"/></td></tr>59 <tr><td>available Concepts</td><td align="right"><xsl:value-of select="count($dcr-terms//Concept)"/></td></tr> 60 <tr><td>used Concept</td><td align="right"><xsl:value-of select="count($dcr-cmd-map//Concept)"/></td></tr> 56 61 <tr><td>blind Concepts (not in isocat)</td><td align="right"><xsl:value-of select="count(//Concept[not(Term[@set='isocat'])])"/></td></tr> 57 <tr><td>unused Concepts</td><td align="right"><xsl:value-of select="count($dcr_terms//Concept except $dcr_terms//Concept[@id=$map//Concept/@id])"/></td></tr>58 <tr><td>Term</td><td align="right"><xsl:value-of select="count($map//Term)"/></td></tr>62 <tr><td>unused Concepts</td><td align="right"><xsl:value-of select="count($dcr-terms//Concept except $dcr-terms//Concept[@id=$dcr-cmd-map//Concept/@id])"/></td></tr> 63 <tr><td>Term</td><td align="right"><xsl:value-of select="count($dcr-cmd-map//Term)"/></td></tr> 59 64 <!-- 60 65 <tr><td>profileDescription</td><td align="right"><xsl:value-of select="count(//profileDescription)"/></td></tr> … … 86 91 <xsl:template name="summary-terms"> 87 92 <table> 88 <tbody> 89 <xsl:for-each-group select="$map//Term" group-by="concat(@set,@type)"> 93 <caption>Term types</caption> 94 <tbody> 95 <xsl:for-each-group select="$dcr-cmd-map//Term" group-by="concat(@set,@type)"> 90 96 <tr><td><xsl:value-of select="concat(@set,'-', @type)"></xsl:value-of></td><td align="right"><xsl:value-of select="count(current-group())"/></td></tr> 91 97 </xsl:for-each-group> … … 95 101 96 102 <xsl:template name="summary-concepts"> 103 97 104 <table> 105 <caption>Data Categories Sets</caption> 98 106 <tbody> 99 <xsl:for-each select="$map//Concept[not(Term[@set='isocat'])]" > 100 <tr><td><xsl:value-of select="@id"></xsl:value-of></td> 107 <xsl:for-each select="$dcr-terms//Termset" > 108 <tr><td><xsl:value-of select="@set"></xsl:value-of></td> 109 <td align="right"><xsl:value-of select="count(Concept)"></xsl:value-of></td> 101 110 </tr> 102 111 </xsl:for-each> … … 107 116 108 117 <xsl:template name="summary-cmd"> 109 110 <table> 111 <caption>Profiles |<xsl:value-of select="count($cmd_terms//Termset)" />|</caption> 118 <xsl:variable name="count_elems" select="count($cmd-terms//Term[@type='CMD_Element'])" ></xsl:variable> 119 <xsl:variable name="count_distinct_datcats" select="count(distinct-values($cmd-terms//Term[@type='CMD_Element']/@datcat[not(.='')]))" ></xsl:variable> 120 <xsl:variable name="count_distinct_components" select="count(distinct-values($cmd-terms//Term[@type='CMD_Component'][not(@parent='')]/@id))" ></xsl:variable> 121 <xsl:variable name="count_standalone_components" select="count(distinct-values($cmd-terms//Term[@type='CMD_Component'][not(@parent='')]/@id[not(contains(.,'#'))]))" ></xsl:variable> 122 <xsl:variable name="count_distinct_elems" select="count(distinct-values($cmd-terms//Term[@type='CMD_Element']/@id))" ></xsl:variable> 123 <xsl:variable name="count_components_datcat" select="count(distinct-values($cmd-terms//Term[@type='CMD_Component'][@datcat[not(.='')]]/@id))" ></xsl:variable> 124 125 <table> 126 <tbody> 127 <tr><td>distinct components</td><td align="right"><xsl:value-of select="$count_distinct_components"/></td></tr> 128 <tr><td>distinct standalone components</td><td align="right"><xsl:value-of select="$count_standalone_components"/></td></tr> 129 <tr><td>distinct elements</td><td align="right"><xsl:value-of select="$count_distinct_elems"/></td></tr> 130 <tr><td>elements with datcats </td><td align="right"><xsl:value-of select="format-number(count($cmd-terms//Term[@type='CMD_Element'][not(@datcat='')]) div $count_elems, '0.00 %')"/></td></tr> 131 <tr><td>components with datcats</td><td align="right"><xsl:value-of select="$count_components_datcat"/></td></tr> 132 </tbody> 133 </table> 134 135 <xsl:variable name="cmd-overall"> 136 <tr><td>Overall</td> 137 <td align="right"> 138 <xsl:value-of select="$count_distinct_components"/>/ 139 <xsl:value-of select="count($cmd-terms//Term[@type='CMD_Component'])"/> 140 </td> 141 <td align="right"> <xsl:value-of select="$count_distinct_elems"/>/ 142 <xsl:value-of select="$count_elems"/></td> 143 <td align="right"><xsl:value-of select="$count_distinct_datcats"/></td> 144 <td align="right"><xsl:value-of select="count($cmd-terms//Term[@type='CMD_Element']/@datcat[not(.='')])"/></td> 145 <td align="right"><xsl:value-of select="count($cmd-terms//Term[@type='CMD_Element'][@datcat=''])"/></td> 146 <td align="right"><xsl:value-of select="format-number(count($cmd-terms//Term[@type='CMD_Element'][@datcat='']) div $count_elems, '0.00 %')"/></td> 147 </tr> 148 </xsl:variable> 149 150 151 <table> 152 <caption>Profiles |<xsl:value-of select="count($cmd-terms//Termset)" />|</caption> 112 153 <thead><tr><th>name</th><th>|comp|</th><th>|elems|</th><th colspan="2">|distinct datcat|</th><th colspan="2">|elems w/o datcat|</th></tr></thead> 113 154 <tbody> 114 <xsl:for-each select="$cmd_terms//Termset" > 155 <xsl:copy-of select="$cmd-overall" /> 156 <xsl:for-each select="$cmd-terms//Termset" > 115 157 <xsl:sort select="name" order="ascending"/> 116 158 <xsl:variable name="count_elems" select="count(./Term[@type='CMD_Element'])" ></xsl:variable> … … 129 171 </table> 130 172 173 <table> 174 <caption>Components with DatCats</caption> 175 <thead><tr><th>comp-name</th><th colspan="3">datcat</th><th>count</th><th>profiles</th></tr></thead> 176 <tbody> 177 <xsl:for-each-group select="$cmd-terms//Term[@type='CMD_Component'][@datcat[not(.='')]]" group-by="@id"> 178 <xsl:sort select="parent::Termset/@name" /> 179 <tr> 180 <!-- <td><xsl:value-of select="@id"/></td>--> 181 <td><xsl:value-of select="@name"/></td> 182 <td><xsl:value-of select="my:shortURL(@datcat)"/></td> 183 <td><xsl:value-of select="$dcr-terms//Concept[@id=current()/@datcat]/Term[@type='mnemonic']" /></td> 184 <td><xsl:value-of select="$dcr-terms//Concept[@id=current()/@datcat]/@datcat-type" /></td> 185 <td><xsl:value-of select="count(current-group())"/></td> 186 <td><xsl:value-of select="count(current-group()/parent::Termset)"/> (<xsl:value-of select="parent::Termset/@name"/>)</td> 187 </tr> 188 </xsl:for-each-group> 189 </tbody> 190 </table> 131 191 </xsl:template> 192 193 <xsl:template name="ambigue-elems"> 194 <table> 195 <caption>Ambigue elements</caption> 196 <thead><tr><th>comp-name</th><th colspan="3">datcat</th><th>count</th><th>profiles</th></tr></thead> 197 <tbody> 198 <xsl:for-each-group select="$cmd-terms//Term" group-by="lower-case(@name)"> 199 <!-- <xsl:sort select="lower-case(@name)" /> --> 200 <xsl:sort select="count(distinct-values(current-group()/@datcat))" order="descending" data-type="number"></xsl:sort> 201 <tr> 202 <!-- <td><xsl:value-of select="@id"/></td>--> 203 <td><xsl:value-of select="@name"/></td> 204 <td><xsl:value-of select="count(distinct-values(current-group()/@datcat))"/></td> 205 <td><xsl:value-of select="count(distinct-values(current-group()/@id))"/></td> 206 </tr> 207 </xsl:for-each-group> 208 </tbody> 209 </table> 210 </xsl:template> 211 132 212 <!-- 133 213 <xsl:template name="list-terms">
Note: See TracChangeset
for help on using the changeset viewer.