XIP und XSLT mit Konvertierungen: Unterschied zwischen den Versionen

Aus SiteparkWiki
Zur Navigation springen Zur Suche springen
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
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.  
  
==Datum==
+
==IES Repository Anfragen==
 +
Erfolgen über die [[XIP und XSLT mit Repository Abfragen|Repository-Funktionen]]
 +
 
 +
==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.
 +
|}
 +
 
 +
==Hex==
 +
Klassenname: com.sitepark.xslt.Hex
 +
 
 +
{| class="prettytable"
 +
|- class="hintergrundfarbe1"
 +
|Funktionen
 +
|Bedeutung
 +
|-
 +
|encode(string)
 +
|Liefert den HEX incodierten Wert des übergebenen Textes.
 +
|-
 +
|encodeBase64String(base64String)
 +
|Liefert den HEX incodierten Wert des übergebenen Textes. Dieser wird vorher bas64 decodiert, was bei binären Daten aus einem AD hilfreich sein ist.
 +
|-
 +
|decode(string)
 +
|Liefert den dekodierten Hex Wert.
 +
|}
 +
 
 +
==Date==
 
  Klassenname: com.sitepark.xslt.Date
 
  Klassenname: com.sitepark.xslt.Date
  
Zeile 10: Zeile 58:
 
|-
 
|-
 
|convert(inputFormat, outpuFormat, datum)
 
|convert(inputFormat, outpuFormat, datum)
|Konvertiert das übergebene Datum vom angegebenen inputFormat in das gewünschte OutputFormat
+
|Konvertiert das übergebene Datum vom angegebenen [[Datumsformat|inputFormat]] in das gewünschte [[Datumsformat|OutputFormat]]
 
|-
 
|-
 
|convert(inputFormat, inputTimezone, outpuFormat, outputTimeZone, datum))
 
|convert(inputFormat, inputTimezone, outpuFormat, outputTimeZone, datum))
|Konvertiert das übergebene Datum vom angegebenen inputFormat in das gewünschte outputFormat auf Basis der angegebenen Zeitzonen
+
|Konvertiert das übergebene Datum vom angegebenen [[Datumsformat|inputFormat]] in das gewünschte [[Datumsformat|outputFormat]] auf Basis der angegebenen Zeitzonen
 +
|-
 +
|utcMilliseconds(inputFormat, date)
 +
|Konvertiert das [[Datumsformat|formatierte Datum]] zu Millisekunden
 +
|-
 +
|utcMilliseconds(inputFormat, inTimezone, date)
 +
|Konvertiert das [[Datumsformat|formatierte Datum]] der angegebenen Zeitzone zu Millisekunden
 
|}
 
|}
 
  
 
==Geo-Koordinaten==
 
==Geo-Koordinaten==

Aktuelle Version vom 16. April 2020, 15:41 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.

IES Repository Anfragen

Erfolgen über die Repository-Funktionen

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.

Hex

Klassenname: com.sitepark.xslt.Hex
Funktionen Bedeutung
encode(string) Liefert den HEX incodierten Wert des übergebenen Textes.
encodeBase64String(base64String) Liefert den HEX incodierten Wert des übergebenen Textes. Dieser wird vorher bas64 decodiert, was bei binären Daten aus einem AD hilfreich sein ist.
decode(string) Liefert den dekodierten Hex Wert.

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>