Jag håller på med en sida som ska valideras enligt XHTML 1.1. Jag ska även hämta data från en XML-fil till denna sida. Detta gör ju att jag använder XSLT, men hur skriver jag Doctypen i XSLT-filen? jag har försökt med allt jag kan komma på. Just nu har jag det så här. Det finns ett särskilt element för det: http://www.w3.org/TR/xslt#output Det funkade fint med detta. Får öppna denna tråd igen. Hur gör jag när jag validerar denna fil? det måste väl vara XML-filen jag validerar? Jag får massor med fel när jag validerar. Jag har sökt på Google men inte hittat något. Validerar inte den bara (X)HTML? Du har ju en allmän XML-fil och en XSL-fil, ingen "färdig" XHTML-fil. Iofs skall nog XSL-filen innehålla åtminstone halvt korrekt XHTML... Per, man kan ju ställa in validatorn på bland annat XHTML 1.1. Men på nåt sätt måste man ju kunna validera det. annars vet man ju inte om det är korrekt eller inte. När jag validerar XML-filen klagar den p å alla taggar i XML-filen. Skickar du över filen eller låter du validatorn själv hämta filen (du anger en URL)? Din webbserver känner inte igen XSL-ändelsen och anger därför inte korrekt MIME-typ. Skicka över filen i stället. Jag hittade en på mitt Linuxsystem för något år sedan. Men jag antar att du kör Windows...? japp, jag kör Windows jag söker vidare och lägger in det här om jag hittar något om fler vill ha det.XHTML 1.1 och XSLT?
<code>
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
</code>Sv: XHTML 1.1 och XSLT?
Sv:XHTML 1.1 och XSLT?
<code>
<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml"
doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml11.dtd"
doctype-public="-//W3C//DTD XHTML 1.1//EN" indent="yes"/>
<xsl:template match="/">
</code>Sv: XHTML 1.1 och XSLT?
Eller går det kanske inte att använda den validatorn jag har använt? Den jag har använt är http://validator.w3.org/Sv:XHTML 1.1 och XSLT?
Sv: XHTML 1.1 och XSLT?
Sv: XHTML 1.1 och XSLT?
När jag kör XSL-filen får jag följande fel:
<b>
Sorry, I am unable to validate this document because its content type is application/octet-stream, which is not currently supported by this service.
The Content-Type field is sent by your web server (or web browser if you use the file upload interface) and depends on its configuration. Commonly, web servers will have a mapping of filename extensions (such as ".html") to MIME Content-Type values (such as text/html).
</b>Sv:XHTML 1.1 och XSLT?
Sv:XHTML 1.1 och XSLT?
Å andra sidan är det kanske ändå meningslöst att fortsätta, för i dagsläget kan en DTD inte ange att märken från en annan namnrymd är tillåtna mixat med de andra:
<b>This DTD Fragment is not normative because XML 1.0 DTDs do not support XML Namespaces and thus cannot correctly describe the allowed structure of an XSLT stylesheet.</b>
(http://www.w3.org/TR/xslt#dtd)
Dessutom är det ju så att XHTML-märkena inte nödvändigtvis kommer i "rätt" ordning i XSL-filen.
Jag ser ingen annan lösning än att du använder ett program som verkligen skapar en XHTML-fil av din XML-fil och XSL-fil. Som det är nu skapas XHTML-strukturen bara i webbklientens minne.Sv:XHTML 1.1 och XSLT?
Sv: XHTML 1.1 och XSLT?