<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>qrios &#187; xslt</title>
	<atom:link href="http://qrios.de/tag/xslt/feed/" rel="self" type="application/rss+xml" />
	<link>http://qrios.de</link>
	<description>IT ist kurios!</description>
	<lastBuildDate>Sun, 30 Oct 2022 12:57:00 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.2</generator>
		<item>
		<title>webanalytics crap &#8211; oder: warum xml einen schlechten ruf hat</title>
		<link>http://qrios.de/2010/04/webanalytics-crap-xml/</link>
		<comments>http://qrios.de/2010/04/webanalytics-crap-xml/#comments</comments>
		<pubDate>Sun, 11 Apr 2010 10:03:31 +0000</pubDate>
		<dc:creator>qrios</dc:creator>
				<category><![CDATA[analytics]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[adobe]]></category>
		<category><![CDATA[omniture]]></category>
		<category><![CDATA[webanalytics]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[xslt]]></category>

		<guid isPermaLink="false">http://qrios.wordpress.com/?p=506</guid>
		<description><![CDATA[Zu meinen Aufgaben im neuen Job gehört die Analyse verschiedener WebAnalytics-Tools. Am Ende dieser Analyse soll eine Liste stehen, die es uns und unseren Kunden leicht macht, den richtigen Anbieter auszuwählen. Neben der einfachen Benutzung der Tools und der Qualität der erhobenen Daten untersuche ich dabei die Möglichkeiten der APIs. Wie kommt man mit anderen [...]]]></description>
				<content:encoded><![CDATA[<p>Zu meinen Aufgaben im neuen Job gehört die Analyse verschiedener WebAnalytics-Tools. Am Ende dieser Analyse soll eine Liste stehen, die es uns und unseren Kunden leicht macht, den richtigen Anbieter auszuwählen. Neben der einfachen Benutzung der Tools und der Qualität der erhobenen Daten untersuche ich dabei die Möglichkeiten der APIs. Wie kommt man mit anderen Systemen an die Daten, wie schnell reagiert die API, welche Daten kann man abfragen? Aber vor allem: &#8220;In welchem Format kann man die Daten erhalten?&#8221;</p>
<p>Alle großen Anbieter (Omniture, At Internet, Nedstat) bieten dabei XML als Ausgabeformat an. Toll denkt man sich da. Als jemand der seit Jahren mit XML arbeitet und schon etliche Mashup-Projekte gemacht hat träumt man dann schon von tollen neuen Charts und großen Monitoren im Entrée unserer Kunden.</p>
<p><span id="more-506"></span></p>
<p>Und dann bekommt man von den Anbietern XML-Beispieldateien. Und plötzlich fallen all die Träume wie ein Kartenhaus zusammen. Von einem Schema oder einer Definition ist weit und breit nichts zu sehen. Weder DTD, noch XSD oder Relax NG ist bei den WebAnalytics-Anbietern in Gebrauch. Mir ist schleierhaft, wie man eine API entwickeln kann, die XML generieren soll, ohne eine Beschreibung der Struktur und der Typen zu verwenden.</p>
<p>Entsprechend katastrophal ist dann auch die Struktur der XML-Dateien. Bei allen Anbietern sieht man mit einem Blick, dass es sich eigentlich nur um gewrappte CSV-Dateien handelt. Typisch ist sowas hier:</p>
<blockquote><p>&lt;Col&gt;<br />
&lt;Row&gt;Veränderung in %&lt;/Row&gt;<br />
&lt;Row&gt;-5,4&lt;/Row&gt;<br />
&lt;Row&gt;0,45555555&lt;/Row&gt;<br />
&lt;Row&gt;10,3&lt;/Row&gt;<br />
&lt;/Col&gt;</p></blockquote>
<p>Und das sieht zumindest – aus Sicht der Formatierung – noch gut aus. Zu finden ist jedoch auch sowas hier:</p>
<blockquote><p>&lt;Col<br />
/&gt;&lt;Row<br />
/&gt;</p></blockquote>
<p>Womit eigentlich sofort klar wird, dass die Programme mit denen diese Ausgaben generiert werden, noch nie einen XML-Parser gesehen haben, denn einen solchen zu solcherlei Formatierung zu bringen, bedarf es schon einiger Handstände.</p>
<p>Wenn aber die Programme mit denen diese Ausgaben generiert werden, noch nie einen Parser gesehen haben wird früher oder später folgendes passieren: Die Daten, die ausgegeben werden sollen enthalten irgendwelche Zeichen oder eine Struktur, die besonders behandelt werden müsste, damit das ausgegebene XML überhaupt noch wohlgeformt ist.</p>
<p>Und so erhält man dann tatsächlich – sogar als Beispieldatei zugesandt – eine XML-Datei über die jeder Parser stolpern wird:</p>
<blockquote><p>&lt;?xml version=&#8221;1.0&#8243; encoding=&#8221;utf-16&#8243;?&gt;<br />
&lt;Export&gt;<br />
&#8230;<br />
&lt;Metric265&gt;Temps passé par page (chargement)&lt;/Metric265&gt;<br />
&#8230;</p></blockquote>
<p>Etliche Versuche mit verschiedenen Programmen, die alle meinten, dass es sich um chinesische Zeichen handeln würde, scheitern. Xmllint meldet dann auch, dass die Daten – entgegen der XML-Deklaration –  nicht in UTF-16 vorliegen sondern in UTF-8 geschrieben sind. Jedes vernünftige System zur Verarbeitung von XML (also z.B. <a href="http://www.saxonica.com/">Saxon</a>) wird sofort den Dienst einstellen.</p>
<p>Wäre die Ausgabe mit einem echten XSLT-Prozessor generiert worden, könnte sowas nicht passieren. Dieser hätte die Daten entweder tatsächlich als UTF-16 codiert oder den Dienst verweigert und man hätte eine vernünftige Fehlermeldung ausgeben können.</p>
<p>Aber was soll man auch von Firmen erwarten, die mehr Leute im Verkauf haben als im Support plus Entwicklung?</p>
]]></content:encoded>
			<wfw:commentRss>http://qrios.de/2010/04/webanalytics-crap-xml/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>formate! formate! formate!</title>
		<link>http://qrios.de/2009/09/formate-formate-formate/</link>
		<comments>http://qrios.de/2009/09/formate-formate-formate/#comments</comments>
		<pubDate>Wed, 16 Sep 2009 01:59:54 +0000</pubDate>
		<dc:creator>qrios</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[xslt]]></category>

		<guid isPermaLink="false">http://qrios.wordpress.com/?p=7</guid>
		<description><![CDATA[Kann mir eigentlich irgendwer erklären, wozu es Formate gibt? Sowas wie ein Datumsformat zum Beispiel? Das nennt sich dateTime.  Das wurde schon 1997 diskutiert und hat sich seither extrem bewährt. Es wird in XSL verwendet und in Java und in .Net. Aber WordPress produziert natürlich lieber ein total schwachsinniges Format beim Export: &#60;wp:post_date&#62;2009-09-16 01:15:29&#60;/wp:post_date&#62; &#60;wp:post_date_gmt&#62;2009-09-16 [...]]]></description>
				<content:encoded><![CDATA[<p>Kann mir eigentlich irgendwer erklären, wozu es Formate gibt? Sowas wie ein Datumsformat zum Beispiel? Das nennt sich <a href="http://www.w3.org/TR/NOTE-datetime">dateTime</a>.  Das wurde schon 1997 diskutiert und hat sich seither extrem bewährt. Es wird in XSL verwendet und in Java und in .Net. Aber WordPress produziert natürlich lieber ein total schwachsinniges Format beim Export:</p>
<p style="font:12px Helvetica;color:#2200af;margin:0;">&lt;wp:post_date&gt;<span style="color:#000000;">2009-09-16 01:15:29</span>&lt;/wp:post_date&gt;</p>
<p style="font:12px Helvetica;color:#2200af;margin:0;">&lt;wp:post_date_gmt&gt;<span style="color:#000000;">2009-09-16 01:15:29</span>&lt;/wp:post_date_gmt&gt;</p>
<p>Kein vernünftiges Programm kann das lesen, man muss noch selber zwei Werte vergleichen um die Timezone rauszubekommen und eine XSD gibt es dafür bestimmt auch nicht.</p>
]]></content:encoded>
			<wfw:commentRss>http://qrios.de/2009/09/formate-formate-formate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>xml-plugin für safari [aus dem google-cache]</title>
		<link>http://qrios.de/2009/03/xml-plugin-fur-safari-aus-dem-google-cache/</link>
		<comments>http://qrios.de/2009/03/xml-plugin-fur-safari-aus-dem-google-cache/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 13:22:54 +0000</pubDate>
		<dc:creator>qrios</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[webkit]]></category>
		<category><![CDATA[xml]]></category>
		<category><![CDATA[xslt]]></category>

		<guid isPermaLink="false">http://qrios.wordpress.com/?p=38</guid>
		<description><![CDATA[Marc Liyanage betreibt die ausgezeichnete Seite entropy.ch und hat schon 2001 das kleine Programm TestXSLT veröffentlicht, zu einer Zeit als XSLT noch weitgehend unbekannt war. Das Programm wird seit 2005 nicht mehr weiterentwickelt ist aber auch heute nicht mehr so notwendig wie damals. Jetzt hat er ein Plug-In veröffentlicht, dass Safari beibringt, XML vernünftig &#8211; als strukturierten [...]]]></description>
				<content:encoded><![CDATA[<p>Marc Liyanage betreibt die ausgezeichnete Seite <a href="http://www.entropy.ch/home/" target="_new">entropy.ch</a> und hat schon 2001 das kleine Programm TestXSLT veröffentlicht, zu einer Zeit als XSLT noch weitgehend unbekannt war. Das Programm wird seit 2005 nicht mehr weiterentwickelt ist aber auch heute nicht mehr so notwendig wie damals.</p>
<p>Jetzt hat er ein <a href="http://www.entropy.ch/blog/Mac+OS+X/2009/02/09/Safari-Plugin-for-Viewing-XML-Data.html" target="_new">Plug-In veröffentlicht</a>, dass Safari beibringt, XML vernünftig &#8211; als strukturierten Baum &#8211; darzustellen. Und Marc wäre nicht Marc, wenn dieses Plug-In nicht auch noch konfigurierbar und sogar über prototype mittels JavaScript ansprechbar wäre.</p>
]]></content:encoded>
			<wfw:commentRss>http://qrios.de/2009/03/xml-plugin-fur-safari-aus-dem-google-cache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
