Hi Eric,
In XPath, each `/` says to go down the XML tree hierarchy once, and a
double slash (`//`) says "I don't care how far down I have to go from my
starting position, get me all descendants that match the next thing I
specify". So you can use a slightly more explicit XPath to find what you
need:
`//teiHeader//author` -> "Go to <teiHeader>, then get all its descendant
<author>s"
`//text//author` -> "Go to <text>, then get all its descendant <author>s"
To get counts in pure XPath (you'll have to check if your parser can
handle functions like this), you can use the count function:
`count(//teiHeader//author)` -> "Get a count of the results for
`//teiHeader//author`"
Hope this helps!
Best,
Ashley
--
Ashley M. Clark
XML Applications Developer
Digital Scholarship Group
Northeastern University Libraries
[log in to unmask] <mailto:[log in to unmask]>
(617) 373-5983
On 1/9/17 11:55 AM, Eric Lease Morgan wrote:
> I have an XPath question, and more specifically, how can I determine the number of author elements found an a TEI header?
>
> I would like to create summary files similar to the files created by the late Sebastian Rantz and found on GitHub. [1] I can easily determine the number of author elements found in an entire TEI file with a Perl-esque XPath statement similar to this:
>
> $parser->find( ā//author" )->size
>
> But Iād like to know how to limit the finding of author elements to only the teiheader or text elements.
>
> [1] see, for example - https://github.com/textcreationpartnership/A00002
>
> ā
> Eric Morgan
|