Xml 是否有一种使用saxon从文本列表调用xQuery函数的方法?

Xml 是否有一种使用saxon从文本列表调用xQuery函数的方法?,xml,xquery,saxon,xquery-3.0,oracle-osm,Xml,Xquery,Saxon,Xquery 3.0,Oracle Osm,我有下面的XML <?xml version="1.0" encoding="UTF-8"?> <SpecializedActions> <SpecializedAction> <Name>ActivateAAA_Account</Name> <Function>holaaalib:activate($csmHea

我有下面的XML

<?xml version="1.0" encoding="UTF-8"?>
    <SpecializedActions>
        <SpecializedAction>
            <Name>ActivateAAA_Account</Name>
            <Function>holaaalib:activate($csmHeader, $component, $taskName, $osmOrderId)</Function>
        </SpecializedAction>
        <SpecializedAction>
            <Name>ActivateIMSAccount</Name>
            <Function>imsLib:activate($csmHeader, $component, $taskName, $osmOrderId)</Function>
        </SpecializedAction>
    </SpecializedActions>

但这样它将返回一个文本“imsLib:activate($csmHeader,$component,$taskName,$osmOrderId)”。是否有方法将其转换为xQuery表达式?

XSLT 3.0有一条指令
xsl:evaluate
,可用于计算从源文档读取的XPath表达式(或在运行时以其他方式变出的表达式)。XQuery中没有标准的等价物(尽管原则上可以使用动态调用XSLT转换的
fn:transform()


Saxon PE和更高版本有一个扩展名
Saxon:evaluate()
它的功能与XQuery基本相同,可以从XQuery中调用。

哪个版本、哪个版本的Saxon?这些都是XQuery完成的吗?或者为什么XSLT也有一个标记?Oracle在哪里适合?您选择这些标记但忽略了Saxon标记有什么原因吗?XQuery 1.0、Saxon EE 9.8.0.12是的,所有这些都是XQuery完成的.XSLT是一个错误。Oracle适合这样做,因为它涉及Oracle的订单和服务管理
if (fn:exists($specializedAList/SpecializedAction[Name/text() = $specializedActionName])) then
    $specializedAList/SpecializedAction[Name/text() = $specializedActionName]/Function/text()