PERMITIR ANALITICA DE WEB PARA APLICACIONES WEB INTERACTIVAS
ANTECEDENTES
El desarrollo de Internet o la Gran Red Mundial ha incluido el desarrollo de diferentes técnicas para presentar información, tal como páginas web, a un usuario. El JavaScript y XML asincrónicos ("AJAX") es una técnica de desarrollo web para crear aplicaciones web interactivas. El intento detrás de una página web habilitada por AJAX es hacer a la página web que se perciba más en respuesta al intercambiar sólo pequeñas cantidades de datos con un servidor para que la página web completa no tenga que recargarse cada vez que un usuario hace un cambio. Esto significa aumentar la i nteractividad de la página web, velocidad y utilidad. Sin embargo, el hecho que AJAX permita a las páginas web actualizarse con el requerimiento para solicitar una página completa de HTML cada vez que se hace un cambio, posee problemas especiales del campo de analítica web. La analítica web, hablando ampliamente, es la medida de un comportamiento de usuario mientras visitan e interactúan con un sitio web y/o página web. Actualmente, existen dos aspectos tecnológicos ampliamente utilizados para recolectar datos de analítica web, análisis de archivo de registro y etiquetado de página. Los análisis de archivo de registro registran cada transacción hecha entre un cliente y un
servidor web. El análisis de archivo de registro de esa forma resulta en grandes archivos de datos. Estos grandes archivos de datos frecuentemente resultan en problemas de desempeño y un retraso al obtener información significativa. Además, la llamada inicial de una transacción puede rastrearse con análisis de archivo de registro de servidor web, un problema surge cuando la llamada al servicio web regresa a un grupo de datos rico. AJAX hace posible descargar un grupo de datos rico (por ejemplo, datos de XML) del servidor web y almacenarlos en una memoria de navegador. Esto a su vez hace posible para un usuario ¡nteractuár con una página web (por ejemplo, dar clic en un enlace) sin ninguna transacción que se lleve a cabo entre el cliente y el servidor. Por lo tanto, el análisis de archivo de registro es incapaz de rastrear éstas interacciones para llevarse a cabo solamente en el cliente y sin una llamada al servidor web. Así al utilizar registros de archivo de registro cuando las páginas de AJAX se utilizan presentan una imagen completa de la interacción de usuario con el sitio web. El otro aspecto para recolectar datos analíticos es etiquetado de páginas de JavaScript. El etiquetado de página utiliza una vista de página como un evento de rastreo básico. Una ventaja de etiquetado de página es el grupo de datos menor típicamente resultante, cuando se compara con el análisis de archivo de registro. También, al utilizar JavaScript, el etiquetado de página utiliza una pequeña imagen visible para pasar junto con la solicitud de imagen cierta información sobre la página y el visitante. Esta información
entonces puede procesarse por una compañía de analítica web u otra entidad de procesamiento. Esto permite otra ventaja en etiquetado de página, en cuanto a que los datos típicamente se envían a un servidor de rastreo para procesamiento a tiempo. Esto permite a los reportes generarse de datos que sólo son de algunos minutos. En contraste, el análisis de archivo de registro típicamente se hace por registros de pos-procesamiento del día previo. Así las analíticas web pueden subcontratarse para una tercera parte. El etiquetado de página también se extendió de simple rastreo de vista de página, a rastreo de una selección de un híper vínculo. Una forma de realizar esto es al colocar el JavaScript en cada híper vínculo. Sin embargo, los sitios web típicamente están compuestos de híper vínculos incontables, para que instrumentar cada uno de los vínculos individualmente no sea práctico. Por lo tanto, los desabolladores toman ventaja del hecho que páginas web son estáticas al ejecutar JavaScript que se une a cada hipervinculo actualmente existente en una página. Esto trabaja debido a' que la página es estática. Una vez que se presenta una página, existe un grupo estático de HTML y un grupo estático de hipervínculos; por lo tanto, es posible enumerar cada hipervinculo y modificar la etiqueta de anclaje ("a-etiqueta") para tener código de rastreo. Sin embargo, con una página web habilitada por AJAX, este acercamiento no trabaja. Debido a que la página habilitada por AJAX no es estática no hay forma de enumerar cada hipervinculo que puede parecer eventualmente en la página. Así el aspecto de etiquetado de página con páginas habilitadas por
AJAX también presentará una imagen incompleta de la interacción de usuario con el sitio web. Por lo tanto, los procesos tradicionales para recolectar datos analíticos web son incapaces de recolectar de forma exacta información sobre visitantes en una página web habilitada por AJAX. Un aspecto llamado redirección incluso es otro aspecto común para rastreo. Al utilizar la redirección, uno o más pares de nombre/valor se anexan al URL. Los pares de nombre/valor son parámetros de secuencia de consulta que dirigen al usuario a una página de rastreo. La página de rastreo lee los parámetros de secuencia de consulta y entonces1 redirige al usuario al destino final, que típicamente es un sitio web diferente. Como un ejemplo, el usuario puede dar clic en un vínculo a un sitio web de comerciante. Antes de llegar en el sitio web del comerciante, el usuario primero se redirigirá a través de una página de rastreo intermedia. La página de rastreo entonces escribe a una base de datos, archivo de texto u otro almacenamiento de datos. La redlirección de esa forma requiere que cada vínculo se modifique para incluir esta infraestructura de rastreo. Además, debido a su naturaleza, la redirección no permite rastreo para vistas de páginas simples, tal como una renovación de página.
BREVE DESCRIPCION DE LA INVENCION
Esta breve descripción sé proporciona para introducir una
selección de conceptos en una forma simplificada que además se describe posteriormente en la descripción detallada. Esta breve descripción no pretende identificar características clave o características esenciales del tema reclamado, ni pretende utilizarse como un auxiliar al determinar el alcance del tema reclamado. En una modalidad, se proporciona un método para rastrear interacción de usuario con una aplicación web interactiva asociada con una página web. El método incluye proporcionar uno o más elementos de HTML modificados para uso con la página web. El comportamiento predeterminado de los elementos de HTML se modifica para incluir una llamada para un servidor de rastreo. La modificación generalmente involucra modificar el comportamiento predeterminado de las etiquetas existentes para agregar eventos adicionales al comportamiento de la etiqueta. Los eventos adicionales incluyen una llamada a un servidor de rastreo. La aplicación web interactiva asociada con la página web incluye al menos uno de los elementos de HTML modificados. Debido a que el comportamiento de las etiquetas se modificó, la información de interacción de usuario entonces se envía al servidor de rastreo de acuerdo con la llamada en los elementos de HTML modificados. En otra modalidad, se proporciona un método para rastrear interacción de usuario con upo o más elementos de HTML dinámicamente presentados en una aplicación web interactiva asociada con una página web. El método incluye recibir información sobre un evento de un elemento de HTML modificado. El evento está
desde dentro de la aplicación web interactiva. La información se recibe del elemento de HTML debido a que el comportamiento predeterminado del elemento de HTML se modificó para incluir una llamada a un servidor de rastreo que recibe la información. Incluso en otra modalidad, se proporciona un método que permite rastrear interacción de usuario, con una aplicación web interactiva asociada con una página web. El método incluye determinar un grupo de elementos de HTML que se desean rastrear el comportamiento predeterminado de estos elementos entonces se modifica para incluir una llama'da a un servidor de rastreo. La llamada incluida en el comportamiento predeterminado permite rastreo de cada elemento dentro de la aplicación web interactiva.
BREVE DESCRIPCIÓN DE LAS VARIAS VISTAS DE LOS DIBUJOS
La presente invención se describe en detalle posteriormente con referencia a las figuras de dibujo anexas, que se incorporan aquí por referencia y en donde: la Figura 1 es un diagrama de bloques de un ambiente de cómputo ilustrativo adecuado para uso al implementar modalidades de la presente invención; la Figura 2 es un diagrama de bloques de un dispositivo de cómputo ilustrativo adecuado para uso al implementar modalidades de la presente invención; la Figura 3 es un diagrama de flujo que ilustra un método para
rastrear interacción de usuario con una aplicación web interactiva asociada con una página web de acuerdo con una modalidad de la presente invención; la Figura 4 es un diagrama de flujo que ilustra un método para permitir rastreo de interacción de usuario en una aplicación web interactiva asociada con una página web de acuerdo con una modalidad de la presente invención; la Figura 5 es un diagrama de flujo que ilustra un método para rastrear interacción de usuario con uno o más elementos de HTML dinámicamente presentados en una aplicación web interactiva asociada con una página web de acuerdo con una modalidad de la presente invención; y la Figura 6 es un diagrama de bloques de una arquitectura ilustrativa para uso al impleméntar modalidades de la presente invención.
DESCRIPCIÓN DETALLADA
El tema de la presente invención se describe con especificación aquí para satisfacer requerimientos obligatorios. Sin embargo, la propia descripción no pretende limitar el alcance de esta patente. En lugar de esto, los inventores contemplaron que el tema reclamado también puede representarse de otras formas, para incluir diferentes pasos o combinaciones de pasos similares a los descritos en este documento, en conjunto con otras tecnologías presentes o futuras.
Además, aunque los términos "paso" y/o "bloque" pueden utilizarse aquí para colocar diferentes elementos de métodos empleados, los términos no deben interpretarse como implicando ningún orden particular entre dos o más varios pasos aquí descritos, a menos y excepto cuando el orden de pasos individuales se describe explícitamente. La Figura 1 ilustra un sistema 50 que representa una modalidad ilustrativa en la cual puede practicarse la presente invención. El sistema 50 incluye un dispositivo de cómputo 10 que tiene un navegador de usuario 12 accesible a través de una interfase de usuario (Ul) 14. El dispositivo dé cómputo 10 puede conectarse en una red 18 a través de un Proveedor de servicio de Internet (ISP) 16. La red 18 incluye enrutadores, servidores de raíz y servidores de nombre virtual, como se conoce por aquellos expertos en la técnica. El ISP 16 y la red 18 permiten al dispositivo de cómputo 10 interactuar con un servidor huésp.ed 20 a través de un navegador 12. El huésped 20 puede operar para entregar o servir páginas web deseadas 22 al dispositivo de cómputo 10. Otros componentes que no se muestran también pueden incluirse, pero se conocerán por aquellos expertos en la técnica. Haciendo referencia a la Figura 2, una configuración básica de dispositivo de cómputo 10 se muestra. El dispositivo de cómputo 10 es sólo un ejemplo de un ambiente de cómputo adecuado y no pretende sugerir ninguna limitación al alcance de uso o funcionalidad de la invención. El dispositivo de cómputo 10 tampoco debe
interpretarse como teniendo ninguna dependencia o requerimiento que se relaciona con cualquiera o combinación de componentes ¡lustrados. Mientras se muestra el dispositivo de cómputo 10, otras configuraciones de sistema, que incluyen dispositivos portátiles, electrónica de consumidor, computadoras de propósito general, dispositivos de cómputo de más especialidad, etc. también pueden utilizarse. Con referencia continua a la Figura 2, el dispositivo de cómputo 10 incluye un conductor común 110 que directa o indirectamente se acopla a los siguientes dispositivos: memoria 112, uno o más procesadores 114, uno o más componentes de presentación 116, puertos de entrada/salida 118, componentes de entrada/salida 120, y un suministro de energía ilustrativo 122. El conductor común 110 representa lo que pueden ser uno o más conductores comunes (tal como un conductor común de dirección, conductor común de datos, o combinación de los mismos). Aunque los varios bloques de la Figura 2 se muestran con líneas para la búsqueda de claridad, en realidad, delinear varios componentes no está tan claro, y metafóricamente, las líneas más precisamente serán grises y confusas. Por ejemplo, uno puede considerar un componente de presentación tal como un dispositivo de presentación para ser un componente l/O. También, los procesadores tienen memoria. Se reconoce que tal es la naturaleza de la técnica, y reiteramos que el diagrama de la Figura 2 es simplemente ilustrativo de un dispositivo de cómputo ilustrativo que puede utilizarse en conexión con una o
más modalidades de la presente invención. Ahora no se hace distinción entre tales categorías como "estación de trabajo", "servidor", "laptop", "dispositivo portátil", etc., ya que todos los contemplados están dentro del alcance de la Figura 2 y se hace referencia a "dispositivo de cómputo". El dispositivo de cómputo 10 típicamente incluye una variedad de medios legibles por computadora. A manera de ejemplo, y no de limitación, los medios legibles por computadora pueden comprender Memoria de acceso aleatorio (RAM); Memoria de sólo lectura (ROM); Memoria sólo de lectura eléctricamente programable borrable (EEPROM); memoria flash u otras1 tecnolog ías de memoria; CD-ROM, discos versátiles digitales (DVD) u otros medios ópticos u holográficos; cassettes magnéticos, cinta magnética, almacenamiento de disco magnético u otros dispositivos de almacenamiento magnético, onda portadora o cualquier otro medio que puede utilizarse para codificar información deseada y puede accederse por el dispositivo de cómputo 10. La memoria 112 incluye medios de almacenamiento por computadora en la forma de memoria volátil y/o no volátil. La memoria fue removible, no removible, o una combinación de las mismas. Dispositivos de hardware ilustrativos incluyen memoria de estado sólido, unidades duras, unidades de disco óptico, etc. El dispositivo de cómputo 10 incluyé uno o más procesadores que leen datos de varias entidades tal como memoria 112 ó componentes de l/O 120. El componente(s) de presentación 116 presenta indicaciones
de datos a un usuario u otros dispositivos. Los componentes de presentación ilustrativos incluyen un dispositivo de presentación, bocina, componente de impresión, componente vibrador, etc. Los puertos de l/O 118 permiten al dispositivo de cómputo 10 acoplarse lógicamente a otros dispositivos que incluyen componentes de l/O 120, algunos de los cuales pueden construirse. Los componentes ilustrativos incluyen un micrófono, palanca de mandos, almohadilla de juegos, antena parabólica, escáner, impresora, dispositivos inalámbricos, etc. Haciendo referencia ahora a la Figura 3, se ilustra un diagrama de flujo que muestra un método ilustrativo para rastrear interacción de usuario con una aplicación web interactiva asociada con una página web. I nicialmente, como se indico por el bloque 302, una página web (tal como página web 22) se proporciona con una solicitud de navegador de usuario 12 al huésped 20 de la Figura 1. Como se mostró en el bloque 304, uno o más elementos de HTML modificado se proporcionan para! uso con la página web, como se describirá en mayor detalle posteriormente. La página web proporcionada puede incluir HTML dinámico a través del uso de AJAX. Los elementos de HTML modificados permiten a la analítica web rastrear interacción de usuario con la página web incluso cuando se sirve a una página web habilitada por AJAX del huésped 20. En el bloque 306, una aplicación web interactiva asociada con la página web proporcionada puede proporcionarse al dispositivo de cómputo 10 por el alojamiento 20. La aplicación web interactiva
también puede tener una porción dinámica, habilitada por AJAX. La aplicación web interactiva también incluye elementos de HTML modificados que contienen una llamada al servidor de rastreo, como se describió en detalle adicional posteriormente. Subsecuentemente, como se indica en el bloque 308, la información de interacción de usuario se envía a un servidor de rastreo de acuerdo con una Mamada en los elementos de HTML modificados. La modificación del elemento de HTML incluye una modificación del comportamiento predeterminado del elemento. El comportamiento predeterminado se modifica para instruir que la información de interacción de usuario se envié a ciertas situaciones. La modificación del comportamiento predeterminado de los elementos de HTML además se describe posteriormente. En una modalidad, el servidor de rastreo puede ser un servidor de tercera parte que procesa datos y almacena los datos en una base de datos. En otra modalidad, el servidor de rastreo es un servidor interno. A manera de ejemplo solamente, y no de limitación, los datos procesados y almacenados por el servidor de rastreo pueden incluir información sobre una persona que solicita la página web (por ejemplo, nombre, dirección, peso, altura, género, edad, raza, educación, ocupación, etc.), en donde se originó la solicitud de la página web (por ejemplo, buscador, hipervínculo en una página web, URL escrito, etc.), y cuanto se observó la página web. Cambiando ahora la modificación del comportamiento predeterminado de los elementos de HTML, se hace referencia a la
Figura 4. Como se muestra en el bloque 402, se hace una determinación de que elementos de HTML modificar. En una modalidad, un usuario administrativo hace la determinación sobre qué elementos de HTML modificar para permitir rastreo. El usuario administrativo puede elegir modificar cada etiqueta de un tipo específico en una página web. Por ejemplo, el comportamiento predeterminado de todas las a-etiquetas puede modificarse. La a-etiqueta es un elemento de HTML que denota un anclaje, un vínculo de hipertexto o el destino de un vínculo dentro de una página web la a-etiqueta es uno de los elementos de HTML posibles que pueden modificarse. La interacción de un usuario con una a-etiqueta probablemente será interesante én el contexto de analítica web, y así se utiliza aquí como un ejemplo. Se debe entender que la invención de ninguna forma se limita a a-etiquetas, o cualquier otro tipo de etiqueta. Incluso en otra modalidad, el usuario administrativo puede elegir modificar sólo ciertas etiquetas en ciertas áreas de una página web. Por lo tanto, el comportamiento predeterminado de div-etiquetas se modifica para que cuando se utiliza una div-etiqueta, el estilo refleje que se desea rastreó para la div-etiqueta. Una vez que se hace una determinación sobre qué grupo de elementos de HTML se van a modificar, en el bloque 404, el comportamiento predeterminado djel grupo determinado de elementos de HTML se modifica para incluir una llamada a un servidor de rastreo. A manera de ejemplo solamente y no de limitación, se proporcionan dos elementos de HTML modificado los posteriormente:
a-etiqueta < e s t i I o > ENTRADA {comportíjmiento: url(Dar Clic Rastreo. htc)} A {comportamiento: url(Dar Clic Rastreo. htc)} </estilo> div-etiqueta <div id = "Dar clic Div" estilol="COMPORTAMIENTO:url (Dar clic Rastreo. htc)"> Dar clic Div</div> El código fundamental para darclicrastreo.htc incluye una llamada para permitir rastreo. De nuevo, a manera de ejemplo solamente y no de limitación, un ejemplo del código de darclicrastreo.htc es: <PUBLICO: COMPONENTE URN = "urn:msdn-microsoft-com : taller" > <PUBLICO: UNIR EVENTO = "enclic" UN EVENTO = "darclicRastreo()" /> >LENGUAJE DE ESCRITO = "JScript"> Función dar clic Rastreo() { Si (XReq) { xReq.abierto("POS"; 7ApWeb2/PáginaFalsa.htm", verdadero); secuencia + + ; xReq .en viar(venta na. evento. |SrcElemento. id . aSecuencia() + "\t" + secuenciador); }
Ventana, evento. cancelarBur uja = verdadero; } </ESCRITO> </P UBLICO.COM PON ENTE> Al utiliza una etiqueta con el comportamiento predeterminado modificado de esa forma resultará en una llamada al servidor de rastreo, por ejemplo, cuando un usuario interactúa con una a-etiqueta en la página web. Esta llamada ocurrirá sin tener que enumerar cada elemento en la página y ocurrirá mientras los elementos se cargan en la página. Esto permite rastreo analítico web verdadero de páginas que utilizan AJAX. De esa forma, incluso aunque la página tiene contenido dinámico, de interacción de un usuario con la página puede determinarse. Para obtener el benefició de los elementos de HTML modificados, el desarrollado web utilizará los elementos modificados en diseño web. Es benéfico permitir a los desarrollado web típicos incorporar estos elementos modificados en una forma fácil, no importuna. Un método para incorporar los elementos es colocar los elementos de HTML modificados en el archivo de inclusión común. Un archivo de inclusión lateral de servidor (SSI) es una herramienta utilizada en creación de página web. El archivo de inclusión permite a un archivo maestro utilizarse para beneficiarse de muchas páginas. Entonces para modificar un elemento de texto estándar, sólo el archivo de inclusión necesita modificarse en lugar de actualizar cada página individual. Al modificar el comportamiento predeterminado del
grupo determinado de elementos de HTML, los diseñadores web pueden obtener el beneficio de rastreo analítico web sin tener que modificar individualmente cada elemento de HTML durante creación de página web. En lugar que el desarrollador de página web sólo necesite especificar el archivo de inclusión que contiene los elementos de HTML modificados. Un experto en la técnica apreciará que modificar el comportamiento predeterminado de a-etiquetas para incluir una llamada a un servidor de rastreo no sólo modificará las a-etiquetas que actualmente existen en la página web, sino cualquier a-etiqueta que aparece en la página web después de eso. Además, el código para modificar a-etiquetas sólo necesita escribirse una vez por un desarrollador y colocarse en el archivo de inclusión. Por lo tanto, cualquier otro desarrollador que trabaja en características para el sitio web sólo necesita adoptar el código común en el archivo de inclusión para incorporar éstos cambios (es decir; la modificación del comportamiento predeterminado de a-etiquetas) en una página. Por lo tanto, sólo una persona (el desarrollador inicial) necesita conocer que etiquetas modificar y co'mo modificar el comportamiento predeterminado de esta ciertas etiquetas. Haciendo referencia ahora la Figura 5, se presenta una descripción de las acciones en un servidor de rastreo. En el bloque 502, se recibe información sobre un evento de un elemento de HTML modificado. En una modalidad, él elemento de HTML modificado se modifica para enviar información sobre el evento al servidor de
rastreo. A manera de ejemplo solamente, y no de limitación, la información sobre un evento puede incluir una descripción del evento (por ejemplo, descripción del evento, fecha, tiempo del día, ubicación en la página web en donde se lleva a cabo el evento, etc.) junto con la información sobre el usuario que ejecuta el evento (por ejemplo, dirección, peso, altura, género, edad, raza, educación, ocupación, etc.). Un evento que inicia una llamada al servidor de rastreo, por ejemplo, puede ser una selección de un hipervínculo o un indicador de ratón que flota sobre un hipervínculo. Subsecuentemente, en el bloque 504, la información sobre un evento se procesa por el servidor de rastreo. A manera de ejemplo solamente, y no de limitación, procesar la información puede incluir, pero no se limita a, organizar la información recibida, almacenar la información y presentar la información a un usuario. La presentación de la información puede ser a través de un reporte electrónico presentado en un monitor, un reporte impreso, o presentarse al usuario a través de cualquier otro formato aceptable. Varias formas de presentar la información se conocen para un experto en la técnica y, por consiguiente, no se discuten aquí adicionalmente. Haciendo referencia a las Figura 6, se ilustra un diagrama de bloques que muestra un diagrama de arquitectura de bloque ilustrativo total 200 que significa que complementa la discusión de las Figuras 1-5 anteriores. Se entenderá y apreciará por aquellos expertos en la técnica que la arquitectura total 200 mostrada en la Figura 2 es simplemente un ejemplo de un ambiente de cómputo
adecuando y no pretende sugerir ninguna limitación al alcance de uso o funcionalidad de la presente invención. La arquitectura total 200 tampoco debe interpretarse como teniendo ninguna dependencia o requerimiento relacionado con cualquier componente individual o combinación de componentes aquí ilustrados. La arquitectura 200 incluye un dispositivo de cómputo administrativo 210, un dispositivo de desarrollo de página web 212 y un dispositivo de cómputo de usuario 214. El dispositivo 214 opera como se describió anteriormente con respecto a la Figura 1 y una computadora de usuario 10. Los dispositivos 210 y 212 operan similarmente, pero se utilizan para diferentes propósitos en la modalidad ilustrativa. Cada uno de los dispositivos 210-240 se conecta a una red 208. Cada uno de los dispositivos de usuario 210-214 puede ser cualquier tipo de dispositivo de cómputo, tal como, por ejemplo, un dispositivo de cómputo 10 descrito anteriormente con referencia a las Figuras 1 y 2. El dispositivo de cómputo administrativo 210 se utiliza en la creación de elementos de HTML modificados. El dispositivo 210 se utiliza para alterar el comportamiento predeterminado de los elementos de HTML seleccionados de acuerdo con la descripción anterior con referencia a la Figura 4. Una vez modificados, los elementos de HTML se proporcionan para uso por desarrolladores de página web a través de la red 208. Como se describió anteriormente, esto puede hacerse a través del archivo de inclusión. El dispositivo de cómputo de desarrollo de página web 212 se utiliza para crear
1,9 una página web 202. La página we'b creada incluirá una referencia al archivo de inclusión 203, y de esa forma tendrá elementos de HTML que adoptan el comportamiento modificado antes descrito. Una vez creada, la página web se hace disponible a través de un huésped web 208, que es similar al huésped 20 descrito con referencia a la Figura 1. El dispositivo de cómputo de usuario 214 utiliza un navegador, como se describió con referencia a la Figura 1, para navegar y solicitar una página web particular 202. Como se mostró, la página web 202 puede tener una aplicación web interactiva 204 y un elemento de HTML dinámico 206. Al utilizar AJAX, por ejemplo, el elemento 206 puede cambiar sin recargar la página completa. Esto hace al rastreo de página tradicional inexacto con respecto a aquellos elementos. Sin embargo, al utilizar elementos de HTML con un comportamiento predeterminado modificado permite rastreo exacto para propósitos analíticos web. Mientras el usuario interactúa con la página web 202, y específicamente con los elementos de HTML modificados, se hace una llamada al servidor de rastreo 220. Debido a que el comportamiento predeterminado del elemento de HTML se modifica, todos los elementos creados en la página adoptarán el comportamiento modificado y permitirán que se rastree la interacción de usuario. Esto ocurre tanto para elementos estáticamente cargados así como para elementos dinámicamente cargados. Mientras se cargian los elementos, tienen el comportamiento predeterminado modificado. Así, la página web 202 configura con elementos de HTML que tienen comportamiento
predeterminado modificado para enviar información sobre interacción de usuario al servidor de rastreó 212. El servidor de rastreo 220 puede ser un servidor de tercera piarte que procesa datos y almacena los datos en una base de datos o servidor de rastreo 220 puede ser un servidor interno. La presente invención se describió con relación a modalidades particulares, que se pretenden en todos los aspectos para ser ilustrativas en lugar de restrictivas. Modalidades alternativas serán evidentes para aquellos expertos en la técnica a los cuales pertenece la presente invención sin apartarse de su alcance. A partir de lo anterior, se observará que la invención es una bien adaptada para obtener todos los fines y objetos expuestos anteriormente, junto con otras ventajas que son obvias e inherentes al sistema y método. Se entenderá que ciertas características y subcombinaciones son de utilidad y pueden emplearse sin referencia a otras características y subcombinaciones. Esto se contempla y está dentro del alcance de las reivindicaciones.