]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/style/ricerca.xsl
Initial revision
[helm.git] / helm / style / ricerca.xsl
index b9502139d1f25c4258ea071598b0f7e9d000ab64..d665eac51e6aa909fbb693faa28d074f8992314c 100644 (file)
 <!-- 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: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/'"/>
 
 <xsl:output method="html"/>
 
+<!-- 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),&quot;/&quot;,string(@uri)))//MUTIND[string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind'])"/>
-<xsl:if test="$found">
-  <xsl:value-of select="concat(string($current_uri),&quot;/&quot;,string(@uri),&quot;.xml&quot;)"/><BR/>
-</xsl:if>
-
-<!--   <xsl:with-param name="current_uri" select="concat(string($absPath),string($current_uri),&quot;/&quot;,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),&quot;/&quot;,string(@uri)))" mode="search">
-  <xsl:with-param name="current_uri" select="concat(string($absPath),string($current_uri),&quot;/&quot;,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),&quot;/&quot;,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),&quot;/&quot;,string(@uri),&quot;.xml&quot;)"/><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),&quot;/&quot;,string(@uri)))" mode="search">
-  <xsl:with-param name="current_uri" select="concat(string($absPath),string($current_uri),&quot;/&quot;,string(@uri))"/>
- </xsl:apply-templates> -->
-<xsl:variable name="found" 
-  select="boolean(document(concat(string($absPath),string($current_uri),&quot;/&quot;,string(@uri)))//MUTIND[string(@uri)='cic:/Coq/Init/Logic/Equality/eq.ind'])"/>
-<xsl:if test="$found">
-  <xsl:value-of select="concat(string($current_uri),&quot;/&quot;,string(@uri),&quot;.xml&quot;)"/><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,&quot;/&quot;,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>