]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/on-line/xslt/metadataControl.xsl
metadataControl and demultiplexMutual merged together into metadataControl
[helm.git] / helm / on-line / xslt / metadataControl.xsl
index 82646bce7fa408290319e3a2bf2cb0ce6c15a970..4842a0f8babfafeeabcc225b63e2b24735efe0d1 100644 (file)
 
 <xsl:include href="metadataLib.xsl"/>
 
-<xsl:template match="unresolved|url">
- <xsl:apply-templates mode="makelink" select=".">
-  <xsl:with-param name="name" select="$CICURI"/>
-  <xsl:with-param name="CICURI" select="$CICURI"/>
-  <xsl:with-param name="RDFURI" select="$CICURI"/>
- </xsl:apply-templates>
+<xsl:variable name="url" select="concat($getterURL,'resolve?uri=helm:rdf:www.cs.unibo.it/helm/rdf/forward//')"/>
+
+<xsl:template match="InductiveDefinition">
+ <xsl:for-each select="InductiveType">
+  <xsl:variable name="CICURIInductiveType" select="concat($CICURI,'#xpointer(1/',position())"/>
+  <xsl:variable name="RDFURIInductiveType" select="concat($CICURI,',',position())"/>
+  <h3>Metadata related to <xsl:value-of select="@name"/>:</h3>
+  <xsl:apply-templates select="document(concat($url,$RDFURIInductiveType))" mode="makelink">
+   <xsl:with-param name="name" select="@name"/>
+   <xsl:with-param name="CICURI" select="concat($CICURIInductiveType,')')"/>
+   <xsl:with-param name="RDFURI" select="$RDFURIInductiveType"/>
+  </xsl:apply-templates>
+  <xsl:for-each select="Constructor">
+   <xsl:variable name="CICURIConstructor" select="concat($CICURIInductiveType,'/',position(),')')"/>
+   <xsl:variable name="RDFURIConstructor" select="concat($RDFURIInductiveType,',',position())"/>
+   <h3>Metadata related to <xsl:value-of select="@name"/>:</h3>
+   <xsl:apply-templates select="document(concat($url,$RDFURIConstructor))" mode="makelink">
+    <xsl:with-param name="name" select="@name"/>
+    <xsl:with-param name="CICURI" select="$CICURIConstructor"/>
+    <xsl:with-param name="RDFURI" select="$RDFURIConstructor"/>
+   </xsl:apply-templates>
+  </xsl:for-each>
+ </xsl:for-each>
+</xsl:template>
+
+<!-- Not an Inductive Type -->
+<xsl:template match="*">
+  <xsl:apply-templates select="document(concat($url,$CICURI))" mode="makelink">
+   <xsl:with-param name="name" select="$CICURI"/>
+   <xsl:with-param name="CICURI" select="$CICURI"/>
+   <xsl:with-param name="RDFURI" select="$CICURI"/>
+  </xsl:apply-templates>
 </xsl:template>
 
 </xsl:stylesheet>