Benutzer:RolandUnger/vCard

Aus Wikivoyage
Zur Navigation springen Zur Suche springen
Entwicklungsphasen der vCard
Aufgaben zur Verbesserung der vCard
  • Allgemein
    • Verringerung der Rechenzeit. Eine Verbesserung bringt schon mw.loadData() für die Nutzung statischer Daten. Aber Informationen können nicht zwischen verschiedenen #invoke weitergeleitet werden (siehe T67258)
    • Anzeigemodi show = inline. Standard soll zukünftig block sein.
      • show = inline: <br />, alle Steuerzeichen außer #7f löschen. Wartungskategorie anlegen. Ok! Darstellung im inline-Mode optimieren, evtl. ohne Info und Bearbeiten.
      • (show = block): Einige Steuerzeichen wie Tab löschen. Prüfen, ob Zeilenwechsel, Absätze in der Beschreibung vorhanden sind. Evtl. erweiterter Blockmodus: Beschreibung in div-Tag. Ok!
    • Dokumentation (begonnen)
    • Symbole für diese Features inkl. Telefon, Fax, Email etc.
    • Subtypes: Arrays mit Icon-Dateinamen, Übersetzungen. Legende für Smartphones.
    • Evtl. Hauptverwaltung (P159) auswerten.
    • Mehrere Einrichtungen derselben (Restaurant- usw.) Kette und gleicher Beschreibung.
    • Name, Adresse, Lage in Landessprache: + Umschrift Ok!, IPA, Audio, Hochsprache und Dialekt. Behandlung lateinisierter Namen, Anschriften (aus WD).
    • Neue Metadaten: Zeitzone bzw. Zonenzeit (time zone: UTC-3; MEZ usw.), Zeitzone aus Tabelle (mit Standard-Regel zur Vereinfachung) oder WD (P421; Ort, Land (evtl. mehrere Zeitzonen), Koordinate). Zeitraum Sommerzeit, wohl aus eigener Tabelle, mit Start (Regel, Datum laufendes Jahr) und Ende (Regel, Datum laufendes Jahr), Regel mit #time Parser-Function. Daraus lässt sich aus den Öffnungszeiten (hours-osm) die Angabe generieren: „Jetzt geöffnet.“
    • Zusatzinformationen: Anzeige/Aufklappen Bild, Link auf weitere Bilder in Commons-Kategorie. Wohl nur im Blockmodus sinnvoll. Siehe auch ListingInfo.
    • hours: Unterscheidung freie Formatierung oder OSM. Evtl. mit vorangestelltem OSM:. Prüfung mit Ajax auf externem Server (Editor, vCard-Modul).
    • Abkürzung Öffnungszeiten -> OSM
    • Aufteilung von Gruppen in Untergruppen.
    • Slideshow für angegebene Kategorie.
  • Aufgaben für Bots
    • Variable show = poi entfernen.
    • inline/block: Satzzeichen hinter {{vCard}}s weg. Text hinter vCard in description, Parameter evtl. neu anlegen. Wenn Text vor vCard oder mehrere vCards in Absatz, dann show = inline einfügen.
  • Diskussion
    • Sollen überregionale Buchungs- und Bewertungsdienste wie booking.com z. B. über eine ausklappbare Liste angezeigt werden? In Wikidata vorhanden. Gegenwärtig gibt es nur Eigenschaften für booking.com. hotels.com, tripadvisor.com und recreation.gov. Andere wie holidaycheck.de, trivago.de, hrs.de, hotel-ami.com, holidaycheck.de, TUI.com, momondo.com, Amoma.com, Flyin.com, Trip.com und ebookers.com fehlen.
    • Regeln Anschriften, Öffnungszeiten.
    • Eigene Gruppen: Do: Kultur, Erholung, Sport und Fitness; other: Gesundheit, Bildung
    • Bei fehlender Koordinate Anzeige eines leeren Rechtecks, siehe z. B. Александрия
  • Mobil
    • Abgekürzte Beschreibung in der mobilen Ansicht. Wohl nur im Blockmodus sinnvoll.
  • Wikidata
    • Weitere Informationen nur noch über Wikidata, nach Möglichkeit keine neuen Parameter mehr. Sind bereits etwa 40.
    • Properties in Wikidata anmelden.
    • Übernahme/Übertragung von/nach Wikidata mit JS.
    • Wikidata speichert keine Bearbeitungsdaten, nur Datum der letzten Bearbeitung. Vielleicht gibt es einen Weg, das Datum der letzten Bearbeitung aus der Versionsgeschichte als lastedit zu übernehmen. Bisher kein Weg in Lua.
  • ListingEditor
    • gemeinsame Initialisierung mit ListingInfo
    • Behandlung: Typ aus Wikidata
    • Ersatz jquery.ui.dialog und jquery.ui.autocomplete durch OOjs UI o.ä.
    • Sonderzeichen (Umlaute etc, Währungssymbole für alle Felder)
    • Parameter commonscat ergänzen
    • Hinweis, wenn Beschreibung (description) zu lang.
    • Symbole für Bearbeiten, Info
    • Behandlung Typen (monolingual, id)
  • ListingInfo
    • Weitere Sprachen
    • Berücksichtigung Benutzersprache Ok!
    • Uhrzeitbehandlung: Uhrzeit von Server, nicht vom Client
