XIP und XSLT mit Konvertierungen: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Hying (Diskussion | Beiträge) (→Datum) |
Hying (Diskussion | Beiträge) (→Datum) |
||
Zeile 1: | Zeile 1: | ||
Während der Importe kann es nötig sein verschiedene Werte wie Geo Koordinaten oder die Angabe eines Datum umzurechnen. Die folgenden Funktionen können hier hilfreich sein. | Während der Importe kann es nötig sein verschiedene Werte wie Geo Koordinaten oder die Angabe eines Datum umzurechnen. Die folgenden Funktionen können hier hilfreich sein. | ||
− | == | + | ==Base64== |
+ | Klassenname: com.sitepark.xslt.Base64 | ||
+ | |||
+ | {| class="prettytable" | ||
+ | |- class="hintergrundfarbe1" | ||
+ | |Funktionen | ||
+ | |Bedeutung | ||
+ | |- | ||
+ | |encode(inputStr) | ||
+ | |Enkodiert den angegebenen Text Base64. | ||
+ | |- | ||
+ | |decode(inputStr) | ||
+ | |Dekodiert den übergebenen base64 encodierten Text. | ||
+ | |} | ||
+ | |||
+ | ==MD5== | ||
+ | Klassenname: com.sitepark.xslt.MD5 | ||
+ | |||
+ | {| class="prettytable" | ||
+ | |- class="hintergrundfarbe1" | ||
+ | |Funktionen | ||
+ | |Bedeutung | ||
+ | |- | ||
+ | |md5(inputStr) | ||
+ | |Liefert den MD5 Hash des übergebenen Textes. | ||
+ | |} | ||
+ | |||
+ | ==Date== | ||
Klassenname: com.sitepark.xslt.Date | Klassenname: com.sitepark.xslt.Date | ||
Version vom 16. Juli 2019, 07:16 Uhr
Während der Importe kann es nötig sein verschiedene Werte wie Geo Koordinaten oder die Angabe eines Datum umzurechnen. Die folgenden Funktionen können hier hilfreich sein.
Base64
Klassenname: com.sitepark.xslt.Base64
Funktionen | Bedeutung |
encode(inputStr) | Enkodiert den angegebenen Text Base64. |
decode(inputStr) | Dekodiert den übergebenen base64 encodierten Text. |
MD5
Klassenname: com.sitepark.xslt.MD5
Funktionen | Bedeutung |
md5(inputStr) | Liefert den MD5 Hash des übergebenen Textes. |
Date
Klassenname: com.sitepark.xslt.Date
Funktionen | Bedeutung |
convert(inputFormat, outpuFormat, datum) | Konvertiert das übergebene Datum vom angegebenen inputFormat in das gewünschte OutputFormat |
convert(inputFormat, inputTimezone, outpuFormat, outputTimeZone, datum)) | Konvertiert das übergebene Datum vom angegebenen inputFormat in das gewünschte outputFormat auf Basis der angegebenen Zeitzonen |
utcMilliseconds(inputFormat, date) | Konvertiert das formatierte Datum zu Millisekunden |
utcMilliseconds(inputFormat, inTimezone, date) | Konvertiert das formatierte Datum der angegebenen Zeitzone zu Millisekunden |
Geo-Koordinaten
Klassenname: com.sitepark.xslt.Geo
Funktionen | Bedeutung |
toDouble | Hilfsfunktion, um numerische Werte als Double darzustellen/zu übergeben. |
dhdnToWgs84GeoJson(String epsg, String west, String north) | Gauß-Krüger-Koordinaten im GeoJson-Format |
dhdnToWgs84Wkt(String epsg, String west, String north) | Gauß-Krüger-Koordinaten im Wkt-Format |
utmToWgs84GeoJson(String epsg, String west, String north) { | Utm-Koordinaten im GeoJson-Format |
utmToWgs84Wkt(String epsg, String west, String north) | Utm-Koordinaten im Wkt-Format |
wgs84GeoJson(String lat, String lng) | Lon, Lat Werte im GeoJson-Format |
wgs84Wkt(String lat, String lng) | Lon, Lat Werte im Wkt-Format |
Beispiel-XSLT
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:geo="com.sitepark.xslt.Geo"
xmlns:date="com.sitepark.xslt.Date" >
<xsl:output method="xml" encoding="UTF-8" indent="yes"/>
<xsl:variable name="solrDateFormat">yyyy-MM-dd'T'HH:mm:ss'Z'</xsl:variable>
<xsl:template match="/">
<!-- Datumsberechnungen mit den xml-Daten 'DATES/STARTDATE' -->
<field name="sp_date"><xsl:value-of select="date:convert('yyyy-MM-dd','Europe/Berlin',$solrDateFormat, 'Zulu', DATES/STARTDATE)" /></field>
<!-- Geo-Umrechnungen mit den xml-Daten 'LOCATION/LONGITUDE' und 'LOCATION/LATITUDE' -->
<field name="sp_jsondata_geo"><xsl:value-of select="geo:wgs84GeoJson(LOCATION/LONGITUDE, LOCATION/LATITUDE)" /></field>
<field name="sp_geo_points"><xsl:value-of select="geo:wgs84Wkt(LOCATION/LONGITUDE, LOCATION/LATITUDE)" /></field>
</xsl:template>
</xsl:stylesheet>