[x3d-public] Tremendous progress on X3DJSAIL-X3DJSONLD JSON loader test suite (All tests pass!)
John Carlson
yottzumm at gmail.com
Sat Sep 18 22:43:08 PDT 2021
The following patch to X3dToNodeJS.xslt will fix the issues of Html
attributes which are being integrated into X3D4. The upgrades of the
examples to X3DV4 also helped a great deal, I just wish upgrade plans or
solutions were more obvious and could be turned on and off in an ant
script. This was a very hard set of fixes, and I spend a lot of time at
the bottom of the pool resuscitating Don.
These were hard one, even though simple solutions.
Note: mapping containerField is a 3.x thing, has been renamed to
children in 4.0 in DIS. I will start debugging the X3dToNodeJS.xslt
patches on X3DJSONLD next
Please patch this file, or otherwise, give me permission to update.
Note: Use Node.JS 12 for now. This matches npm-java 0.12.
Note: I handle all style attributes as Css styles, will need to be
fixed below for actual X3D style attribute (if possible, don't add the Css).
Index: X3dToNodeJS.xslt
===================================================================
--- X3dToNodeJS.xslt (revision 32439)
+++ X3dToNodeJS.xslt (working copy)
@@ -299,7 +299,8 @@
}
}
</xsl:text><!-- class complete -->
-<xsl:text>new </xsl:text><xsl:value-of
select="$newClassName"/><xsl:text>().main();</xsl:text>
+<xsl:text>new </xsl:text><xsl:value-of
select="$newClassName"/><xsl:text>().main();
+process.exit(0);</xsl:text>
</xsl:template>
@@ -2243,9 +2244,22 @@
<xsl:if test="(local-name() = 'class')">
<xsl:text>Css</xsl:text><!-- method prefix -->
</xsl:if>
+ <xsl:if test="(local-name() = 'style')">
+ <xsl:text>Css</xsl:text><!-- method prefix -->
+ </xsl:if>
+ <xsl:if test="(local-name() = 'id')">
+ <xsl:text>Html</xsl:text><!-- method prefix -->
+ </xsl:if>
<!-- upper camel case -->
- <xsl:value-of
select="translate(substring(name(),1,1),'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
- <xsl:value-of select="substring(name(),2)"/>
+ <xsl:if test="(local-name() = 'id')">
+ <xsl:value-of
select="translate(substring(name(),1,2),'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
+ </xsl:if>
+
+ <xsl:if test="(local-name() != 'id')">
+ <xsl:value-of
select="translate(substring(name(),1,1),'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')"/>
+ <xsl:value-of
select="substring(name(),2)"/>
+ </xsl:if>
+
<xsl:text>(</xsl:text>
<xsl:variable name="nodeNumber"
select="count(../preceding::*) + 1"/>
More information about the x3d-public
mailing list