-- Uhrzeit vom Server, nicht vom Client
-- erhält Zeit von einem PHP-Skript
var ServerDate = new Date("<? echo date("M d, Y H:i:s"); ?>");

  • Parameter zoom ergänzt. Ok!
  • Leichte Fehler unterdrückt, auch ohne Stilvorlage wirksam Ok!
  • Marker: +IATA, ICAO. Ok!
  • Angabe mehrerer Staaten in WD: Suche. Ok!
  • Commons-Kategorie: Zusätzlich zu P373 sitelinks.commonswiki ausgewertet. Ok!
  • Variable intl-area-code entfernen, Variable credit-cards in payment umbenennen (wenn nicht mehr ohne Argument eingesetzt). Ok!
  • subtypes: inkl. Rollstul, WLAN aus WD; directions aus WD. Ok!
  • vCard, Marker: Internationalisierung der Parameternamen. Ok!
  • Wertprüfung für Parameter show. Ok!
  • Zahlungsarten, subtypes aus Wikidata. Ok!
  • vCard/Marker: Namensräume Datei/Bild/File/Image beim Parameter image entfernen. Ok!
  • Konvertierung von/zu Open Location Code (Plus code): Anzeige im Marker-Tooltip. Ok!
  • vCard/Marker: Parameter commonscat für Commons-Kategory, aber nur, wenn wikidata nicht existiert. Fehlermeldung, wenn sowohl commonscat und wikidata Ok!
  • Ergänzen Google Maps Customer ID (P3749), Foursquare-ID (P1968) Ok!
  • ms.options (i18n) für wikiweite Anpassungen
  • Anschrift in unterschiedlichen Sprachen, aber nicht Wikisprache: Hierarchie; z.B. en vor it Ok!
  • Mehrere kommaseparierte Typen, erster bestimmt die Farbe. Z. B. restaurant, bar. Ok!
  • Unterstützung lat = lat, long Ok!
  • Unterscheidung Anschriften / lokale Anschriften bei Bezug aus Wikidata Ok!
  • Auslagerung gemeinsamer Marker/vCard-Funktionen: Modul:MarkerBase Ok!
  • Neue Metadaten: Währung (currenty: EUR, €, c) Ok!
  • Marker: url = n/no etc: keine URL, auch nicht aus wikidata Ok!
  • Formelle Prüfung URLs Ok!
  • Marker/vCard: Links zu WV-Artikel aus WD, aber nur, wenn nicht Artikel selbst Ok!
  • Marker/vCard: Wikipedia-Link: Wikisprache -> en -> Landessprache Ok!
  • Taxi-Hinweis: Bitte bringen Sie mich [name] + [address] in Wiki- und Landessprache Ok!
  • Marker: +technische Daten Ok!
  • Editor: group nicht übernehmen, wenn identisch zum Typ Ok!
  • vCard/Marker: Test ob P31 (ist ein) überhaupt gesetzt ist. Ok!
  • Keine lokale Bezeichnung aus Wikidata, wenn lang = wikiLang. Ok!
  • Telefonnummern nicht umbrechen Ok!
  • Modul:Coordinates, Modul:GeoData, Koordinatenumrechnung. Ok!
  • Modul:LinkPhone, Verlinkung Telefonnummer Ok!
  • Telefonnummern aus Wikidata irgendwie gruppieren, mehr als drei Telefonnummern -> einklappen Ok!
  • Feinschliff Poi. Mit dem Einsatz von WikiData-Daten, insbesondere den Koordinaten, muss der Parser-Vorgang vom Quelltext auf Quelltext mit ausgeführten Vorlagen (action=raw&templates=expand) oder auf Datenbankzugriff umgestellt werden, weil die Koordinaten im Quelltext nicht mehr sichtbar sind. Neue Kartenwerkzeuge? -> ja: Kartographer, Vorlagen wie {{Marker}} bereits angepasst. Ok!
  • vCard/d: mit und ohne vorangestelltes Q, Groß-/Kleinschreibung Ok!
  • Google+, Twitter, Facebook mit passenden Symbolen Ok!, Problem: Link in Kiwix fehlt Ok!
  • Skype einbinden Ok!
  • weitere Untertypen/Features wie GLBT, Behinderungen, Parkplätze, Internet/WiFi/frei, Dienstleistungen, Haustiere, keine Kinder. Ok!
  • Abkürzungen mit title hinterlegen, siehe auch {{Abk}} Ok!
  • Korrektur aufeinander folgender Satzende-Punkte Ok!
  • Parameter auf Gültigkeit prüfen Ok!
  • Daten aus WD mit Klasseneigenschaft class="wikidata-content" o.ä. versehen. Ok!
  • Symol(e) am Anfang (Flaggen, Bewertungen). Folge der Umstellung auf display:block. Evtl. neue Parameter: before = und after = Ok!, die vor- und nachgestellte Textteile aufnehmen können. Ok!
  • Mikroformate einsetzen Ok!
  • Fehler(kategorien) für nichtdezimale Koordinaten Ok!, unbekannte Parameter, fehlerhafte URLs und Emails, farbliche Markierung fehlerhafter vCards Ok!
