Tagging von Kunstwerken

Zu 3.: Objekte, die keine Adresse haben, sollten auch keine addr:-Tags bekommen. Wie Jo Cassel schon schrieb, kann man das - wenn es sein muss - anders ausdrücken (Beispiel Lagereferenzen der Briefkästen: https://wiki.openstreetmap.org/wiki/DE:Tag:amenity=post%20box?uselang=de )

http://erikakristie.github.io/learnosm/de/josm/creating-presets/

Für die Darstellung kann man so etwas als “Kartenstil” basteln. Ob sich der Aufwand aber lohnt?

Bei Kunstwerken der Regel als Punkt. Sonst kann man die Eigenschaften der Objekte nicht mehr unterscheiden (z. B. falls das Kunstwerk und das Gebäude jeweils eigene Namen haben). Bei Fassadenkunst wäre es daher optimal, den Punkt an der passenden Stelle am Grundriss des Gebäudes einzufügen.

Obwohl auf Taginfo steht: “Es gibt keine feste Liste dieser Tags. Wenn nötig, können neue Tags jederzeit erfunden und benutzt werden. Jeder kann sich neue Tags ausdenken und diese an neue oder bestehende Objekte anfügen.” ?

OK. Aber mir ist nicht klar, wie. Wenn ich Maperitive mit dem Befehl “draw:text” füttere, wird doch der Tag “name” ausgegeben?

OK. Aber differenziert als object:city, object:street, object:housenumber oder kombiniert als object:addr ?
Das von pyram angeführte Beispiel Lagereferenzen der Briefkästen: https://wiki.openstreetmap.org/wiki/DE:Tag:amenity=post%20box?uselang=de schreibt die Adresse in den ref-Tag. Da will ich ja die Nummer haben.

Das mit den Vorlagen habe ich noch nicht verstanden: Ich stelle mir vor, dass ich ein in JOSM fertig getaggtes Objekt als Vorlage abspeichern und die tag/value-Kombis dann en bloc neuen Nodes zuweisen kann. Das derzeitige “Vorlagen”-Schema ist je mehr eine Ausfüllhilfe, wo die Werte doch stets neu eingetragen werden müssen.

Solange Du das alles nicht hochlädst, kannst Du machen was Du willst. Wenn die Daten hier nach OSM hochgeladen werden sollen, dann ist es halt hilfreich, wenn man sich an bestimmte Konventionen hält. Grundsätzlich kann man Schemas erweitern und Neues erfinden, falls erforderlich. Das muss aber in gewissen geordneten Bahnen erfolgen, sonst bricht Chaos aus, wenn jeder für sich für eine eigentlich gleiche Eigenschaft unterschiedliche Keys einführt. => https://wiki.openstreetmap.org/wiki/DE:Proposal_process

Mein Beispiel beschreibt halt, was man “zum Beispiel” woanders gemacht hat. War vielleicht nicht das beste Beispiel, aber ist andererseits typisch OSM :wink: Jo Cassel beschreibt ein anderes nicht allgemein akzeptiertes Schema einiger weniger Einzelmapper (teilweise als Quasi-Import, wie man am Verlauf erkennt: https://taginfo.openstreetmap.org/keys/object:city#chronology bzw. an den wenigen Werten: https://taginfo.openstreetmap.org/keys/object:city#values - quasi eine “Düsseldorfer Eigenschaft”)

Man kann die Vorlagen auch so steuern, dass der letzte Eintrag wieder vorgeschlagen wird (wie bei der Vorlage von Adresse - da wird immer der letzte Straßenname vorgeschlagen).
Ansonsten kann man natürlich per copy&paste Objekte vervielfältigen.
Oder mehrere Objekte markieren und dann an alle markierten Objekten die Eigenschaften gleichzeitig ändern.

Klar, deshalb frag ich ja. :wink:

Wie würdet ihr denn meine eingangs geschilderte Aufgabe lösen?
Ein Stadtplan mit 3 verschiedenen Kategorien von Kunstwerken (Fassadenkunst, Objekte, Brunnen), die zum geringen Teil bereits in OSM enthalten sind. Alle haben eine Angabe zur Lage (meist Straße/Hausnummer), dazu Name und Nummer. Letztere soll in Maperitive ausgegeben werden. Welche Tags/Werte soll ich sonnvollerweise verwenden?

Es kann so einfach sein!
Aber gerade deswegen wäre es praktisch, wenn meine neuen Nodes in JOSM irgendwie auffälliger wären …

  1. Komplexes Thema - in deinem konkreten Fall kurz zusammengefasst: Bitte vergiss das.

  2. Kenne deine rules nicht, aber ganz grundsätzlich kannst Du in Meperitve den value jeden Tags zur Beschriftung nutzen (habe selbst schon offizielles(!) “ref” statt “name” genutzt) RTFM
    http://maperitive.net/docs/Properties/Text.html

  • ausprobieren + ausprobieren + ausprobieren
    (was aber grundsätzlich nicht automatisch funktionieren kann ist eine private Durchnummerierung auf Basis der allgemeinen OSM-Daten)
  1. Einfach das “objekt:”-Schema 1:1 analog zum “addr:”-Schema verwenden (siehe dessen Dokumentation) wobei nicht alle Keys verwendet werden müssen, sondern halt diejenigen die objektspezifisch vernünftig und sinnvoll sind.

Wenn es nur darum geht, die “Neuen” zu sehen. Da gibt es schon etwas Fertiges: https://forum.openstreetmap.org/viewtopic.php?pid=813917#p813917

https://wiki.openstreetmap.org/wiki/DE:Tag:tourism%3Dartwork
bzw.
https://wiki.openstreetmap.org/wiki/DE:Key:artwork_type
anwenden.
Wenn es ein Brunnen ist, dann sollte man das am zusätzlichen Key https://wiki.openstreetmap.org/wiki/DE:Tag:amenity%3Dfountain erkennen können :wink:

Zum Thema Nummer: Wenn das nur “interne” Nummern sind oder aus nicht öffentlich zugänglichen Quellen kommt: Nicht nach OSM hochladen!

Wow. In der Tat!

Ich hatte mich bereits auf Handarbeit eingestellt. Deshalb war mir wichtig, die neuen Nodes auch gut im Kartenbild von JOSM zu erkennen. Und das klappt mit dem Kartenstil “Geänderte Objekte” vorzüglich. Allerdings erschließt sich mir nicht, wie lange die geänderten Objekte so markiert werden. Bis zum Upload?

Es sind tatsächlich “interne Nummern”. Sie sollen in den ref-Tag? Kann ich diesen dann beim Upload unterdrücken? Oder müsste ich ihn jeweils aus der XML-Datei vor dem Upload herauslöschen? Oder meine Arbeit bleibt privat und ohne Allgemeinheitsnutzen weil sie nicht nach OSM hochgeladen werden kann?

Das ist ja gerade mein Problem, dass die Standard-Werte für artwork_type in meinem Fall nicht passen. “Fassadenkunst” sind scupltur, tilework, mosaic, graffiti, relief, mural … “Objekte” sind stone, sculpture, installation … “Brunnen” sind sculpture, stone, installation, relief …

Bleibt somit doch nur eine proprietäre Lösung ohne Nutzen für OSM?

Logisch. Später sind sie ja nicht mehr “geändert” :wink:
Ansonsten müsstest Du dir einen eigenen Stil basteln, der alle geladenen Kunstwerke hervorhebt.

Verstehe ich nicht. Du gruppierst doch nur mosaic, graffiti etc. zu “Fassadenkunst” Also “wenn a oder b oder c, dann x”. Und beim Brunnen “wenn (a oder b oder c ) und zusätzlich amenity=fountain, dann y”.
Andersrum (OSM würde nur “Fassadenkunst” kennen und Du wolltest genauer nach Malerei, Kratztechnik etc, unterscheiden) wär’s schwieriger/unmöglich und man müsste Subtags einführen, die das genauer beschreiben.

Was ich auch nicht verstehe, warum man Adressangaben braucht. Wenn die Objekte auf einer Karte dargestellt werden, dann sieht man das doch, wo das ist. (Wenn das mit Maperitive gemacht werden soll, dann ist ja wohl nicht angedacht mit Mausklick ein Fenster mit weiteren Informationen zu öffnen. So wie hier: https://www.flosm.de/html/POI-Karte.html?lat=49.7934581&lon=9.93670072&r=859.14518&st=0&sw=artwork )

Vielleicht solltest Du erst einmal nur die OSM-konformen Daten hochladen und im zweiten Schritt dir die Daten wieder holen und nach Maperitive übertragen. Auf dem Weg dorthin (z.B. wieder über JOSM) mit Nummern und was auch immer in beliebigen Tags anreichern. Von dort wird dann ja nichts mehr hochgeladen…

Würde das bei Kunst im öffentlichen Raum so angehen bzw. gehe das allgemein so an:
A) In OSM die einzelnen Objekte erfassen und bestmöglich nach OSM-Dokumentation taggen (overpass-Abfragen zur Kontrolle/Übersicht benutzen und dabei per style schon mit gewünschten Gruppierungen arbeiten)
B) In Maperitiv nach eigenen Wünschen zu Objektklassen gruppieren (je genauer, bzw. umfangreicher getaggt ist, umso mehr Möglichkeiten und Freiheiten bestehen dabei)
C) Wenn das letztendlich gewünschte durch sauberes OSM-Tagging nicht hinzukriegen ist, den Maperitiv-output händisch per Software seines Vertrauens nachbearbeiten (z.B. eine rein private Nummerierung)

