getLineNumber: Determine the location - file & line number of an (internal)...

View source: R/xincludes.R

getLineNumberR Documentation

Determine the location - file & line number of an (internal) XML node


The getLineNumber function is used to query the location of an internal/C-level XML node within its original "file". This gives us the line number. getNodeLocation gives both the line number and the name of the file in which the node is located, handling XInclude files in a top-level document and identifying the included file, as appropriate. getNodePosition returns a simplified version of getNodeLocation, combining the file and line number into a string and ignoring the XPointer component.

This is useful when we identify a node with a particular charactestic and want to view/edit the original document, e.g. when authoring an Docbook article.


getLineNumber(node, ...)
getNodeLocation(node, recursive = TRUE, fileOnly = FALSE)



the node whose location or line number is of interest


additional parameters for methods should they be defined.


a logical value that controls whether the full path of the nested includes is returned or just the path in the immediate XInclude element.


a logical value which if TRUE means that only the name of the file is returned, and not the xpointer attribute or line number .


getLineNumber returns an integer. getNodeLocation returns a list with two elements - file and line which are a character string and the integer line number.

For text nodes, the line number is taken from the previous sibling nodes or the parent node.


Duncan Temple Lang



See Also

findXInclude xmlParse getNodeSet xpathApply


f = system.file("exampleData", "xysize.svg", package = "XML")
doc = xmlParse(f)
e = getNodeSet(doc, "//ellipse")
sapply(e, getLineNumber)

XML documentation built on Oct. 29, 2022, 1:13 a.m.

Related to getLineNumber in XML...