<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:ymaps="http://api.maps.yahoo.com/Maps/V2/AnnotatedMaps.xsd">

<channel>
	<title>Boris&#039; blog &#187; XML</title>
	<atom:link href="http://blog.pruessmann.org/tag/xml/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.pruessmann.org</link>
	<description>Tales of Mystery and Imagination..</description>
	<lastBuildDate>Mon, 26 Sep 2011 04:56:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Importierte Google Base Feeds überprüfen</title>
		<link>http://blog.pruessmann.org/2009/08/18/importierte-google-base-feeds-ueberpruefen/</link>
		<comments>http://blog.pruessmann.org/2009/08/18/importierte-google-base-feeds-ueberpruefen/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 18:32:13 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[deutsch]]></category>
		<category><![CDATA[Google Base]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://blog.pruessmann.org/?p=49</guid>
		<description><![CDATA[Bis man es geschafft hat eine Feed Datei zu erzeugen, die Google Base ohne wenn und aber akzeptiert, vergeht meist eine ganz erhebliche Zeit. Aber nur weil Google Base jetzt endlich die Artikel eingelesen hat, heißt das noch lange nicht, dass die Daten auch wirklich optimal aufbereitet sind. Das gilt insbesondere im deutschsprachigen Raum, wo [...]]]></description>
			<content:encoded><![CDATA[<div class="al2fb_like_button"><div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#appId=181756091877992&amp;xfbml=1" type="text/javascript"></script>
<fb:like href="http://blog.pruessmann.org/2009/08/18/importierte-google-base-feeds-ueberpruefen/" layout="button_count" show_faces="true" width="450" action="like" font="arial" colorscheme="light" ref="AL2FB"></fb:like></div><p>Bis man es geschafft hat eine Feed Datei zu erzeugen, die Google Base ohne wenn und aber akzeptiert, vergeht meist eine ganz erhebliche Zeit. Aber nur weil Google Base jetzt endlich die Artikel eingelesen hat, heißt das noch lange nicht, dass die Daten auch wirklich optimal aufbereitet sind. Das gilt insbesondere im deutschsprachigen Raum, wo Google sich ja überlegt hat, die <a href="http://googlebase-de.blogspot.com/2008/03/daten-feeds-mit-englischen-attributen_12.html">relevanten Datenstrukturen ins Deutsche zu übersetzen</a>.</p>
<p><span id="more-49"></span>
<p>Glücklicherweise liefert Google Base dann doch noch ein passendes Werkzeug, auch wenn es eher versteckt ist und bei einem automatischen Import selten zum EInsatz kommt. Verborgen ist dieses &#8216;Juwel&#8217; sowohl auf der Seite &#8220;Aktive Artikel&#8221; als auch auf der Seite &#8220;Inaktive Artikel&#8221;, versteckt hinter dem Punkt &#8220;Bearbeiten&#8230;&#8221;. Wechselt man hier auf die &#8220;Artikel bearbeiten&#8221; Seite, so zeigt einem Google Base den jeweiligen Artikel an.</p>
<p>Dabei heißt es jetzt genau hinzuschauen: Felder die von Google Base bei Import als &#8220;bekannte Attribute&#8221; erkannt wurden, werden unveränderlich angezeigt. Felder bei denen man den Namen in der Maske verändern kann wurden von Google Base als &#8220;Custom Attribute&#8221;, also als vom Benutzer beliebig zu definierendes Attribut erkannt. Es ist wohl selbstredend, dass solche Felder in der Relevanz hinter den &#8220;bekannten Attributen&#8221; zurückstehen.</p>
<p>Als Beispiel soll hier das früher verwendete Attribut &#8216;description&#8217; dienen, welches ja heute &#8216;g:beschreibung&#8217; heißt. Sollte die Maske ein Eingabefeld mit dem Text &#8220;description&#8221; enthalten, so ist diese Attribut z.B. nicht optimal exportiert, denn die Beschreibung sollte eigentlich unter &#8220;Beschreibung&#8221; erscheinen.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pruessmann.org/2009/08/18/importierte-google-base-feeds-ueberpruefen/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Google Base Seltsamkeiten&#8230;</title>
		<link>http://blog.pruessmann.org/2009/08/18/google-base-seltsamkeiten/</link>
		<comments>http://blog.pruessmann.org/2009/08/18/google-base-seltsamkeiten/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 11:07:11 +0000</pubDate>
		<dc:creator>Boris</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[deutsch]]></category>
		<category><![CDATA[Google Base]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://blog.pruessmann.org/2009/08/18/google-base-seltsamkeiten/</guid>
		<description><![CDATA[Die meisten Leute machen sich sicherlich keine Gedanken darüber, woher die Daten kommen, wenn ihnen bei einer Google-Suche auch Produkte mit dazugehörigen Preisen angeboten werden. Die Antwort darauf heißt Google Base. Nun scheinen die Entwickler von Google Base jedoch ein etwas seltsames Völkchen zu sein, wie wäre sonst folgendes zu erklären? Google Base ist ein [...]]]></description>
			<content:encoded><![CDATA[<div class="al2fb_like_button"><div id="fb-root"></div><script src="http://connect.facebook.net/en_US/all.js#appId=181756091877992&amp;xfbml=1" type="text/javascript"></script>
<fb:like href="http://blog.pruessmann.org/2009/08/18/google-base-seltsamkeiten/" layout="button_count" show_faces="true" width="450" action="like" font="arial" colorscheme="light" ref="AL2FB"></fb:like></div><p>Die meisten Leute machen sich sicherlich keine Gedanken darüber, woher die Daten kommen, wenn ihnen bei einer Google-Suche auch Produkte mit dazugehörigen Preisen angeboten werden. Die Antwort darauf heißt Google Base. Nun scheinen die Entwickler von Google Base jedoch ein etwas seltsames Völkchen zu sein, wie wäre sonst folgendes zu erklären?</p>
<p><span id="more-34"></span>Google Base ist ein Produkt das weltweit Betreibern von eCommerce Systemen zur Verfügung steht. Als Schnittstelle dient ein Datei-basierter Datenabgleich der entweder CSV Dateien oder eben auch RSS-basierte XML Dateien erwartet. Nun haben sich die Jungs von Google gerade bei letzterem etwas sehr Interessants ausgedacht: sie haben die XML Tags lokalisiert, d.h. XML Elemente die im englischen Original noch &lt;g:price&gt; heissen müssen für einen deutschen Shop auf &lt;g:preis&gt; geändert werden. Das erschwert nicht nur die Entwickling von Modulen die überall eingesetzt werden können, es scheint auch die Google Entwickler etwas zu verwirren. Schließlich definiert das RSS Format bereits einige Elemente, diese jedoch auf Englisch. Ein entsprechnder Block für einen Artikel sah also bis vor kurzem so aus:</p>
<pre>&lt;item&gt;
    &lt;id&gt;123&lt;/id&gt;
    &lt;title&gt;Mein Arikel&lt;/title&gt;
    &lt;g:preis&gt;1.95&lt;/g:preis&gt;
&lt;/item&gt;</pre>
<p>Seit rund zwei Wochen funktioniert das so jedoch nicht mehr, der Import solcher Dateien schlug einfach fehl und Google hüllte sich in Schweigen. Zum Glück wurde aber mittlerweile herausgefunden, wie man das Problem lösen kann. Ich denke der Mitstreiter aus dem <a href="http://groups.google.de/group/DE-Daten/browse_thread/thread/ab755ecd42c266eb/9d9a3d69e334a61e#9d9a3d69e334a61e">Google Base Forum</a> hat sicherlich einige Zeit gebraucht um die folgende Lösung des Problems zu finden:</p>
<pre>&lt;item&gt;
    &lt;id&gt;123&lt;/id&gt;
    &lt;title&gt;Mein Arikel&lt;/title&gt;
    &lt;c:titel&gt;Mein Arikel&lt;/c:titel&gt;
    &lt;g:preis&gt;1.95&lt;/g:preis&gt;
&lt;/item&gt;</pre>
<p>Der Trick ist das Hinzufügen von &lt;c:titel&gt;, also der deutschsprachigen Variante des Titels. Bei dem &#8220;c&#8221; Namespace handelt es sich eigentlich um den Namespace für &#8220;Custom Attribute&#8221;, also solche Felder die vom Betreiber der eCommerce Seite definiert werden können. Mir scheint als wäre das Einlesen der Daten auf Google Base somit a) nicht Namespace fähig und b) erschreckend wenig robust und ungetestet.</p>
<p><strong>Moral von der Geschichte:</strong> Lokalisierung von Datenformat ist mindestens genauso unsinnig wie der Übersetzung von Programmiersprachen.</p>
<p><em>(Update: Ein paar weitere Tipps gibt es noch in meinem Post </em><a title="Importierte Google Base Feeds überprüfen" href="http://blog.pruessmann.org/2009/08/18/importierte-google-base-feeds-ueberpruefen/" target="_self"><em>&#8220;Importierte Google Base Feeds überprüfen&#8221;</em></a><em>)</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pruessmann.org/2009/08/18/google-base-seltsamkeiten/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

