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>