On Fri, Oct 29, 2010 at 08:36:37AM +0200, André Joost wrote: > Hallo, > auf folgendes Problem bin ich gerade gestoßen: > > Die line-relation gemäß oxomoa-Schema für die Aachener Buslinie 1 sieht > in der api so aus: > >> <osm version="0.6" generator="OpenStreetMap server"> >> <relation id="969861" visible="true" timestamp="2010-07-12T13:13:26Z" >> version="4" changeset="5198960" user="wonk" uid="79958"> >> <member type="relation" ref="969505" role=""/> >> <member type="relation" ref="86812" role=""/> >> <member type="relation" ref="1066454" role=""/> >> <member type="relation" ref="1066614" role=""/> >> <member type="relation" ref="1066633" role=""/> >> <tag k="line" v="bus"/> >> <tag k="name" v="Bus 1"/> >> <tag k="network" v="AVV"/> >> <tag k="operator" v="ASEAG"/> >> <tag k="ref" v="1"/> >> <tag k="type" v="line"/> >> </relation> >> </osm> > > Im Extrakt der Geofabrik sieht sie dagegen so aus: >> <relation id="969861" version="4" timestamp="1969-12-20T21:22:32Z" >> uid="79958" user="wonk" changeset="5198960"> >> <member type="relation" ref="969505" role=""/> >> <member type="relation" ref="86812" role=""/> >> <tag k="line" v="bus"/> >> <tag k="name" v="Bus 1"/> >> <tag k="network" v="AVV"/> >> <tag k="operator" v="ASEAG"/> >> <tag k="ref" v="1"/> >> <tag k="type" v="line"/> >> </relation> > > Irgendwie fehlen da drei Relationen. Sie sind zwar selber im Extrakt > drin, aber nicht in der Line-Relation. Die fehlenden kreuzen auch nicht > die Grenzen des Extrakts. > > Nun weiß ich ja, dass Relationen in Relationen nicht gern gesehen > werden, aber Oxomoa hats nun mal so gewollt. > > Wenn alle oder keine Relationen drin wären könnte ich dass ja verstehen, > aber warum nur zwei von fünf? > > Hat jemand ne Erklärung oder Lösung?
Das liegt daran, dass osmosis die Eingabedatei nur einmal durchparst beim Ausschneiden. Wenn es nun bei verschachtelten Relationen vorbeikommt, übernimmt es nur die Relationen, von denen es bereits weiss, dass sie im auszuschneidenden Gebiet enthalten sind. Anders gesagt, du findest alle Relationen, die eine kleinere OSM-ID haben, aber die mit grösserer OSM-ID fehlen. Ob das ein Bug oder Feature von osmosis ist, da kann man sich streiten. Die andere Möglichkeit, die osmosis hätte, wäre alle Unterrelationen ohne Check zu übernehmen. Aber dann kann es passieren, dass nicht vorhandene Relationen referenziert werden und das ist manchmal auch nicht gewollt. Gruss Sarah _______________________________________________ Talk-de mailing list [email protected] http://lists.openstreetmap.org/listinfo/talk-de

