Wikivoyage:VCard
Dieser Artikel enthält technische Hintergrundinformationen zum Modul Modul:vCard. Dieses Modul und seine Untermodule sind Teil des Marker Package.
Unterseiten
Bearbeiten- Installation (in Englisch)
- Replacing existing Marker and Listing modules and templates (in Englisch)
- How to… (in Englisch)
- Entwicklung
- Verwendete Wikidata-Eigenschaften
Diskussion
BearbeitenVerwendbarkeit
Bearbeiten- Unterstützte Skins
- Vector, Minerva u.a.
- Eignung für andere Wikis
- nur Wikivoyage, teilweise Eignung, Anpassung und Übersetzung nötig
- Eignung für mobile Geräte
- ja.
Aufruf
BearbeitenDer Aufruf erfolgt über die Vorlage {{vCard}}. Nachfolgende Beispiele sind ohne Template-Styles notiert:
{{#invoke: vCard | vCard }}
oder
{{#invoke: vCard | vCard | type = see }}
Benötigte Module
Bearbeiten- Coordinates (Doku), Coordinates/i18n (Doku), CountryData (Doku), CountryData/Currencies (Doku), CountryData/Geography (Doku), Hours (Doku), Hours/i18n (Doku), Languages (Doku), Link utilities (Doku), Link utilities/i18n (Doku), LinkMail (Doku), LinkPhone (Doku), LinkSkype (Doku), Marker utilities (Doku), Marker utilities/Groups (Doku), Marker utilities/i18n (Doku, es), Marker utilities/Maki icons (Doku), Marker utilities/Types (Doku), UrlCheck (Doku), UrlCheck/i18n (Doku, en, es), VCard (Doku), VCard/Cards (Doku), VCard/i18n (Doku), VCard/Params (Doku), VCard/Qualifiers (Doku, es), VCard/Subtypes (Doku), VCard/Unesco (Doku) und Wikidata utilities (Doku).
- Zusätzlich wird MediaWiki:Gadget-MarkerUtilities.js eingesetzt, um Skype-Namen zu verlinken.
Module dependencies
BearbeitenSkripten, die vCards verwenden
Bearbeiten- MediaWiki:Gadget-MarkerUtilities.js
- MediaWiki:Gadget-InitListingTools.js
- MediaWiki:Gadget-ListingEditor.js, Editor für die Vorlage {{vCard}}. Dokumentation.
- MediaWiki:Gadget-ListingInfo.js, Anzeige ausgewählter Daten aus der Vorlage {{vCard}}, insbesondere für den Einsatz auf Smartphones, um bei Taxifahrern und Passanten bei der Wegfindung um Unterstüzung auch in der Landessprache zu bitten. Dokumentation.
- MediaWiki:Gadget-MarkerTooltip.js, Tooltip-Informationen der mit {{vCard}} und {{Marker}} generierten Marker-Symbole. Dokumentation.
Internationalisierung
Bearbeiten- Modul:Marker utilities/i18n – Zeichenkettendefinition
- Modul:VCard/i18n – Namen der Vorlagenparameter, HTML-Tag-
data
-Bezeichner
Hilfe
BearbeitenKategorien
Bearbeiten- Wartungskategorie: Kategorie:Wartung vCard
Neue Typen
BearbeitenNeue Typen für Einrichtungen müssen in folgenden Artikeln eingetragen werden:
Stilvorlagen
BearbeitenSemantische Mikroformate
Bearbeiten- Die semantischen Mikroformate Microformats 2, hCard 1.0, h-card (2.0) werden in {{vCard}} und {{Marker}} unterstützt.
Skype-URI-Links
Bearbeiten- Das Skype-Protokoll wird in der Mediawiki-Link-Syntax (noch) nicht unterstützt. Die Links werden mit der JavaSript-Bibliothek MediaWiki:Gadget-MarkerUtilities.js angelegt.
Eingesetzte Klassenbezeichner
BearbeitenvCard-Wrapper-Tag
Bearbeiten- vCard:
<span/div class="vCard vcard h-card">
- Marker:
<span/div class="Marker vcard h-card">
vcard
: for all listings and markers, microformat hCard 1.0 specificationh-card
: for all listings and markers, microformat hCard 2.0 specification
listing-indent
– Hängender Einzug der vCard.listing-inline
– vCard soll als Inline-Element dargestellt werden.listing-with-status
– vCard besitzt Status-Ikonen.listing-edit
– Bearbeiten-Schalter soll angefügt werden.listing-no-edit
– Bearbeiten-Schalter soll keinesfalls angefügt werden.
Wartung
Bearbeitenerror
– Schwerwiegende Fehlerlisting-check-recommended
– Prüfempfehlungen der Vorlagen {{vCard}} und {{Marker}}.listing-outdated
– Das lastedit-Datum liegt bereits drei Jahre zurück.listing-with-siblings
– vCard befindet sich in einem Absatztag (p
,div
,li
,dd
), das weitere Kindelemente umfasst. Im zukünftig geplanten Blockmodus führt dies zu fehlerhaften Darstellungen. Die Klasse wird im Skript Gadget-ListingEditor.js gesetzt.voy-wikidata-content
– Angabe stammt aus Wikidata.
Kennzeichnung der Bestandteile
Bearbeitenlisting-add-contact
– zusätzliche Kontaktangaben wie Telefonnummern oder Email-Adressen, die im Text ausgeblendet werden, weil sie eine Maximalanzahl überschritten haben. Im vCard-Info-Dialog werden sie angezeigt.listing-add-info
– Zusätzliche Angaben der Einrichtung in der Landessprache wie Anschrift und Lagelisting-address
– Anschrift der Einrichtunglisting-address-local
– Anschrift der Einrichtung in der Landessprachelisting-airport
– Flughafencodeslisting-alt
– Alternative Bezeichnung der Einrichtunglisting-checkin
– Checkin-Zeit der Einrichtunglisting-checkout
– Checkout-Zeit der Einrichtunglisting-comment
– Kommentar zur Bezeichnung der Einrichtunglisting-content
– Beschreibung der Einrichtunglisting-coordinates
– Koordinate der Einrichtunglisting-credit
– Akzeptierte Kreditkartenlisting-directions
– Lage der Einrichtunglisting-directions-local
– Lage der Einrichtung in der Landessprachelisting-dms-coordinates
– Koordinate der Einrichtung im Grad-Minute-Sekunde-Formatlisting-email
– Email(s) der Einrichtunglisting-fax
– Faxnummer(n) der Einrichtunglisting-hours
– Öffnungszeiten der Einrichtunglisting-iata
– Verlinkter IATA-Flughafencodelisting-iata-code
– IATA-Flughafencodelisting-icao
– Verlinkter ICAO-Flughafencodelisting-icao-code
– ICAO-Flughafencodelisting-image
– Bild der Einrichtunglisting-inline
– vCard wird behandelt, als würde sie innerhalb eines Absatzes verwendetlisting-landline
– Festnetztelefonnummer(n) der Einrichtunglisting-lastedit
– Datum der letzten Bearbeitunglisting-link-from-wd
– Der Artikellink wurde aus Wikidata bezogenlisting-link-is-redirect
– Der Artikellink wurde aus Wikidata bezogen und stellt eine Weiterleitung dar (immer zusammen mit der Klassemw-redirect
)listing-map
– Wrapper für den Kartographer-Markerlisting-map-inverse
– Inverse Textfarbe für den Kartographer-Markerlisting-map-is-symbol
– Symboldarstellung auf dem Kartographer-Markerlisting-map-is-error
– Fehlerhafter Markertyp oder Markergruppelisting-metadata
– Metadaten, Kompatibilität zur Vorlage Listing in WV/enlisting-metadata-items
– Metadateneinträge wie Änderungsdatum, Bearbeiten- und Info-Schalterlisting-mobile
– Mobiltelefonnummer(n) der Einrichtunglisting-name
– Bezeichnung der Einrichtunglisting-name-latin
– Bezeichnung der Einrichtung in der Landessprache in lateinischer Umschriftlisting-name-local
– Bezeichnung der Einrichtung in der Landespsrachelisting-phone
– Wrapper für alle Telefonnummern (Festnetz, Mobil, kostenfrei, Fax)listing-phone-number
– Einzelne Telefonnummer der Einrichtunglisting-price
– Preisangaben zur Einrichtunglisting-sister-icon
– Bildsymbole der Links zu den Wikimedia-Schwesterprojektenlisting-sister-commons
– Bildsymbol des Links zu Wikimedia Commonslisting-sister-wikidata
– Bildsymbol des Links zu Wikidatalisting-sister-wikipedia
– Bildsymbol des Links zur Wikidatalisting-sister-wikivoyage
– Bildsymbol des Links zu einem anderssprachigen Wikivoyagelisting-skype
– Skype-Name(n) der Einrichtunglisting-skype-link
– Einzelner Skype-Name der Einrichtunglisting-social-media
– Bildsymbole der Links zu sozialen Dienstenlisting-social-media-facebook
– Bildsymbol zim Facebook-Linklisting-social-media-flickr
– Bildsymbol zum Flickr-Linklisting-social-media-instagram
– Bildsymbol zum Instagram-Linklisting-social-media-twitter
– Bildsymbol zum Twitter-Linklisting-social-media-youtube
– Bildsymbol zum Youtube-Linklisting-subtype
– Wrapper für Untertypen der Einrichtunglisting-tollfree
– Kostenfreie Telefonnummer(n) der Einrichtunglisting-unesco
– Bildlink zum zugehörigen Unesco-Artikellisting-unused-redirect
– Der von Wikidata bezogene Wikivoyage-Sitelink ist eine Weiterleitung und wird deshalb nicht benutzt.listing-url
– Offizielle Website der Einrichtung
voy-lang
– Bestandteil in einer Fremdsprachevoy-lang-xx
– Bestandteil in der Fremdsprache mit dem ISO-639-1-Code xx
Übergeordnetes Listenelement
Bearbeitenlisting-status-item
– Klasse blendet das Listensymbol aus und formatiert die vCard mit hängendem Einzug.
Kartographer
Bearbeitenmw-kartographer-maplink
– umschließt das Markersymbol
Eingesetzte Datenbezeichner
BearbeitenDie nachfolgenden Angaben können von anderen Anwendungen genutzt werden und stammen zum Teil aus Wikidata.
Im Wrapper-Tag
Bearbeitendata-type
– Typ der Einrichtungdata-group
– Gruppe der Einrichtung, meist aus Typ bestimmtdata-group-translated
– Gruppe der Einrichtung in der Sprache des Wikis, wie sie in Kartendartsellungen benutzt wirddata-map-group
– Kartengruppe der Einrichtung, für Aufteilung auf verschiedene Karten vorgesehendata-color
– Farbwert zur Gruppe
data-name
– Bezeichnung der Einrichtungdata-name-local
– Bezeichnung der Einrichtung in der Amtssprache im Landdata-country
data-address-lang
– Sprache der Anschrift in der Landessprachedata-address-local
– Anschrift in der Landessprachedata-directions-local
– Wegbeschreibung in der Landessprachedata-subtype
– Merkmale der Einrichtung. Merkmale werden durch Semikolons getrennt. Jedes Merkmal besteht aus dem Typ, der Typgruppe und der Anzahl (Falls größer als 1). Der HTML-Parameter wird auch dann angegeben, wenn die Ausgabe im Text fehlt.data-country
– Landesangabe nach ISO 3166data-country-name
– Landesangabe in der Sprache des Wikis aus Modul:CountryData/Geographydata-location
– Ortsangabe, enthält den Namen des Artikels oder Unterartikelsdata-country-calling-code
– Telefon-Landesvorwahl im Landdata-country
data-lang
– Amtssprache im Landdata-country
data-lang-name
– Amtssprache im Landdata-country
in der Sprache des Wikisdata-wikilang
– Sprache des Wikisdata-dir="rtl"
– Schreibrichtung der Amtssprache im Landdata-country
data-wiki-dir="ltr"
– Schreibrichtung der Sprache des Wikisdata-currency
– Währungen im Landdata-country
data-section-from
– Artikel, aus dem die vCard als<section>
importiert wurde
data-image
– Bild der Einrichtungdata-wikidata
– Wikidata-Q-Identifikator der Einrichtungdata-commonscat
– Commons-Kategorie der Einrichtungdata-url
– Offizielle Website der Einrichtungdata-rss
– RSS-Web-Feed der Einrichtung
data-alpenverein-at
– ÖAV-Schutzhütten-IDdata-alpenverein-de
– DAV-Schutzhütten-IDdata-agora-com
– Hotel-ID auf Agora.comdata-booking-com
– Hotel-ID auf booking.comdata-expedia-com
– Hotel-ID auf expedia.comdata-historic-hotels-america
– Hotel-ID auf HistoricHotels.orgdata-historic-hotels-europe
– Hotel-ID auf HistoricHotelsOfEurope.comdata-historic-hotels-worldwide
– Hotel-ID auf HistoricHotelsWorldwide.comdata-hostelworld-com
– Hostel-ID auf Hostelworld.comdata-hotels-com
– Hotel-ID auf Hotels.comdata-kayak-com
– Hotel-ID auf Kayak.comdata-leading-hotels
– Hotel-ID auf LHW.comdata-preferred-hotels
– Hotel-ID auf PreferredHotels.comdata-pzs-si
– PZS-Schutzhütten-IDdata-recreation-gov
– Recreation.gov facility IDdata-relais-chateaux
– Hotel-ID auf RelaisChateaux.comdata-sac-cas-ch
– Schutzhütten-ID des Schweizer Alpen-Clubsdata-skyscanner-com
– Hotel-ID auf Skyscanner.comdata-trip-com
– Hotel-ID auf Trip.comdata-tripadvisor-com
– TripAdvisor-ID
data-foursquare-id
– Einrichtungs-ID auf Foursquare.comdata-google-maps-cid
– Google Maps Customer ID
Kartographer
Bearbeitendata-lat
– Geografische Breite in Dezimalformdata-lon
– Geografische Länge in Dezimalform
Teure Funktionsaufrufe
Bearbeitenmw.wikibase.getEntity( id )
– Aufruf des Wikidata-Datensatzesmw.title.new('Media:' .. image).exists
– Prüfung, ob Bild (image
) vorhandenframe:callParserFunction( name = '#coordinates', ... )
– Eintrag der Koordinaten in Mediawiki-Datenbankframe:extensionTag( ... )
– Aufruf von<maplink ...>
Wenn Daten aus Wikidata bezogen werden, dann sollte auch das Bild aus Wikidata stammen. Damit erspart man sich die teure Bildprüfung.
Aufbau
Bearbeiten<span class="vCard vcard h-card listing-edit/listing-no-edit" data-*= ... > / <div class="vCard vcard h-card" data-*= ...>
<!-- davon abhängig, ob Inline- oder Blockmodus; Daten siehe unten -->
<!-- Nur, wenn Koordinate angegeben -->
<span class="p-geo geo listing-coordinates" style="display: none">
<span class="p-latitude latitude">…</span>
<span class="p-longitude longitude">…</span>
</span> <!-- siehe unten -->
<span class="listing-image"><a …><img …></a></span>
[before-Text ]
<span class="plainlinks printNoLink poi listing-map" … title="Nummer in der Karte …"> <!-- Wrapper für Kartenmarker -->
<a class="mw-kartographer-maplink mw-kartographer-autostyled" … data-zoom="17" data-lat="30.047778" data-lon="31.233333" style="background: #4682B4;" …> [Nr] </a>
</span>
<!-- Die id wird aus dem Namen mit vorangestelltem 'vCard_' gebildet -->
[Leerraum]
<bdi id="vCard_.Ägyptisches_Museum_Kairo" class="p-name p-org fn org listing-name">
<a href="…"> <!-- Nur, wenn URL angegeben ist: kann intern oder extern sein -->
Ägyptisches Museum Kairo
</a>
</bdi>
<a rel="nofollow" class="external autonumber" href="…">[1]</a> <!-- wenn zweite URL -->
[Leerraum](
<span class="p-nickname nickname listing-alt">
<bdi class="listing-name-local wikidata-content voy-lang voy-lang-xx" lang="xx" dir="rtl" title="Name in der Landessprache …">…</bdi>,
<!-- wenn name-local -->
<span class="listing-name-latin" title="Name in lateinischer Umschrift" lang="xx-Latn">…</span>,[Leerraum]
<!-- wenn name-latin -->
<bdi>…</bdi> <!-- wenn alt -->
</span>,[Leerraum]
<bdi class="listing-comment">…</bdi>,[Leerraum] <!-- wenn comment -->
<!-- IATA- oder ICAO-Code (wenn IATA nicht vorhanden) -->
<span class="listing-airport listing-iata">
<a href="/wiki/International_Air_Transport_Association" title="International Air Transport Association">IATA</a>: <span class="listing-iata-code wikidata-content">…</span>
</span>
),[Leerraum]
<bdi class="p-adr adr listing-address">
<span class="p-street-address street-address">…</span>
</bdi> <!-- wenn address -->
<!-- wenn address-local -->
<span class="listing-add-info">,[Leerraum]
<bdi class="listing-address-local voy-lang voy-lang-xx" lang="xx" title="Anschrift in der Landessprache …" dir="rtl">ميدان التحرير</bdi>
</span>
(
<span class="listing-directions">…</span> <!-- wenn directions -->
<!-- wenn directions-local -->
<span class="listing-add-info">,[Leerraum]
<bdi class="listing-directions-local voy-lang voy-lang-xx" lang="xx" title="Lage in der Landessprache …" dir="rtl">…</bdi>
</span>
).[Leerraum]
<abbr title="Telefon">Tel.</abbr>:
<span class="p-tel tel listing-phone listing-landline">
<span class="plainlinks nourlexpansion listing-phone-number"><a rel="nofollow" class="external text" href="tel:+493023451234">+49 (0)30 2345 1234</a></span>
</span>,[Leerraum]
<abbr title="Telefon">Tel.</abbr> gebührenfrei:
<span class="p-tel tel listing-phone listing-tollfree">
<span class="plainlinks nourlexpansion listing-phone-number"><a rel="nofollow" class="external text" href="tel:+4980023451234">+49 (0)800 2345 1234</a></span>
</span>,[Leerraum]
Mobil:
<span class="p-tel tel listing-phone listing-mobile">
<span class="plainlinks nourlexpansion listing-phone-number"><a rel="nofollow" class="external text" href="tel:+4917623451234">+49 (0)176 2345 1234</a></span>
</span>,[Leerraum]
Fax:
<span class="p-tel-fax fax listing-fax">
<span class="listing-phone-number">+49 (0)30 2345 9876</span>,
<span class="listing-phone-number">(0)176 345 1234</span>
</span>,[Leerraum]
E-Mail:
<span class="u-email email listing-email">
<span class="plainlinks nourlexpansion"><a rel="nofollow" class="external text" href="mailto:info@hotel.de">info@hotel.de</a></span>
</span>,[Leerraum]
Skype:
<span class="listing-skype">
<span class="listing-skype-link">nutzer.name</span> <!-- Der Link wird per JavaScript erzeugt -->
</span>.[Leerraum]
<!-- Links zu Wikivoyage, Wikipedia, Commons -->
<span class="listing-sister-icon listing-sister-wikipedia"><a …><img …></a></span>
<span class="listing-sister-icon listing-sister-commons">…</span>
<span class="listing-sister-icon listing-sister-wikidata">…</span> <!-- Link zu Wikidata, einzeln ausblendbar -->
<!-- ein oder mehrere Links zu Social-Media-Diensten -->
<span class="listing-social-media listing-social-media-*" …><a …><img …></a></span>
…
<span class="listing-social-media listing-social-media-*" …><a …><img …></a></span>
<span class="listing-social-media listing-full-stop">.</span>[Leerraum]
<span class="p-note note listing-content">Beschreibung</span>
<span class="p-note note listing-hours">Geöffnet: 7/24.</span>[Leerraum]
<span class="listing-checkin">Check-in: ab 14 Uhr.</span>[Leerraum]
<span class="listing-checkout">Check-out: bis 12 Uhr.</span>[Leerraum]
<span class="p-note note listing-price">Preis: 100 €.</span>
<span class="p-note note listing-credit">Akzeptierte Zahlungsarten: Visa, Master, AmEx, Maestro.</span>
<span class="listing-subtype">Merkmale: [bar] [pool] [wlan].</span>
<img … /> <!-- Unesco-Symbol, wenn Eintrag in Wikidata -->
<span class="listing-dms-coordinates printNoLink plainlinks wikidata-content">(
<a class="external text" href="…">
<span class="coordStyle" title="Breitengrad">51° 25′ 26″ N</span> <span class="coordStyle" title="Längengrad">12° 14′ 11″ O</span>
</a>
)</span>
<span class="listing-metadata listing-metadata-items">
<!-- ohne Änderungsdatum -->
<span class="listing-metadata-item listing-lastedit" style="display:none"><span>letzte Änderung: keine Angabe</span></span>
<!-- mit Änderungsdatum -->
<span class="listing-metadata-item listing-lastedit"><span>letzte Änderung: Jun. 2020</span></span>
</span>
</div> / <span> <!-- davon abhängig, ob Inline- oder Blockmodus -->
Metadaten
BearbeitenDer vCard sind nicht sichtbare Metadaten vorangestellt, die von Skripten ausgewertet werden können, ohne dabei auf Wikidata zugreifen zu müssen.
<span / div ...
data-region="EG"
data-countrycode="+20"
data-lang="ar"
data-wikilang="de"
data-currency="EGP, LE, pt."
data-type="museum"
data-group="see"
data-color="#4682B4"
data-wikidata="Q201219"
data-commonscat="Egyptian_Museum_(Cairo)"
data-url="http://www.sca-egypt.org/eng/MUS_Egyptian_Museum.htm"
>
<span class="listing-image" style="display: none"><a ...><img ...></a></span>
Die letzte Zeile ist im Minerva-Skin wie folgt aufgebaut:
<span class="listing-image" style="display: none"><a ...><noscript><img ...></noscript><span class="lazy-image-placeholder" ... data-src= ...> </span></a></span>
Es folgt die Koordinate:
<span class="p-geo geo listing-coordinates" style="display: none">
<abbr class="p-latitude latitude">30.047778</abbr>
<abbr class="p-longitude longitude">31.233333</abbr>
</span>
Zusätzliche Klassen und Attribute im body
-Tag
Bearbeiten
voy-user-login
– zeigt an, dass der Leser ein angemeldeter Benutzer ist.
Die folgenden Attribute werden für den vCard-Editor/Listing-Editor benötigt und beim Initialisieren des Editors eingefügt:
data-currency
– Landeswährungendata-country-calling-code
– Landes-Telefonvorwahldata-dir
– Schreibrichtung der Amtssprachedata-lang
– Sprachcode der Amtssprachedata-lang-name
– Name der Amtssprachedata-local-calling-code
– Orts-Telefonvorwahldata-trunk-prefix
- Verkehrsausscheidungsziffer