OpenSeaMap-dev:Lights-WP-WD: Unterschied zwischen den Versionen

Aus OpenSeaMap-dev
Wechseln zu: Navigation, Suche
Zeile 190: Zeile 190:
 
How we can manage inconsistencies?
 
How we can manage inconsistencies?
  
=== Wikidata-classey ===
+
=== Wikidata-classes ===
For WD muss eine Klasse für Leuchtfeuer erstellt werden.  
+
We need a class for lights in WD.  
  
Diese muss folgende Strukturen abbilden:
+
This class has to picture this structures:
: OSM-Klasse "seamark:light"  
+
: OSM-class "seamark:light"  
 
: [[wikipedia:de:Vorlage:Infobox_Leuchtturm|Vorlage:Infobox_Leuchtturm]]
 
: [[wikipedia:de:Vorlage:Infobox_Leuchtturm|Vorlage:Infobox_Leuchtturm]]
  
In WP vorhandene Leuchtfeuer sind als Objekte in diese WD-Klasse einzutragen.
+
All lights in WP needs to be entered as objects in this WD-class.
 
 
In OSM vorhandene Leuchtfeuer sind als Objekte in diese WD-Klasse einzutragen.
 
 
 
=== WP-Link in OSM ===
 
In WP vorhandene Leuchtfeuer sind als WP-Link in OSM einzutragen.
 
  
 +
All lights in OSM needs to be entered as objects in this WD-class.
  
 +
=== WP-link in OSM ===
 +
All lights in WP needs to be entered as WP-Link in OSM
  
 
=== Tools ===
 
=== Tools ===
Tool/GUI schaffen, um in OSM den WP-Link zu suchen und einzutragen.
+
Script a tool/GUI which search all WP-links in OSM and write this into WD.
  
Tool, um alle OSM-lights in WD einzutragen. <br>  
+
Script a tool/GUI which searches all OSM-lights and write this into WD. <br>  
  
== Attribute-Liste ==
+
== Attribute-List ==
 