Analyse Qualifikatoren bei Koordinaten

Beispiel Qualifikator „ist ein“: Portal Q854429, Tür Q36794 für Wat Ron Khun
["1"] = {
    ["mainsnak"] = {
        ["snaktype"] = value
        ["property"] = P625
        ["datavalue"] = {
            ["value"] = {
                ["longitude"] = 99.76329
                ["precision"] = 0.00027777777777778
                ["globe"] = http://www.wikidata.org/entity/Q2
                ["latitude"] = 19.82424
            }
            ["type"] = globecoordinate
        }
        ["datatype"] = globe-coordinate
    }
    ["type"] = statement
    ["id"] = Q496543$bdcec553-435f-c11a-1ce8-edde46f6714a
    ["rank"] = preferred
}

Eingabe-Dialog
  • Koordinatenpicker
  • Eignung für mobile Bearbeitung
  • Ableitung vom Visual Editor
  • Übernahme/Übertragung von/nach Wikidata
  • Parameter auf Gültigkeit prüfen
Vorschläge
  • display: block anstelle inline, Test ob als Listenelement möglich. Evtl. neuer Parameter inline = true (default: false). CSS/Skripten, um Text vor und nach {{vCard}} zu detektieren. Nichts außer *, show = inline einfügen
    • Vorerst bleibt es bei inline, einfach zuviele vCards
  • Klappbar: Bild, technische Daten, überlanger Text
  • Smartphones: Beschreibung maximal bis 150 Zeichen anzeigen, ausklappbar, Linie als Trenner zwischen mehreren vCards, auf linker Seite Bild
Semantische Mikroformate
Öffnungszeiten: OSM
Skype-URI-Links
  • Skype-Protokoll (noch) nicht unterstützt -> Fehler an phabricator.wikimedia.org. Angabe nur Username. Vorstellung: [skype:username?call anrufen]
  • Angelegt mit JavaSript (MediaWiki:VCard.js) Ok!