Einfach mal mit A anfangen …

Hallo Protopsaltis,
Da alle OSM eine eindeutige Kennzeichnung (type + id) haben, kannst Du Deine privaten Daten über diese Nummer automatisch
mit den OSM- Daten verknüpfen und dann lokal weiterverarbeiten.

Mir ist auch noch nicht klar, warum Du die OSM-Grundkarte neu rendern willst. Reicht es nicht aus, eine existierende Karte
mit den Zusatzinformationen als overlay zu verwenden?
In dieses Overlay (Stichworte: umap, leaflet, openlayer ) lassen sich dann alle lokalen Informationen packen.

Beispielsweise kann artwork_type:sculpture in meinem Fall sowohl für Fassadenkunst als auch für Objekte oder Brunnen zutreffen. Wie soll ich dann im Nachgang differenzieren?

Das ist natürlich richtig. Ich hatte allerdings vor, zunächst alle Objekte zu verzeichnen und sie zu einem späteren Zeitpunkt (wenn alle Nachträge eingegangen sind) zu nummerieren. Das kann in JOSM ohne Adressdaten funktionieren (daher mein Wunsch nach größerer “Auffälligkeit” der neu eingefügten Objekte), ist aber möglicherweise auch im Editor zu machen. Und dort wären Adressangaben natürlich hilfreich.

