The different Marmotta components can register custom LDPath functions to extend the LDPath functionality.
Currently, the following LDPath all available functions (the ones actually registered can be lively checked at http://host/to/marmotta/ldpath/admin/functions.html):
Name | Signature | Description |
---|---|---|
cleanHtml | fn:cleanHtml(content: LiteralList) : LiteralList | Function to clean up HTML and remove all script and style elements from the content. Can be used in-path, using the current context nodes as argument. |
concat | fn:concat(nodes : NodeList) : String | A node function concatenating a list of nodes interpreted as strings. |
content | fn:content(nodes : URIResourceList) : LiteralList | Resolve the URIs passed as argument and retrieve their content using the content reader applicable for the resource. |
count | fn:count(nodes : URIResourceList, ...) : IntegerLiteralList | Counts the number of resources in the arguments |
css | fn:css(jsoup: String [, nodes: XMLLiteralList]) : LiteralList | Evaluate an JSoup CSS selector on either the value of the context node or the values of the nodes passed as arguments. |
earliest | fn:earliest(DateLiteralList): DateLiteral | select the earliest date (min) |
first | fn:first(nodes : NodeList) : Node | Selects the first node in the argument list. |
htmlText | fn:htmlText(content: LiteralList) : LiteralList | strips all html tags and resolves html-entities like & |
jsoup | fn:jsoup(jsoup: String [, nodes: XMLLiteralList]) : LiteralList | Evaluate an JSoup CSS selector on either the value of the context node or the values of the nodes passed as arguments. |
last | fn:last(nodes : NodeList) : Node | Returns the last element in the node list. |
latest | fn:latest(DateLiteralList): DateLiteral | Select the latest date (max) |
max | fn:max(LiteralList l [, ...]) :: NumberLiteral(s) | Select the max of each argument |
min | fn:min(LiteralList l [, ...]) :: NumberLiteral(s) | Sselect the min of each argument |
removeTags | fn:removeTags(content: LiteralList) : LiteralList | Function to remove all XML or HTML tags from the content. Can be used in-path, using the current context nodes as argument. |
replace | fn:replace(nodes: NodeList, regex: String, replace: String) :: NodeList | Applies a String.replaceAll on the nodes (URI or LiteralContent resp.). |
round | fn:round(LiteralList l) :: IntegerLiteralList | Round each argument to the closest int/long value |
sort | fn:sort(nodes : NodeList [, ("string"|"number"|"date") [, ("asc"|"desc") ] ]) : NodeList | Sort the node list passed as first argument. The second argument can be used to determine the sort method, the third argument to determine the sort direction. |
strJoin | fn:strJoin(nodes: NodeList, separator: String [, prefix: String [, suffix: String ]]) :: LiteralList | join the string representation of all provided nodes. |
strLeft | fn:strLeft(node::Node, length::NumericLiteral) :: StringLiteral | Take the first n chars from the string representation |
strlen | fn:strlen(text: Literal) : IntegerLiteralList | Returns the length of the given StringLiterals |
strRight | fn:strRight(node::Node, length::NumericLiteral) :: StringLiteral | Take the last n chars from the string representation |
substr | fn:substr(node::Node, start::NumericLiteral [, end::NumericLiteral]) :: StringLiteral | Extract a substring for the string representation of a node |
wc | fn:wc(text : LiteralList) : IntegerLiteralList | Calculates the length of the provided literals (counting continuous chunks of letters+digits) |
xmlText | fn:xmlText(content: LiteralList) : LiteralList | Function to remove all XML-Tags and -Entities (&...; stuff) from the content. |
xmlUnescape | fn:xmlUnescape(content: LiteralList) : LiteralList | Function to resolve all xml-entities in the content |
xpath | fn:xpath(xpath: String [, nodes: XMLLiteralList]) : LiteralList | Evaluate an XPath expression on either the value of the context node or the values of the nodes passed as arguments. |
Legend: