2012-03-15 6 views
0

Я на MacOSX 10.7, и с libxml2 версии, как я могу видеть из libxml2/xmlversion.h являетсяКак известно, поддержка LibXSLT EXSLT или не

определяют LIBXML_DOTTED_VERSION «2.7.3»

это означает, что 2.7.3

Мое приложение также использует XSLT, так что имеет процессор LibXSLT, который поставляется вместе с libxml2

часть файла может содержит математическую функцию, что-то вроде этого,

<xsl:variable name="angle" 
      select="math:atan2(30, 30) 
       - math:atan2(30, 30)"/> 

происходит через сайт http://www.exslt.org/howto.html он говорит, процессор XSLT должен поддерживать EXSLT функции,

ли кто-нибудь имеет какие-либо идеи, как я могу подтвердить это?

ответ

0

Некоторые, как я получил это фиксированный, ниже шаги, 1 - я должен был установить libxml2 и удалить ссылку на libxml2, который был доступен через SDK, 2 - Компиляция LibXSLT тоже, и не включают в которой есть в SDK, 3 - в исходном коде перед применением стилей вызова любой из этих функций

EXSLTPUBFUN void EXSLTCALL exsltMathRegister (void); 
EXSLTPUBFUN void EXSLTCALL exsltSetsRegister (void); 
EXSLTPUBFUN void EXSLTCALL exsltFuncRegister (void); 
EXSLTPUBFUN void EXSLTCALL exsltStrRegister (void); 
EXSLTPUBFUN void EXSLTCALL exsltDateRegister (void); 
EXSLTPUBFUN void EXSLTCALL exsltSaxonRegister (void); 
EXSLTPUBFUN void EXSLTCALL exsltDynRegister(void); 

4 - вы, возможно, потребуется изменить файл XSL включить пространство имен для математики и к импорт

xmlns:math="http://exslt.org/math" 
    xmlns:jDouble="java.lang.Double" 
    exclude-result-prefixes="v math" 
    xmlns="http://www.w3.org/2000/svg" 
    version="1.0"> 
    <xsl:import href="math.xsl" /> 

Спасибо, что посмотрели на него.