B.1. Un ejemplo

Para ver como funciona este script, veamos un ejemplo. Vamos a analizar los documentos contenidos en el directorio desde donde se ejecuta el script. Supongamos que en dicho directorio sólo se encuentra un fichero XML con el siguiente contenido:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
                  "file:///usr/share/sgml/docbook/dtd/xml/4.1.2/docbookx.dtd">
<article id="article">
	<articleinfo>
		<title>Unit Test: article.001.xml</title>
		<releaseinfo role="CVS">$Id: reduccion_dtd_docbook.xml,v 1.1
			2002/09/09 20:57:14 sergio Exp $</releaseinfo>
		<authorgroup>
			<author><firstname>Norman</firstname><surname>Walsh</surname>
				<affiliation><address><email>[email protected]</email></address></affiliation>
			</author>
			<author><firstname>Jane</firstname><surname>Doe</surname></author>
		</authorgroup>
		<abstract>
			<para>This is the abstract.</para>
			<para>It has several paras.</para>
			<para>It has several paras.</para>
		</abstract>
	</articleinfo>

	<para>This is an article tests.</para>

	<ackno>I'd like to thank all the tests that came before me.</ackno>

</article>

Al ejecutar el script sobre este directorio, obtendremos la siguiente salida:

[fys@todoscsi]$ ./contador_tags.pl ./


Buscando los documentos... [Hecho]

Analizando la validez de los documentos... [Hecho]

Buscando etiquetas... [Hecho]

Contando las etiquetas... [Hecho]

A continuación se mostrarán las etiquetas y el número de apariciones:

Número                  Etiquetas
apariciones

2                       firstname
1                       ackno
4                       para
2                       author
2                       surname
1                       authorgroup
1                       email
1                       article
1                       affiliation
1                       title
1                       articleinfo
1                       address
1                       abstract
1                       releaseinfo
[fys@todoscsi]$