Подтвердить что ты не робот

Какую версию XPATH и XSLT я использую...?

Как узнать, какую версию XPATH и XSLT я использую...?

Скажем, я установил JDK 1.7, а какая версия XPATH и XSLT у меня есть.?

4b9b3361

Ответ 1

В XSLT вызовите system-property('xsl:version'). Он вернет 1.0 или 2.0 в зависимости от того, используете ли вы процессор 1.0 или 2.0.

В XPath нет прямого эквивалента. Но быстрый тест - вызвать current-date() без аргументов. Если это удастся, у вас есть процессор 2.0, если он терпит неудачу, у вас есть процессор 1.0.

Если вы не предпримете шаги для установки 2.0-процессора, такого как Saxon, на пути вашего класса или в одобренной библиотеке, то XSLT-процессор, который дает JDK, будет (сегодня) быть процессором 1.0.

Ответ 2

Хорошо, если вы используете Java, тогда у вас есть выбор процессоров XSLT и XPath. Одна встроенная в JDK (я знаю только 1.6, но я не думаю, что она изменилась в версии 1.7) - это Apache Xalan, который является процессором XSLT и XPath 1.0. Однако существуют сторонние решения, такие как Saxon 9, которые поддерживают XSLT и XPath 2.0. И, конечно же, есть дополнительные версии XQuery 1.0 для Java, поскольку XPath 2.0 является подмножеством XQuery 1.0, у вас есть дополнительные возможности, если вы заинтересованы в XPath 2.0.

Ответ 3

Попробуйте

java com.sun.org.apache.xalan.internal.xslt.EnvironmentCheck

Например, для меня это печатает

#---- BEGIN writeEnvironmentReport($Revision: 1.10 $): Useful stuff found: ----
java.version=1.7.0_11
version.xalan2x=not-present
version.JAXP=1.4
java.ext.dirs=/usr/lib/jvm/java-7-oracle/jre/lib/ext:/usr/java/packages/lib/ext
version.SAX=2.0
version.crimson=not-present
java.class.path=.
version.ant=not-present
sun.boot.class.path=/usr/lib/jvm/java-7-oracle/jre/lib/resources.jar:/usr/lib/jvm/java-7-oracle/jre/lib/rt.jar:/usr/lib/jvm/java-7-oracle/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jsse.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jce.jar:/usr/lib/jvm/java-7-oracle/jre/lib/charsets.jar:/usr/lib/jvm/java-7-oracle/jre/lib/jfr.jar:/usr/lib/jvm/java-7-oracle/jre/classes
version.DOM=3.0
version.xalan1=not-present
version.xalan2_2=Xalan Java 2.7.0
version.xerces2=Xerces-J 2.7.1
version.xerces1=not-present
#----- END writeEnvironmentReport: Useful properties found: -----
# YAHOO! Your environment seems to be OK.

Ответ 4

  <xsl:comment>
    XSLT Version = <xsl:copy-of select="system-property('xsl:version')"/>
    XSLT Vendor = <xsl:copy-of select="system-property('xsl:vendor')"/>
    XSLT Vendor URL = <xsl:copy-of select="system-property('xsl:vendor-url')"/>
  </xsl:comment>