jueves, 9 de enero de 2020

Carta de un padre Azteca a su Hijo

CARTA DE UN PADRE AZTECA A SU HIJO
Hace años ordenando cosas antiguas en la casa de mis padres me encontré con una carta muy antigua, "Carta de una madre azteca a su hija", lo puedes leer aquí.

Sospechaba que debía de existir también una carta "De un padre azteca a su hijo", y la encontré, aquí la carta.

“Hijo mío, has salido de tu madre, como el pollo del huevo, y creciendo como él, te preparas para volar por el mundo, sin que nos sea dado saber por cuanto tiempo nos concederá el cielo el goce de la piedra preciosa que en ti poseemos; pero sea lo que fuere, procura tu vivir rectamente.

Reverencia y saluda a tus mayores y nunca les des señales de desprecio. No estés mudo para con los pobres y atribulados; antes bien date prisa a consolarlos, con buenas palabras.

Honra a todos, especialmente a tus padres, a quienes debes obediencia, temor y servicio. Guárdate de imitar el ejemplo de esos malos hijos, que a guisa de brutos, privados de razón, no reverencian a los que les han dado el ser, ni quieren someterse a sus correcciones: porque quien sigue sus huellas tendrá fin desgraciado y morirá lleno de despecho, o lanzado en un precipicio, o entre las garras de las fieras”.

“No te burles de los enfermos o de los quien tienen alguna imperfección en su cuerpo. No te mofes del que veas cometer alguna culpa o flaqueza, ni se la eches en cara; confundete, al contrario, y teme que te suceda lo mismo que te ofende en los otros.

No vayas a donde no te llaman, ni te ingieras en lo que no te importa. En todas tus acciones demuestra tu buena crianza. Cuando converses con alguno, no lo molestes con tus manos, ni hables demasiado, ni interrumpas o perturbes a los otros con tus discursos.

Si oyes hablar a alguno desacertadamente, y no te toca corregirlo, calla; si te toca, considera antes lo que vas a decirle, y no le hables con arrogancia, a fin de que sea mas agradecida tu corrección”.

“Cuando alguien hable contigo, óyelo atentamente y en actitud comedida, o jugando con los pies, ni mordiendo la capa, ni escupiendo demasiado, ni alzándote a cada instante si estás sentado; pues estas acciones son indicios de ligereza y mala crianza”.

“Cuando te pongas a la mesa, no comas aprisa ni des señales de disgusto si algo no te agrada. Si a la hora de comer viene alguno, parte con él lo que tienes, y cuando alguno coma contigo, no fijes en el tus miradas”.

“Cuando andes, mira por donde vas para que no te tropieces con los que pasan. Si ves a alguno por el mismo camino, desvíate un poco para hacerle lugar. No pase nunca por delante de tus mayores, sino cuando sea absolutamente necesario, o cuando ellos te lo ordenen. Cuando comas en su compañía, no bebas antes que ellos, y sírveles lo que necesiten para granjearte su favor”.

“Cuando te den alguna cosa, acéptala con demostraciones de gratitud. Si es grande no te envanezcas; si es pequeño, no lo desprecies; no te indignes, ni ocasiones disgustos a quien te favorece. Si te enriqueces no te insolentes con los pobres ni con los humildes; que los dioses que negaron a otro las riquezas para dártelas a ti, pueden quitártelas para dárselas a otros. Vive del fruto de tu trabajo, porque así te será mas agradable el sustento”.

“No mientas jamás. Cuando refieres a alguno lo que otro te ha contado, di la verdad pura sin añadir nada. No hables mal de nadie. Calla lo malo que observes en otro si te toca corregirlo. No sea noticiero, ni amigo de crear discordias. Cuando lleves algún recado, si el sujeto a quien se lo llevas se enfada y habla mal de quien lo envía no vuelvas a él con esa respuesta, sino procura suavizarla y disimula cuando puedas lo que hayas oído, a fin de que no se susciten disgustos y escándalos de que tengas que arrepentirte”.

No te entretengas en el mercado mas del tiempo necesario, pues en esos sitios abundan las ocasiones de correr excesos”.

“No seas disoluto porque se indignarán de ti los dioses, y te cubrirán de infamia. Reprime tus apetitos, pues aún eres joven y aguarda que llegue a edad oportuna la doncella que los dioses te han destinado para mujer. Déjalo a su cuidado, pues ellos sabrán disponer lo que mas te convenga. Cuando llegue el momento de casarte no te atrevas a hacerlo sin el consentimiento de tus padres, porque tendrás un éxito infeliz”.

“No hurte ni te des al robo; pues serás el oprobio de tus padres, debiendo mas bien de servirles de honra en galardón de la educación que te han dado. Si eres bueno, tu ejemplo confundirá a los malos. No mas, hijo mio: esto basta para cumplir las obligaciones de hijo. Con estos consejos quiero fortificar tu corazón.

No los olvides ni desperdicies, pues de ellos depende tu vida y toda tu felicidad”.

miércoles, 1 de enero de 2020

Parseando un archivo XML con SAX Parser

Parseando un archivo XML usando SAX Parser

SAX, también conocido como una API simple para XML, es usado para parsear (del archivo xml a objetos) documentos XML.
En este tutorial, vamos a aprender lo que SAX es, por qué, cuando y como debería de usarlo.

SAX es un API usado para parsear documentos XML. Está basado en eventos generados mientras va leyendo el documento. Metodos Callback reciben estos eventos. Una clase manejadora contiene estos metodos Callbacks.
El API es eficiente porque los eventos son desechados después de que los metodos Callbacks los han recibido y procesado. Por lo tanto, SAX es eficiente con el manejo de memoria, a diferencia de DOM, por ejemplo.

SAX vs DOM
DOM mantiene un Modelo de Objetos para el Documento. El parser DOM no trabaja sobre eventos. En realidad, carga todo el documento XML en memoria. SAX es más eficiente en el manejo de la memoria que DOM.
DOM tiene la ventaja de facilitar el realizar operaciones en todo el documento una vez que el documento ha sido cargado en memoria.

En el ejemplo vamos a parsear un archivo xml que tiene una lista de Clientes, los clientes tienen los atributos nombre y teléfono, aquí el xml.
Nota: El archivo xml lo debes colocar en la raíz de tu proyecto

Y aquí tienes la clase




SAX Parser lee el archivo XML de arriba hacía abajo, de izquierda a derecha y dispara los siguientes eventos:

- Inicio del Documento
- Inicio de un Elemento
- Fin de un Elemento
- Fin del Documento