advertisement

Neues von XSLT 2.0 und XPath 2.0

100 %
0 %
advertisement
Information about Neues von XSLT 2.0 und XPath 2.0

Published on March 18, 2008

Author: obelikan

Source: slideshare.net

Description

Was tut sich neues in XSLT und XPATH 2.0?
advertisement

XSLT 2.0 und XPath 2.0 »Workshop Technology Days 2008« Stand: Februar 2008 Version: 1.1 doubleSlash Edmund Hierlemann Net-Business GmbH Tel.: 07541-70078-0 Otto-Lilienthal-Str. 2 info@doubleSlash.de D-88046 Friedrichshafen http://blog.doubleSlash.de Folie 1

»Überblick und Inhalt« Neuerungen zu den Versionen 2.0 > Warum XSLT 2.0 und XPath 2.0? > XSLT 2.0 Features und Syntax.  Beispiel-Code. > XPath 2.0 Features und Syntax.  Beispiele-Code. > Welche XSLT-Prozessoren existieren? > Fragen? Folie 2

»Warum XSLT 2.0 und XPath 2.0« XSLT 1.0  > Spezifikationen 1.0 ist über 8 Jahre alt.  > Verarbeitung erfolgt immer über Trees (RTFs).  > Rekursive Aufrufe als Workaround für Schleifen.  > Funktionen mit Rückgabe nicht möglich.  > … Folie 3

»Warum XSLT 2.0 und XPath 2.0« XPath 1.0 >• Spezifikation ist über 8 Jahre alt. >• Typsicherheit. >• Keine Schleifen in XPath möglich. >• Keine if-then-else Möglichkeit in XPath. >• Stark eingeschränkte Anzahl an Funktionen (Search-replace,…) >• …. EXSLT bietet Workaround-Packages an. Folie 4

»XSLT 2.0 und XPath 2.0« ...da war doch noch was XSLT 2.0 und XPath 2.0 löst viele Probleme… …aber nicht alle. Folie 5

»XSLT 2.0 und XPath 2.0« Features und Syntax  Beispiele gefällig? Folie 6

»XSLT 2.0« Sequenzen  anstelle der RTF (result tree <xsl:variable name=quot;sequencequot; fragments) werden sequenzen erstellt select=quot;(1,2,3,4,5,6,1,1,2)quot;/>  Listen aller möglichen typen Distinct  direkte Erzeugung mit (...) <xsl:value-of select=quot;distinct- values($sequence)quot;/> <xsl:value-of select=quot;(1,2,3,4,5,6)quot;/> Reverse <xsl:value-of select=quot;reverse($sequence)quot;/> Separator RTF <xsl:value-of <xsl:value-of select=quot;(1,2,3,4,5,6)quot; select=quot;/personnel/person/name/givenquot;/> separator=quot;, quot;/> bei value-of select werden aufgrund der Result-Sequenzen jetzt nicht nur der erste, sondern alle knoten gefunden. Folie 7

»XSLT 2.0« Datentypen  string Datentypen sicherstellen  double <xsl:variable name=quot;test” as=quot;xs:integerquot;>12</xsl:variable>  integer <xsl:value-of select=quot;$test instance of xs:integerquot;/>  Boolean aber auch:  dateTime  gDay  gMonth  anyURI  ... uvm. Folie 8

»XSLT 2.0« Funktionen <!-- function addierer --> <xsl:function name=quot;a:addiererquot;> <!-- Datentyp-Unterstützung --> <xsl:param name=quot;numberquot; as=quot;xs:integerquot;/> <xsl:param name=quot;number2quot; as=quot;xs:integerquot;/> <xsl:value-of select=quot;$number + $number2quot;/> </xsl:function> Folie 9

»XSLT 2.0« Gruppen <xsl:function name=quot;a:groupquot;> <xsl:param name=quot;contextquot;></xsl:param> <xsl:for-each-group select=quot;$context/personquot; group-by=quot;originquot;> <xsl:sort select=quot;current-grouping-key()quot; order=quot;descendingquot; /> Origin: <xsl:value-of select=quot;current-grouping-key()quot;/><br/> <xsl:for-each select=quot;current-group()quot; > <xsl:value-of select=quot;name/givenquot;/><xsl:text> </xsl:text><xsl:value-of select=quot;name/familyquot;/> <xsl:if test=quot;position() != last()quot;>,</xsl:if> </xsl:for-each> <br/><br/> </xsl:for-each-group> </xsl:function> Folie 10

»XSLT 2.0« Analyze String mit Regexp Unterstützung <xsl:template match=quot;commentquot;> <xsl:analyze-string select=quot;.quot; regex=quot;S.*quot; flags=quot;mquot;> <xsl:matching-substring> <b><xsl:value-of select=quot;.quot; /></b><br/> </xsl:matching-substring> </xsl:analyze-string> </xsl:template> Folie 11

»XPath 2.0« to-Operator <xsl:value-of select=quot;1 to 6quot;/> keine rekursionen mehr <xsl:for-each select=quot;personnel/personquot;> <xsl:value-of select=quot;name/givenquot;/><xsl:text> </xsl:text><xsl:value-of select=quot;name/familyquot;/>: Importance factor: <xsl:for-each select=quot;(1 to count(email))quot;> * </xsl:for-each> <br/> </xsl:for-each> Folie 12