Dieser zweigliedrige Arbeitsschritt könne es auch ermöglichen, zunächst die “sauberen” Tags hochzuladen und sie erst anschließend für Maperitive anzureichern. Dazu müsste allerdings die Frage nach eindeutigen Werten von artwork_type gelöst werden.

PS: Das von fx99 ins Spiel gebrachte Procedere der Verknüpfung von type+id mit eigenen Daten ist mir nicht vertraut.

Brunnen haben ein tag amenity=fountain.
Fassadenkunst könnte man mit dem existierenden tag position=wall kennzeichnen.

type+id:
Wenn Du diese overpass Abfrage http://overpass-turbo.eu/s/13Ju ausführst (links oben) und dann auf Daten umschaltest (rechts oben), dann siehst Du, wie die OSM Daten aufgebaut sind.
Die erste Zeile ist z.B.

<node id="2555461044" lat="48.7785671" lon="9.1798474">

id=2555461044 ist eine für diesen Knoten=node eindeutige Bezeichnung. Für Weg=way (am Ende) gibt es einen eigenen Nummernraum für die id.

Auch wenn Du das Richtige meinst / sagen willst - die Formulierung finde ich für einen Einsteiger missverständlich.
Die id / Nummer allein ist eben nicht eindeutig, da alle Typen jeweils den kompletten Nummernraum verwenden.
Eindeutig ist nur die Kombination aus (Type + id).

node 2555461044
way 2555461044
relation 2555461044

sind eben unterschiedliche Objekte.

Leider weiß ich auch mit dieser Klarstellung nicht, wie mir dies Wissen nun nützt, um eigene lokale Daten mit den OSM-Punkten zu verknüpfen.

Wie findest Du denn die schriftlichen Daten eines Objektes in einer Liste - wenn in der (Übersichts-)Karte nur eine Nummer steht …

Jetzt ahne ich zwar, wie ich die eindeutige Kennzeichnung finde, weiß aber nicht, wie das Verknüpfen laufen soll.

In den Tags soll ja außer einer Nummer auch (nicht zuletzt zur Identifizierung in Klarschrift) eine Bezeichnung und/oder Adresse stehen. Daher hatte ich danach gefragt, in welchen Tags sinnvollerweise welche Werte untergebracht werden. Eine private Nummerierung und Kategorisierung (z.B. “Fassadenkunst”) hat in OSM nichts verloren – soviel glaube ich verstanden zu haben. Sie ist für mich aber entscheidend. Daher wäre die “automatische Verknüpfung mit privaten Daten” zielführend, um meine Arbeit auch für OSM nützlich werden zu lassen.

@Protopsaltis, mit deinen offline-Daten kann ich dir nicht weiterhelfen, aber hier mal eine primitive/beispielhafte Abfrage von OSM-Daten mit Sortierung in 3 Gruppen, willkürliches Stadt-Beispiel ist Darmstadt
http://overpass-turbo.eu/s/13OP

