<!-- For details, see the HELM World-Wide-Web page, -->
<!-- http://cs.unibo.it/helm/. -->
-<xsl:stylesheet version="0.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-
-<xsl:output method="html"/>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:th="http://www.cs.unibo.it/helm/namespaces/helm-theory">
+<xsl:param name="getterURL" select="'http://localhost:8081/'"/>
-<!--******************************************************************-->
-<!-- Variable containing the absolute path of the CIC file -->
-<!--******************************************************************-->
+<xsl:output method="html"/>
-<xsl:variable name="absPath">http://localhost:8081/getciconly?uri=</xsl:variable>
+<!-- CSC: absPath is the old way to retrieve a file. The new one is using -->
+<!-- URLofURI4getter, defined in getter.xsl -->
+<xsl:variable name="absPath"><xsl:value-of select="$getterURL"/>getxml?uri=</xsl:variable>
<xsl:template match="/">
<html>
<head></head>
<body>
- <xsl:apply-templates select="Theory"/>
+ <xsl:apply-templates/>
</body>
</html>
</xsl:template>
-<!-- CIC TERMS -->
-
-<xsl:template match="MUTIND[string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind']" mode="search" >
-<!-- <xsl:param name="current_uri" select=""/> -->
-<!-- <h1><xsl:value-of select="string(@uri)"/></h1> -->
-<!-- <xsl:if test="string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind'"> -->
- <xsl:value-of select="$current_uri"/><BR/>
-<!-- </xsl:if> -->
-</xsl:template>
-
<!-- AGGIUNGERE cic: alle uri nei file Theory -->
-<xsl:template match="Theory">
-<!-- <xsl:param name="current_uri" select=""/> -->
- <xsl:apply-templates>
- <xsl:with-param name="current_uri" select="string(@uri)"/>
- </xsl:apply-templates>
-</xsl:template>
-
-<xsl:template match="VARIABLE">
-<!-- <xsl:param name="current_uri" select=""/> -->
-<xsl:variable name="found"
- select="boolean(document(concat(string($absPath),string($current_uri),"/",string(@uri)))//MUTIND[string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind'])"/>
-<xsl:if test="$found">
- <xsl:value-of select="concat(string($current_uri),"/",string(@uri),".xml")"/><BR/>
-</xsl:if>
-
-<!-- <xsl:with-param name="current_uri" select="concat(string($absPath),string($current_uri),"/",string(@uri))"/>
- </xsl:apply-templates> -->
-</xsl:template>
-<xsl:template match="DEFINITION">
-<!-- <xsl:param name="current_uri" select=""/> -->
-<!-- <xsl:apply-templates select="document(concat(string($absPath),string($current_uri),"/",string(@uri)))" mode="search">
- <xsl:with-param name="current_uri" select="concat(string($absPath),string($current_uri),"/",string(@uri))"/>
- </xsl:apply-templates> -->
+<xsl:template match="th:VARIABLE|th:DEFINITION|th:THEOREM|th:AXIOM">
+<xsl:param name="current_uri" select="''"/>
+<xsl:variable name="abs_uri">
+ <xsl:call-template name="build_uri">
+ <xsl:with-param name="first_uri" select="$current_uri"/>
+ <xsl:with-param name="second_uri" select="@uri"/>
+ </xsl:call-template>
+</xsl:variable>
<xsl:variable name="found"
- select="boolean(document(concat(string($absPath),string($current_uri),"/",string(@uri)))//MUTIND[string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind'])"/>
+ select="boolean(document(concat($absPath,$abs_uri))//MUTIND[string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind'])"/>
<xsl:if test="$found">
- <xsl:value-of select="concat(string($current_uri),"/",string(@uri),".xml")"/><BR/>
+ <xsl:value-of select="$abs_uri"/><BR/>
</xsl:if>
</xsl:template>
-<xsl:template match="THEOREM">
-<!-- <xsl:param name="current_uri" select=""/> -->
-<!-- <xsl:apply-templates select="document(concat(string($absPath),string($current_uri),"/",string(@uri)))" mode="search">
- <xsl:with-param name="current_uri" select="concat(string($absPath),string($current_uri),"/",string(@uri))"/>
- </xsl:apply-templates> -->
-<xsl:variable name="found"
- select="boolean(document(concat(string($absPath),string($current_uri),"/",string(@uri)))//MUTIND[string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind'])"/>
-<xsl:if test="$found">
- <xsl:value-of select="concat(string($current_uri),"/",string(@uri),".xml")"/><BR/>
-</xsl:if>
+<xsl:template match="th:SECTION">
+<xsl:param name="current_uri" select="''"/>
+<h1><xsl:value-of select="$current_uri"/></h1>
+ <xsl:apply-templates>
+ <xsl:with-param name="current_uri">
+ <xsl:call-template name="build_uri">
+ <xsl:with-param name="first_uri" select="$current_uri"/>
+ <xsl:with-param name="second_uri" select="@uri"/>
+ </xsl:call-template>
+ </xsl:with-param>
+ </xsl:apply-templates>
</xsl:template>
-
-<xsl:template match="SECTION">
-<!-- <xsl:param name="current_uri" select=""/> -->
+<xsl:template match="*">
+<xsl:param name="current_uri" select="''"/>
<xsl:apply-templates>
- <xsl:with-param name="current_uri" select="concat($current_uri,"/",string(@uri))"/>
+ <xsl:with-param name="current_uri" select="$current_uri"/>
</xsl:apply-templates>
+</xsl:template>
+
+<xsl:template match="text()">
+</xsl:template>
+<xsl:template name="build_uri">
+ <xsl:param name="first_uri" select="''"/>
+ <xsl:param name="second_uri" select="''"/>
+ <xsl:choose>
+ <xsl:when test="starts-with($second_uri,'cic:')">
+ <xsl:value-of select="$second_uri"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of select="concat($first_uri,'/',$second_uri)"/>
+ </xsl:otherwise>
+ </xsl:choose>
</xsl:template>
</xsl:stylesheet>