»XPath 2.0« Schleife und Bedingung Schleife -> spart rekursive aufrufe <xsl:value-of select=quot;for $i in (1 to 6) return $i*2[$i > 2]quot;/> If then else -> spart choose when <xsl:variable name=quot;testquot; as=quot;xs:integerquot;>100</xsl:variable> <xsl:value-of select=quot;if ($test ge 100) then 'gross' else 'klein'quot;/> Folie 13

»XPath 2.0« Suche und Datumsfunktionen search-replace <xsl:variable name=quot;testquot; as=quot;xs:stringquot;>doubleSlash ist super super Super toll.</xsl:variable> <xsl:value-of select=quot;replace($test,'super','ganz')quot;/> mit regexp <xsl:value-of select=quot;replace($test,'W','&lt;br&gt;')quot; disable-output- escaping=quot;yesquot;/> Datumsfunktionen <xsl:variable name=quot;heutequot; select=quot;current-date()quot; as=quot;xs:datequot;/> normal <xsl:value-of select=quot;$heutequot;/> formatiert <xsl:value-of select=quot;format-date($heute,'[D01].[M01].[Y0001]')quot;/> Folie 14

»XSLT 2.0 und XPath 2.0« Wann kann ich das jetzt nutzen? Folgende XSLT Prozessoren unterstützen die 2.0 Features bislang: Saxon 9b. Altova XML 2008. Keine konkreten Angaben, ob und wann 2.0 eingeführt wird bei: Xalan Microsoft MSXML (.NET) Folie 15

»XSLT 2.0 und XPath 2.0« Referenzen > Thomas Meinike http://www.iks.hs-merseburg.de/~meinike/ > D. Pawson http://www.dpawson.co.uk/xsl/rev2/rev2.html > Jeni Tennison http://www.jenitennison.com/xslt/ > W3C http://www.w3.org/TR/xslt20/ http://www.w3.org/TR/xpath20/ Folie 16

Vielen Dank! Für mehr Informationen und weitere Fragen: »Kontaktiern Sie uns unter 07541-70078-0 oder info@doubleSlash.de« doubleSlash Edmund Hierlemann Net-Business GmbH Tel.: 07541-70078-0 Otto-Lilienthal-Str. 2 info@doubleSlash.de D-88046 Friedrichshafen http://blog.doubleSlash.de Folie 17

Add a comment

Related pages

XSLT 2.0 und XPath 2.0 für Praktiker - iks.hs-merseburg.de

– neues Attribut separator – select darf ab 2.0 ... XSLT 2.0 und XPath 2.0 für Praktiker – Neuerungen im Überblick [26] XPath 2.0-Erweiterungen
Read more

Update XSLT - Neuerungen in der Version XSLT 2.0

... der Anwender wurden als Erweiterungen in die XSLT Prozessoren eingebaut und fanden nun Eingang in die Spezifikation von XSLT/XPath 2.0 ... Neues ...
Read more

XQuery 1.0 sowie XSLT und XPath 2.0 veröffentlicht - Golem.de

... (XSLT) 2.0 und XML Path Language (XPath) ... XSLT 2.0 erweitert den 1999 festgelegten Standard XSLT 1.0 um Funktionen zur Umwandlung und Darstellung ...
Read more

Mit XSLT 2.0 und XPath 2.0 endlich einfach Gruppieren ...

... Einschränkungen und Probleme bei der Entwicklung mit XSLT 2.0. [slideshare 311680 neues-von-xslt-20-und-xpath-20 ... XSLT 2.0 und XPath 2.0 für ...
Read more

XSL Transformation – Wikipedia

... Ein XML-Dokument wird mittels eines XSLT-Dokuments und eines verarbeitenden Prozessors in ein neues ... XSLT 2.0, XPath 2.0 ... XSLT 2.0 Handbuch ...
Read more

World Wide Web Consortium gibt XSLT 2.0, XPath 2.0 und ...

... XPath 2.0 und XQuery 1.0 ... XSLT 2.0 standardisiert ... Mit der Standardisierung beginnt ein neues Zeitalter für Middleware. XSLT 2.0 und XML Query 1 ...
Read more

XML Path Language (XPath) - dret.net

... (XPath 2.0) zXPath als Grundlage ... zkomplexere XPaths oder mehr XSLT Code? {XPath wichtigste Grundlage für Umgang ... Ausblick auf XPath 2.0 ...
Read more

XSLT 2.0 verstehen - OIO

5 9 © 2004 Orientation in Objects GmbH XSLT 2.0 verstehen Wortkunde Read more

data2type GmbH: Neue Fähigkeiten der XSLT 1.0-Eigenschaften

... XSLT 2.0 & XPath 2.0; Vorträge; Übersetzungen; ... In XSLT 2.0 gibt es zahlreiche kleine ... Ein neues xpath-default-namespace-Attribut legt den ...
Read more