Add namespace and schema.

This commit is contained in:
Steve Checkoway
2006-10-01 11:46:41 +00:00
parent 49645f302c
commit 49ebe752f2
3 changed files with 116 additions and 24 deletions
+88
View File
@@ -0,0 +1,88 @@
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.stepmania.com"
xmlns="http://www.stepmania.com"
elementFormDefault="qualified">
<xs:element name="Lua">
<xs:complexType>
<xs:all>
<xs:element name="Singletons" type="Singletons" />
<xs:element name="Classes" type="Classes" />
<xs:element name="GlobalFunctions" type="GlobalFunctions" />
<xs:element name="Enums" type="Enums" />
<xs:element name="Constants" type="Constants" />
<xs:element name="Date" type="xs:date" />
<xs:element name="Version" type="xs:string" />
</xs:all>
</xs:complexType>
</xs:element>
<xs:complexType name="Singletons">
<xs:sequence>
<xs:element name="Singleton" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="class" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Classes">
<xs:sequence>
<xs:element name="Class" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Function" type="Function"
minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="base" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="GlobalFunctions">
<xs:sequence>
<xs:element name="Function" type="Function"
minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Function">
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
<xs:complexType name="Enums">
<xs:sequence>
<xs:element name="Enum" minOccurs="0" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="EnumValue" type="Constant"
minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="name" type="xs:string" use="required" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Constants">
<xs:sequence>
<xs:element name="Constant" type="Constant"
minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="Constant">
<xs:attribute name="name" type="xs:string" use="required" />
<xs:attribute name="value" type="xs:string" use="required" />
</xs:complexType>
</xs:schema>
+25 -24
View File
@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:sm="http://www.stepmania.com">
<xsl:template match="/">
<html>
@@ -56,7 +57,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:template>
<xsl:template match="Lua">
<xsl:template match="sm:Lua">
<div>
<h2>StepMania LUA Information</h2>
<table>
@@ -69,25 +70,25 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</tr>
</table>
</div>
<xsl:apply-templates select="Singletons" />
<xsl:apply-templates select="Classes" />
<xsl:apply-templates select="GlobalFunctions" />
<xsl:apply-templates select="Enums" />
<xsl:apply-templates select="Constants" />
<xsl:apply-templates select="sm:Singletons" />
<xsl:apply-templates select="sm:Classes" />
<xsl:apply-templates select="sm:GlobalFunctions" />
<xsl:apply-templates select="sm:Enums" />
<xsl:apply-templates select="sm:Constants" />
<hr />
<p class="footer">
Generated for <xsl:value-of select="Version" /> on
<xsl:value-of select="Date" />.
Generated for <xsl:value-of select="sm:Version" /> on
<xsl:value-of select="sm:Date" />.
</p>
</xsl:template>
<xsl:template match="Singletons">
<xsl:template match="sm:Singletons">
<div>
<a name="Singletons" />
<h3>Singletons</h3>
<ul>
<xsl:for-each select="Singleton">
<xsl:for-each select="sm:Singleton">
<xsl:sort select="@name" />
<li>
<a>
@@ -101,18 +102,18 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:template>
<xsl:template match="Classes">
<xsl:template match="sm:Classes">
<div>
<a name="Classes" />
<h3>Classes</h3>
<xsl:apply-templates select="Class">
<xsl:apply-templates select="sm:Class">
<xsl:sort select="@name" />
</xsl:apply-templates>
</div>
</xsl:template>
<xsl:template match="Class">
<xsl:template match="sm:Class">
<div>
<a>
<xsl:attribute name="name"><xsl:value-of select="@name" /></xsl:attribute>
@@ -133,7 +134,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:if>
<ul style="display: none">
<xsl:attribute name="id">list_<xsl:value-of select="@name" /></xsl:attribute>
<xsl:apply-templates select="Function">
<xsl:apply-templates select="sm:Function">
<xsl:sort select="@name" />
</xsl:apply-templates>
</ul>
@@ -141,34 +142,34 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:template>
<xsl:template match="GlobalFunctions">
<xsl:template match="sm:GlobalFunctions">
<div>
<a name="GlobalFunctions" />
<h3>Global Functions</h3>
<ul>
<xsl:apply-templates select="Function">
<xsl:apply-templates select="sm:Function">
<xsl:sort select="@name" />
</xsl:apply-templates>
</ul>
</div>
</xsl:template>
<xsl:template match="Function">
<xsl:template match="sm:Function">
<li><xsl:value-of select="@name" /></li>
</xsl:template>
<xsl:template match="Enums">
<xsl:template match="sm:Enums">
<div>
<a name="Enums" />
<h3>Enums</h3>
<xsl:apply-templates select="Enum">
<xsl:apply-templates select="sm:Enum">
<xsl:sort select="@name" />
</xsl:apply-templates>
</div>
</xsl:template>
<xsl:template match="Enum">
<xsl:template match="sm:Enum">
<div>
<a class="trigger">
<xsl:attribute name="onClick">Toggle('<xsl:value-of select="@name" />')</xsl:attribute>
@@ -182,7 +183,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<th>Enum</th>
<th>Value</th>
</tr>
<xsl:for-each select="EnumValue">
<xsl:for-each select="sm:EnumValue">
<xsl:sort data-type="number" select="@value" />
<tr>
<td><xsl:value-of select="@name" /></td>
@@ -195,7 +196,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
</xsl:template>
<xsl:template match="Constants">
<xsl:template match="sm:Constants">
<div>
<a name="Constants" />
<h3>Constants</h3>
@@ -204,7 +205,7 @@ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<th>Constant</th>
<th>Value</th>
</tr>
<xsl:for-each select="Constant">
<xsl:for-each select="sm:Constant">
<xsl:sort select="@name" />
<tr>
<td><xsl:value-of select="@name" /></td>
+3
View File
@@ -47,6 +47,9 @@ void ExportStrings::Nsis()
void ExportStrings::LuaInformation()
{
XNode *pNode = LUA->GetLuaInformation();
pNode->AppendAttr( "xmlns", "http://www.stepmania.com" );
pNode->AppendAttr( "xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance" );
pNode->AppendAttr( "xsi:schemaLocation", "http://www.stepmania.com Lua.xsd" );
XNode *pVersionNode = pNode->AppendChild( "Version" );
pVersionNode->m_sValue = PRODUCT_ID_VER;