{| class="wikitable"
 
{| class="wikitable"
! Schlüssel || Werteliste || Typ || Quelle || Bemerkungen
+
! Key || Value list || Typ || Source || Remarks
 
|-
 
|-
 
| name:lol || * || str || OSM: seamark:name || ASCII
 
| name:lol || * || str || OSM: seamark:name || ASCII
Zeile 227: Zeile 225:
 
| hight_of_tower || ###,# || int || OSM: seamark:landmark:hight || Turmhöhe
 
| hight_of_tower || ###,# || int || OSM: seamark:landmark:hight || Turmhöhe
 
|-
 
|-
| range:w || ## || int || OSM: seamark:light:range || Maximum von w/r/g
+
| range:w || ## || int || OSM: seamark:light:range || Maximum of w/r/g
 
|-
 
|-
 
| .. ||  ||  ||  ||  
 
| .. ||  ||  ||  ||  
Zeile 241: Zeile 239:
  
 
== Wikidata ==
 
== Wikidata ==
=== Datenstruktur ===
+
=== Data strukture ===
[https://www.wikidata.org/wiki/Q776666 Beispiel-Eintrag]
+
[https://www.wikidata.org/wiki/Q776666 Exemple]
  
 
{| class="wikitable"
 
{| class="wikitable"
! Feldname || Typ || Format || Bemerkung || Beispiel
+
! Field name || Typ || Format || Remarks || Exemple
 
|-
 
|-
| ID || inkrementell ||  ||  ||  
+
| ID || incrementel ||  ||  ||  
 
|-
 
|-
 
| right_ref-nr || String ||  ||  ||  
 
| right_ref-nr || String ||  ||  ||  
Zeile 253: Zeile 251:
 
| position || Coordinate || LAT/LON ||  ||  
 
| position || Coordinate || LAT/LON ||  ||  
 
|-
 
|-
| name_lol || String || ASCII || wie in List of Lights ||  
+
| name_lol || String || ASCII || like in List of Lights ||  
 
|-
 
|-
| name_local || String || UTF-8 || lokale Sprache und Schrift ||  
+
| name_local || String || UTF-8 || local language und writing system ||  
 
|-
 
|-
 
| wp-link || URL ||  ||  ||  
 
| wp-link || URL ||  ||  ||  
 
|-
 
|-
| commons-Link || URL ||  ||  ||  
+
| commons-link || URL ||  ||  ||  
 
|-
 
|-
| light_hight || Quantity || m,mm || Feuerhöhe ü.M. ||  
+
| light_hight || Quantity || m,mm || light hight about sea ||  
 
|-
 
|-
 
| .. ||  ||  ||  ||  
 
| .. ||  ||  ||  ||  
 
|}
 
|}
  
== Beispiel OSM-Code ==
+
== Exemple of OSM-Code ==
OSM-Code von "Alte Weser":
+
OSM-code about "Alte Weser":
  
 
<pre>
 
<pre>

Version vom 3. März 2016, 15:11 Uhr

Deutsch English


Leuchtfeuer mit Wikidata auf OpenSeaMap.jpg
Structure

Store all lighthouses-/lights-data in Wikidata,
and from there show together with article-links und pictures in OpenSeaMap.

Aim

Nautical lights in Wikidata
store all lighthouse-/lights-data in Wikidata.
You can use the data from there as you like:
  • in all WP-articles
  • in WP-infoboxes
  • in all lists in any combinations
  • across languages
By this, you need to catch the data only once for the whole world, and maintain it central.
Lights in OpenSeaMap
Show all lights on OpenSeaMap:
  • Positions as marker in OpenSeaMap
  • Link to Wikipedia
  • Pictures from Commons
  • Data from OSM/Wikidata

Daten

Source Number Link Remarks
OSM 40'000
Wikipedia:de 1390 1390 list items, 430 Articles
Wikipedia:en ~1225
Wikipedia:es
Commons
WP>OSM 77 ways|relation&request=Submit&iwl=yes]

OSM

In OSM we have about 40'000 lights:

tag Number Remarks
seamark:type=light_major 4557 [1]
seamark:type=light_minor 32692 [2]
seamark:type=light_vessel 18 [3]
seamark:type=light_float 58 [4]

Each object is described by attributes in a differentiated way.

Queries via Overpass-API: query link

[out:json];
(
  node["seamark:type"~"light_float|light_vessel|minor_light|major_light|light"]({{bbox}});>;
  way["seamark:type"~"light_float|light_vessel|minor_light|major_light|light"]({{bbox}});>;
);
out;

Wikipedia

Wikipedia:de

In Wikipedia:de there are 1390 list items and 430 Articles
in this lists about lights:

List Number Artile Remarks
Lighthouses in Europe 359 204
Lighthouses in Europa-Dänemark 98 17
Lighthouses in Europa-Norwegen 155 40
Lighthouses in Europa-Estland 45 4
Lighthouses in Europa-Friesland 9 8
Lighthouses in Europa-Spanien 244 7
Lighthouses in Europa-England 72 13
Lighthouses in Europa-Schottland 82 19
Lighthouses in Afrika 35 9
Lighthouses in Asien 18 4
Lighthouses in Asien-Osttimor 3 0 in Asien einarbeiten
Lighthouses in Amerika 52 42
Lighthouses in Australien 192 30
Lighthouses in Neuseeland 26 23

Kategory:Leuchtturm_in_Europa is used 298 times.

Infobox "Leuchtturm"

de: Vorlage:Infobox_Leuchtturm is used 42 articles.
Thaughts about Infobox

en: Template:Infobox_lighthouse is used in 42 articles.
s.a. Infobox_lighthouse Talk

Woring groups

Wikidata

Class Query Number Chart Remarks
39715 Lighthouses 1687 (2014.04)
1997 (2014-11)
2136 (2015-03)
2333 (2016-03)
Chart

Gibt es noch andere Klassen? (Leuchtfeuer, nautical light, ...)

Commons

Bild

In Commons there are a few hundreds pictures commons:Lighthouse
and many categories and subcategories:

Example

Roter Sand
OpenSeaMap
Wikipedia: Roter_Sand
Commons: Category:Leuchtturm_Roter_Sand
Wikidata: Q220034
Resonator: Q220034
OSM-DB: node/635484478
Alte Weser
OpenSeaMap
Wikipedia: Alte_Weser
Commons: Category:Leuchtturm_Alte_Weser
Wikidata: Q436392
Resonator: Q436392
OSM-DB: node/538969144
Kiel
OpenSeaMap
Wikipedia: Leuchtturm_Kiel
Commons: Category:Leuchtturm_Kiel
Wikidata: Q1821432
Resonator: Q1821432
OSM-DB: node/330119702

ToDo

Concept

Wich data should be in which DB the "Master"?

OSM
WD

How we get the DBs congruent?

How we can manage inconsistencies?

Wikidata-classes

We need a class for lights in WD.

This class has to picture this structures:

OSM-class "seamark:light"
Vorlage:Infobox_Leuchtturm

All lights in WP needs to be entered as objects in this WD-class.

All lights in OSM needs to be entered as objects in this WD-class.

WP-link in OSM

All lights in WP needs to be entered as WP-Link in OSM

Tools

Script a tool/GUI which search all WP-links in OSM and write this into WD.

Script a tool/GUI which searches all OSM-lights and write this into WD.

Attribute-List

Key Value list Typ Source Remarks
name:lol * str OSM: seamark:name ASCII
ref a ##### str OSM: seamark:light:ref
lat g,gggggg real OSM - = Süd
lon g,gggggg real OSM + = West
hight_of_fire ###,# int OSM: seamark:light:hight Feuerhöhe
hight_of_tower ###,# int OSM: seamark:landmark:hight Turmhöhe
range:w ## int OSM: seamark:light:range Maximum of w/r/g
..

Wikidata

Data strukture

Exemple

Field name Typ Format Remarks Exemple
ID incrementel
right_ref-nr String
position Coordinate LAT/LON
name_lol String ASCII like in List of Lights
name_local String UTF-8 local language und writing system
wp-link URL
commons-link URL
light_hight Quantity m,mm light hight about sea
..

Exemple of OSM-Code

OSM-code about "Alte Weser":

<?xml version='1.0' encoding='UTF-8'?>
<osm version='0.6' upload='true' generator='JOSM'>
  <bounds minlat='53.8629884' minlon='8.1265541' maxlat='53.8637962' maxlon='8.1282868' origin='CGImap 0.3.3 (29865 thorn-03.openstreetmap.org)' />
  <node id='538969144' timestamp='2014-04-29T16:56:32Z' uid='449569' user='Nautic' visible='true' version='14' changeset='22026785' lat='53.8634041' lon='8.1275255'>
    <tag k='building:height' v='40' />
    <tag k='man_made' v='lighthouse' />
    <tag k='name' v='Leuchtturm Alte Weser' />
    <tag k='ref' v='B 1188' />
    <tag k='seamark:fog_signal:category' v='horn' />
    <tag k='seamark:fog_signal:group' v='AL' />
    <tag k='seamark:fog_signal:period' v='60' />
    <tag k='seamark:information' v='Fog detector light' />
    <tag k='seamark:light:10:character' v='F' />
    <tag k='seamark:light:10:colour' v='white' />
    <tag k='seamark:light:10:radius' v='0.8' />
    <tag k='seamark:light:10:sector_end' v='238' />
    <tag k='seamark:light:10:sector_start' v='196' />
    <tag k='seamark:light:11:character' v='F' />
    <tag k='seamark:light:11:colour' v='white' />
    <tag k='seamark:light:11:radius' v='0.8' />
    <tag k='seamark:light:11:sector_end' v='352' />
    <tag k='seamark:light:11:sector_start' v='288' />
    <tag k='seamark:light:12:character' v='F' />
    <tag k='seamark:light:12:colour' v='red' />
    <tag k='seamark:light:12:radius' v='0.7' />
    <tag k='seamark:light:12:sector_end' v='3' />
    <tag k='seamark:light:12:sector_start' v='352' />
    <tag k='seamark:light:1:character' v='F' />
    <tag k='seamark:light:1:colour' v='white' />
    <tag k='seamark:light:1:radius' v='0.8' />
    <tag k='seamark:light:1:sector_end' v='17' />
    <tag k='seamark:light:1:sector_start' v='3' />
    <tag k='seamark:light:2:character' v='F' />
    <tag k='seamark:light:2:colour' v='green' />
    <tag k='seamark:light:2:radius' v='0.6' />
    <tag k='seamark:light:2:sector_end' v='45' />
    <tag k='seamark:light:2:sector_start' v='17' />
    <tag k='seamark:light:3:character' v='F' />
    <tag k='seamark:light:3:colour' v='white' />
    <tag k='seamark:light:3:radius' v='0.8' />
    <tag k='seamark:light:3:sector_end' v='74' />
    <tag k='seamark:light:3:sector_start' v='45' />
    <tag k='seamark:light:4:character' v='F' />
    <tag k='seamark:light:4:colour' v='green' />
    <tag k='seamark:light:4:radius' v='0.6' />
    <tag k='seamark:light:4:sector_end' v='118' />
    <tag k='seamark:light:4:sector_start' v='74' />
    <tag k='seamark:light:5:character' v='F' />
    <tag k='seamark:light:5:colour' v='white' />
    <tag k='seamark:light:5:radius' v='0.8' />
    <tag k='seamark:light:5:sector_end' v='123' />
    <tag k='seamark:light:5:sector_start' v='118' />
    <tag k='seamark:light:6:character' v='F' />
    <tag k='seamark:light:6:colour' v='red' />
    <tag k='seamark:light:6:radius' v='0.7' />
    <tag k='seamark:light:6:sector_end' v='140' />
    <tag k='seamark:light:6:sector_start' v='123' />
    <tag k='seamark:light:7:character' v='F' />
    <tag k='seamark:light:7:colour' v='green' />
    <tag k='seamark:light:7:radius' v='0.6' />
    <tag k='seamark:light:7:sector_end' v='175' />
    <tag k='seamark:light:7:sector_start' v='140' />
    <tag k='seamark:light:8:character' v='F' />
    <tag k='seamark:light:8:colour' v='white' />
    <tag k='seamark:light:8:radius' v='0.8' />
    <tag k='seamark:light:8:sector_end' v='183' />
    <tag k='seamark:light:8:sector_start' v='175' />
    <tag k='seamark:light:9:character' v='F' />
    <tag k='seamark:light:9:colour' v='red' />
    <tag k='seamark:light:9:radius' v='0.7' />
    <tag k='seamark:light:9:sector_end' v='196' />
    <tag k='seamark:light:9:sector_start' v='183' />
    <tag k='seamark:name' v='Alte Weser' />
    <tag k='seamark:reference' v='B 1188' />
    <tag k='seamark:type' v='landmark' />
    <tag k='source' v='US NGA Pub. 114. 2011-04-02' />
    <tag k='wikidata' v='Q436392' />
    <tag k='wikipedia' v='de:Alte Weser' />
  </node>
</osm>

Lösungen

Hier sammeln wir Lösungen und Lösungs-Ideen.

Bilder aus Commons

Zu einem Buch bibt es eine Bildersammlung: Buchtext, Portraits der Autoren (WD-Beispiel)