Definition was already defined in the DTD.
name CDATA #REQUIRED
id ID #REQUIRED>
+<!ELEMENT Sequent ((Decl|Def)*,Goal)>
+<!ATTLIST Sequent
+ id ID #REQUIRED>
+
<!-- Elements used in CIC objects, which are not terms: -->
<!ELEMENT InductiveType (arity,Constructor*)>
<!ATTLIST Constructor
name CDATA #REQUIRED>
+<!ELEMENT Decl %term;>
+<!ATTLIST Decl
+ name CDATA #REQUIRED>
+
+<!ELEMENT Def %term;>
+<!ATTLIST Def
+ name CDATA #REQUIRED>
+
+<!ELEMENT Goal %term;>
+
<!-- CIC terms: -->
<!ELEMENT LAMBDA (source,target)>
name CDATA #REQUIRED
xmlns:m CDATA #REQUIRED>
+<!ELEMENT Sequent ((Decl|Def)*,Goal)>
+<!ATTLIST Sequent
+ id ID #REQUIRED>
+
<!-- Elements used in CIC objects, which are not terms: -->
<!ELEMENT InductiveType (arity,Constructor*)>
<!ELEMENT Params (#PCDATA)*>
+<!ELEMENT Decl %term;>
+<!ATTLIST Decl
+ name CDATA #REQUIRED>
+
+<!ELEMENT Def %term;>
+<!ATTLIST Def
+ name CDATA #REQUIRED>
+
+<!ELEMENT Goal %term;>
+
<!-- Sintactic sugar for CIC objects: -->
<!ELEMENT type %term;>
<xsl:template match="Sequent">
<xsl:variable name="rowlines">
- <xsl:for-each select="Declaration|Definition">
+ <xsl:for-each select="Decl|Def">
<xsl:if test="position() != last()">
<xsl:text>none </xsl:text>
</xsl:if>
</xsl:variable>
<m:math>
<m:mtable align="baseline 1" equalrows="false" columnalign="left" helm:xref="{@helm:xref}" rowlines="{$rowlines}">
- <xsl:for-each select="Declaration|Definition">
+ <xsl:for-each select="Decl|Def">
<m:mtr>
<m:mtd>
<m:mrow>
<m:mi><xsl:value-of select="@name"/></m:mi>
<xsl:choose>
- <xsl:when test="name(.) = 'Declaration'">
+ <xsl:when test="name(.) = 'Decl'">
<m:mo>:</m:mo>
</xsl:when>
<xsl:otherwise>
</m:mtd>
</m:mtr>
</xsl:for-each>
- <xsl:if test="not(Declaration|Definition)">
+ <xsl:if test="not(Decl|Def)">
<m:mtr>
<m:mtd>
<m:mrow>
<xsl:template match="Sequent"> <!-- For Sequents there are no annotations -->
<Sequent helm:xref="{@id}">
- <xsl:for-each select="Declaration|Definition">
+ <xsl:for-each select="Decl|Def">
<xsl:copy>
<xsl:attribute name="name">
<xsl:value-of select="@name"/>