Wenn deine gewünschte Gruppierung so, also über Subtags wie artwork_type=mural und zahlreiche weitere denkbare und ausdrücklich erwünschte Standard-Subtags tatsächlich nicht möglich ist, wäre auch dieser völliglegale “Trick” möglich:
Deine “Fassadenkunst” (beispielsweise) wird ja wohl in irgendeiner Form an der Fassade stattfinden, Du kannst also das Wort “Fassade” im description-Tag benutzen, beispielsweise
description=[Werk von…/Darstellung von…] [als…] an der Fassade des Hauses Nr. […] in der Beispielstraße.
Auch dies kannst Du in Maperetive auswerten und zur Gruppierung nutzen:
http://maperitive.net/docs/Querying_Data.html#@isMatch%20Function

Dabei kann ich dir aber nur anhand von konkreten Inhalten in OSM weiterhelfen …

Das description-Tag könnte ein Ausweg sein. Denn die bereits gemappten “amenity=fountain” oder “tourism=artwork” gehören nicht alle zu dem städtischen Kunstinventar, das ich visualisieren will. Wenn ich in der descripion stets den Text “Teil des Projektes Stadtkunst [an der Fassade des Hauses …]” als Wert eintrage, könnte ich in Maperitive nach “Stadtkunst” filtern. Damit wären nicht zum Projekt gehörige Brunnen draußen. Und alle “Fassaden” könnten separat angesprochen werden.

Jetzt fehlt mir nur noch die korrekte Syntax für Maperitive. Ich habe es probiert mit:


		fassadenkunst : @ismatch(description, ".*Stadtkunst*") AND @ismatch(description, ".*Fassade*") AND (artwork_type=sculpture OR artwork_type=stone OR artwork_type=mural) 
		kunstobjekte : @ismatch(description, ".*Stadtkunst*") AND (artwork_type=sculpture OR artwork_type=stone)
		brunnen : @ismatch(description, ".*Stadtkunst*") AND amenity=fountain 

Im Prinzip klappt das auch. Allerdings gibt es seltsame Irritationen beim Zoomen. In manchen Maßstäben werden die auszugebenden “name” plötzlich rot, obwohl die Definition text-color:black lautet. Eine Zoomstufe darüber und darunter ist wieder alles korrekt.

In OSM sehen die Daten beispielhaft so aus (addr:housename und name werde ich natürlich noch korrigieren):

    
  <node id='-101752' action='modify' timestamp='2021-02-10T18:26:20Z' user='' visible='true' lat='49.97271201511' lon='9.15132075148'>
    <tag k='addr:housename' v='Cornelien1' />
    <tag k='description' v='Teil des Projekts Stadtkunst' />
    <tag k='amenity' v='fountain' />
    <tag k='name' v='Nr' />
  </node>
  <node id='-119260' action='modify' visible='true' lat='49.9724977608' lon='9.15171539249'>
    <tag k='addr:housename' v='Cornelien8' />
    <tag k='description' v='Teil des Projekts Stadtkunst an der Fassade des Hauses Cornelienstraße 8' />
    <tag k='artwork_type' v='sculpture' />
    <tag k='name' v='Nr' />
  </node>
  <node id='-119433' action='modify' visible='true' lat='49.97203043727' lon='9.15278275419'>
    <tag k='addr:housename' v='Willigis12' />
    <tag k='description' v='Teil des Projekts Stadtkunst' />
    <tag k='artwork_type' v='sculpture' />
    <tag k='name' v='Nr' />
  </node>

Wenn ich auf diese Weise Stichwörter in “description” verpacken kann, um sie konkret anzusprechen, wäre mein Projekt OSM-konform lösbar.

Beim description-Tag besteht große “Freitext-Mapperfreiheit” - einfach weil damit nichts und niemand in seiner Tag-Auswertung behindert wird. ABER sowas wie “Teil des Projekts Stadtkunst” ist auch dort nur dann angemessen, wenn dies mehr ist als dein persönliches Projekt (ohne wann/wo/warum sowieso eher uninformativ, hoffentlich nur proof of concept)

Bei deinem zoom-Problem kann ich dir nicht weiterhelfen, und so wohl auch schwerlich Andere, die sich besser auskennen (render-code fehlt + render-Daten wohl nur offline), wobei Bugs in Maperitive auch nicht auszuschließen sind.

Bei deinen (wohl offline) Tags fällt mir noch k=‘name’ v=‘Nr’ als seltsam auf … und allgemein ist da bzgl. OSM-Tagging noch viel Luft nach oben, schön ist z.B. immer ein Bild (oft auf Commons vorhanden) und nicht-zeitgenössische Arbeiten auch gern mit Subtag historic=yes Beispiel: https://www.openstreetmap.org/node/674919702

Freue mich aber, dass Du offensichtlich sehr gut vorankommst.