Hallo Sabrina,
Was muss ich von der Logik her im Templatebereich, bzw. zwischen:
<xsl:template match="/">
???
xsl:templateeinfügen,
Formal etwas in dieser Art:
<xsl:template match="/">
<X3D profile="..." version="...">
<head>...</head>
<Scene>
<xsl:apply-templates/>
</Scene>
</X3D>
</xsl:template>
<!-- weitere Templates für die konkreten Umformungen: -->
<xsl:template match="...">
<!-- ... -->
</xsl:template>
bzw. was habe ich evtl. komplett übersehen?
Dass SVG ein 2D-Format und X3D ein 3D-Format ist? Perspektivische Darstellungen sind natürlich auch in SVG durchaus möglich, z. B. dieses Balkenkonstrukt:
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" baseProfile="full">
<g fill="#36F">
<polygon points="10,245 10,30 50, 30 50,245" opacity="0.6"/>
<polygon points="50, 30 70,10 70,225 50,245" opacity="0.4"/>
<polygon points="10, 30 30,10 70, 10 50, 30" opacity="0.8"/>
</g>
</svg>
Du kannst ja mal die Umformung in ein 3D-Modell angehen ...
BTW: Die DOCTYPE-Deklaration der X3D-Ausgabe sollte noch um den Public-Identifier ergänzt werden, bei xsl:output also auch doctype-public="ISO//Web3D//DTD X3D 3.2//EN" angeben.
Grüße,
Thomas