Nutzung von Wikidata
vCard-ID Trenner Impl. Property-ID Property-en Property-de OSM-Key Prüfung Formatierung Kommentar
Ok! P17 country Staat
Ok! P17:P37 official language Amtssprache
Ok! P17:P38 currency Währung
Ok! P17:P297 ISO 3166-1 Ländercode (ISO 3166-1) [A-Z]{2}
Ok! P17:P474 country calling code internationale Telefonvorwahl \+\d+
P17:P2258 mobile country code Mobile Country Code [02-79]\d\d
P131
P706
located in liegt in Is-in city o.ä. Durchhangeln Stadt etc.
P131:P473 local dialing code Ortsvorwahl [\d\(\)\- \+]+
name Ok! d:Label Key:name mw.wikibase.entity:getLabel( 'de', 'en' )
name
Landessprache
Ok! d:Label:P17:P37 Key:name:P17:P37 mw.wikibase.entity:getLabel( langCode )
wikidata Ok! Wikidata ID Wikidata-ID Q...
type Ok! P31 instance of ist ein(e) Key:building
Key:amenity
Key:tourism
subtype
tags
, Ok! P912
P2012
P2846
P2848
P5023
Key:shop
Key:office
Key:craft
Key:stars
Key:rooms
Key:beds
Key:cuisine
Key:takeaway
Key:wheelchair
Key:gay (Entwurf)
Untermodule nach type; Beispiel: mid-range, greek, modern, wine, ouzo, popular
alt
comment
address
Landessprache
Ok! P6375
P969 (veraltet)
address Adresse Key:addr:street
directions P2795:wikilang directions Lage Key:location
url Ok! P856 official website offizielle Website Key:website Datentyp: URL
facebook Ok! P2013
P1997
Facebook ID
Facebook Places ID
Facebook-ID
Facebook-Places-ID
https://www.facebook.com/$1
https://www.facebook.com/pages/-/$1
google Ok! P2847
twitter Ok! P2002 Twitter username Twitter-Benutzername [A-Za-z0-9_]+ https://twitter.com/$1
instagram Ok! P2003 Instagram username Instagram-Benutzername
lat Ok! P625:lat coordinate location : latitude geographische Koordinaten : Breite
long Ok! P625:long coordinate location : Logitude geographische Koordinaten : Länge
show , Bisher all, poi, coord, none
group Ok!
image Ok! P18 image Bild Key:image (?i).+\.(jpg|jpeg|png|svg|tif|tiff|gif) https://commons.wikimedia.org/wiki/File:$1
intl-area-code Ok! P17:P474 überholt, wird entfernt
phone , Ok! P1329 phone number Telefonnummer Key:phone \+([17]|[2345689]\d{1,2})[\- ][\d(][ ()\.\-\d]+
tollfree , \+([17]|[2345689]\d{1,2})[\- ][\d(][ ()\.\-\d]+
mobile , \+([17]|[2345689]\d{1,2})[\- ][\d(][ ()\.\-\d]+
fax , Ok! P2900 Key:fax \+([17]|[2345689]\d{1,2})[\- ][\d(][ ()\.\-\d]+
email , Ok! P968 e-mail E-Mail Key:email mailto:[-\w\.]+@[-\w]+\.[\w\.]+
skype , Ok! P2893
hours P3025
P3026
P3027
P3028
Key:opening_hours
checkin
checkout
price Ok! P2284
P2555
Key:charge
Key:fee:price
Key:fee=yes/no
Datentyp: Menge (?)
payment , Ok! P2851 Key:payment
last-edit Datentyp: Time
^(20)[0-9]{2}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$
description Key:description
Agoda.com Ok!, WD P6008 Agoda hotel ID Hotel-ID auf Agoda.com
Booking.com Ok!, WD P3607 Booking.com hotel ID Hotel-ID auf booking.com
Expedia.com Ok!, WD P5651 Expedia hotel ID Hotel-ID auf Expedia.com
Foursquare.com Ok!, WD P1968 Foursquare venue ID Foursquare-ID
Historichotels.org Ok!, WD P5734 Historic Hotels of America ID Hotel-ID der Historic Hotels of America
Historichotelsofeurope.com Ok!, WD P5774 Historic Hotels of Europe ID Hotel-ID der Historic Hotels of Europe
Historichotelsworldwide.com Ok!, WD P5735 Historic Hotels Worldwide ID Hotel-ID der Historic Hotels Worldwide
Hotels.com Ok!, WD P3898 Hotels.com hotel ID Hotel-ID auf Hotels.com
Lwh.com Ok!, WD P5834 LHW hotel ID Hotel-ID auf Leading Hotels of the World
Maps.google.com Ok!, WD P3749 Google Maps CID Google Maps CID
Preferredhotels.com Ok!, WD P5890 Preferred Hotels & Resorts hotel ID Hotel-ID auf Preferred Hotels & Resorts
Recreation.gov Ok!, WD P3714 Recreation.gov facility ID
Relaischateaux.com Ok!, WD P5836 Relais & Châteaux ID Relais-&-Châteaux-ID
Tripadvisor Ok!, WD P3134 TripAdvisor ID TripAdvisor-ID
In der Diskussion
vCard-ID Trenner Impl. Property-ID Property-en Property-de OSM-Key Prüfung Formatierung Kommentar
linkedin P2035 LinkedIn personal profile URL LinkedIn-Benutzerprofil-URL
Ctrip.com Ctrip.com hotel ID Hotel-ID auf Ctrip.com
Yelp.com P3108 Yelp-ID Yelp ID
Snapchat.com P2984 Snapchat-Benutzername Snapchat username

Siehe auch[Bearbeiten]

Wikidata2

Funktionen

  • {{#invoke:Wikidata2|getValue|id=Q1538837|p=P856|Format=P856-link+site}}
  • {{#invoke:Wikidata2|LabelByID|id=Q1657130}}
  • {{#invoke:Wikidata2|LabelLangByID|id=Q1657130|lang=th}}
  • {{#invoke:Wikidata2|getPOIType|ID=Q1657130}}