0% encontró este documento útil (0 votos)
775 vistas7 páginas

1 Recetas

El documento describe el proceso de creación de un documento XML para almacenar y buscar recetas de cocina en un restaurante. Este proceso incluye 1) especificar los requisitos basados en las necesidades de búsqueda y visualización, 2) diseñar las etiquetas XML teniendo en cuenta la estructura y relaciones de la información, y 3) marcar los documentos existentes usando las etiquetas diseñadas.

Cargado por

mikleac
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
775 vistas7 páginas

1 Recetas

El documento describe el proceso de creación de un documento XML para almacenar y buscar recetas de cocina en un restaurante. Este proceso incluye 1) especificar los requisitos basados en las necesidades de búsqueda y visualización, 2) diseñar las etiquetas XML teniendo en cuenta la estructura y relaciones de la información, y 3) marcar los documentos existentes usando las etiquetas diseñadas.

Cargado por

mikleac
Derechos de autor
© Attribution Non-Commercial (BY-NC)
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Creación de un documento XML

El proceso de creación de un documento pasa por varias etapas sucesivas. Las tres
imprescindibles son las siguientes:
 Especificación de los requisitos.
 Diseño de las etiquetas.
 Marcado de los documentos.

1. La especificación de los requisitos


Se puede realizar de varias maneras cada una implica ciertas ventajas e
inconvenientes:
 Un experto, generalmente ajeno a la empresa, que recoja información y la
plasme en un documento, normalmente al ser su trabajo, contemplará ciertos
detalles que pueden pasar desapercibidos a personas con un conocimiento más
superficial en estos temas.
Un equipo de personas de la empresa, supervisados o no por un experto, hay que
pensar que mientras emplean su tiempo en esta tarea no pueden realizar las que les
corresponden. Es necesario que tengan ciertos conocimientos sobre XML para
orientar el contenido del documento y saber que es lo que pueden pedirle.

A la hora de definir costes personal o tiempo máximo de duración, es la cantidad


de automatización en el proceso de marcado:
 El proceso de elaboración de un documento XML puede implicar que sea
necesario un marcado manual, en este caso y especialmente si se parte desde
cero (las actualizaciones con nuevas marcas suelen ser más sencillas), el
proceso puede llegar a ser costoso en recursos, tanto en personal como en
tiempo y depende en gran medida del número de marcas, de la complejidad de
su inclusión en el texto original y de la cantidad de texto a marcar.
 La creación de los documentos XML pueden también realizarse mediante
procesos informáticos, en este caso, el número de etiquetas y su complejidad
no es relevante. Esta forma es considerablemente más económica que la
anterior, para reducir costes de recursos al mínimo y si la información es
considerable, este proceso se puede hacer en las horas de trabajo más bajas
del día.

Escenario propuesto:
Un restaurante dispone de un gran número de recetas (2000) en diversos idiomas.
Cada receta se almacena en un fichero independiente y en un formato propietario.
El dueño del restaurante no está satisfecho con el sistema de gestión actual: las
recetas están organizadas mediante índices bastantes farragosos de mantener y
pocos útiles en las búsquedas. Además se desea poder ofrecer a sus clientes las
recetas a través de la Web, y el formato en el que almacenan no permite que esto
sea posible.
A continuación se detallan los tipos de búsquedas que se desean realizar:
 Por título.
 Por tipo de la receta (postres, dulces, carnes, verduras, sopas..etc.).
 Búsquedas de ingredientes.
 Por nacionalidad de la receta o región.

1
Las recetas son leídas por diversas personas, cada una con unas necesidades
concretas:
 Cocinero: elige las recetas y supervisa su correcta ejecución. Necesita ver la
receta completa.
 Encargado del almacén: el cocinero le indica las recetas que se van a preparar
en un día en concreto y el número de raciones que se prepararán, a partir de
estos datos el encargado calcula aproximadamente las cantidades necesarias,
comprueba que existan los ingredientes necesarios en el almacén y realiza los
pedidos apropiados. De cada receta únicamente desea ver los ingredientes, sus
cantidades y el número de comensales para el que se refieren los ingredientes.
 En la Web, los clientes tienen la posibilidad de ver las recetas de las que
dispone el restaurante, solamente se les mostrará el procedimiento.

2. Diseño
Se encarga de definir cuáles son las marcas a incluir, sus nombres, la información
que contienen, la relación entre las marcas, etc.
Primer paso: ¿qué hay que marcar?
A partir de la especificación de requisitos se puede deducir cuáles son las piezas
de información que es necesario incluir en el documento XML para poder soportar
los procesos que nos piden, y que son, en definitiva, el fin último de XML. en este
estado del proceso de diseño no es posible todavía hablar ni de elementos ni de
atributos, de momento podemos referirnos a ellos como átomos informativos:
En el restaurante necesitamos guardar información sobre:
 Debe existir una pieza de información que marque el título de la receta y que
puede llamarse “TITULO”.
 Para realizar listados o búsquedas de tipos de recetas, es necesario almacenar
el tipo de la receta actual (sopa, postre, entrada..). A este objeto de
información le podemos denominar “TIPO”.
 es necesario también guardar el número de comensales para los que se ha
pensado una receta, a partir del cual podrá el encargado del almacén calcular
las cantidades necesarias para un determinado número de personas. El nombre
de esta marca puede ser “COMENSALES”.
 Para realizar las búsquedas de ingredientes es necesario marcar de alguna
manera estos nombres. También hay que marcar cuáles son sus cantidades para
calcular a partir del número del número de comensales las cantidades
requerida. En las cantidades será necesario especificar la unidad de medida en
la que están expresadas. Los tipos de datos que contendrán esta información
puede denominarse “INGREDIENTE”, “CANTIDAD” Y “UNIDAD”.
 Hay que marcar la nacionalidad y la región de origen de la receta, de ello se
encargarán dos tipos de datos llamados “NACIONALIDAD” Y “REGION”.
 Para que en la Web solamente pueda mostrarse el procedimiento de elaboración
de la receta, se impone la utilización de marcas que delimiten el procedimiento
seguido y lo separen de otra información que no se quiere mostrar. De ello se
encargará “PROCEDIMIENTO”.

2
Segundo paso: añadir organización y estructura.
Después de conocer que marcas básicas hay que añadir, vamos a intentar
agruparlas de la manera más coherente posible.
En este caso se han imaginado las recetas como un documento con cuatro partes
principales, un título que identifica y representa a la receta, una parte en la que se
recoge información general sobre la receta que no es imprescindible (sin ella la
receta todavía tiene sentido), una parte con un listado de ingredientes y sus
características y el procedimiento.
 siguiendo con el esquema propuesto, podemos pensar que los componentes,
TIPO, NACIONALIDAD Y REGION deben estar agrupados, en un tipo de
elemento que pudiera llamarse “GENERAL” y que recogiera toda esa
información extra.
 si nos fijamos existen tres componentes que deben permanecer unidos y que
tienen sentido en su conjunto, “INGREDIENTE”, “CANTIDAD”, Y “UNIDAD”,
es necesario un nuevo tipo de datos para mantener esa cohesión. Parece lógico
cambiar el tipo de datos “INGREDIENTE”, que antes se encargaba de delimitar
el nombre del ingrediente por “NOMBRE” Y que a partir de ahora
“INGREDIENTE” agrupe estos tres elementos.
 Aparece también un componente nuevo “INGREDIENTES” que servirá para
contener todos los ingredientes juntos bajo un mismo elemento, lo que
posiblemente acelerará las búsquedas y facilitará la lectura humana del texto
XML.
En este estado del proceso de creación resulta interesante la realización de un
árbol que muestre la relación entre todos los tipos de datos, y que ayude a
descubrir nuevas relaciones o una distribución distinta.

Tercer paso: Elementos o atributos


El siguiente paso es pensar si estos “tipos de datos” pueden ser elementos o
atributos. Se descartan como atributos, aquellas piezas que puedan contener
subelementos, así como aquellas que contengan textos más largos de una frase o
demasiada información como para guardarla con atributos elegantemente.
 Existe como cabe esperar un elemento raíz, se llamará “RECETA”.
 TITULO podría ser un atributo o un elemento, la información que contiene no
está sujeta a subdivisiones y es de poca entidad. Sin embargo se ha decidido
que sea un elemento, ya que se considera un aparte fundamental (de la
estructura) de cualquier receta.
 GENERAL: este tipo de elementos es claramente un elemento ya que se ha
pensado para agrupar información. Como contendrá únicamente atributos es
además un elemento vacío.
 TIPO, NACIONALIDAD, Y REGION: estos componentes contienen información
indivisible y de poca entidad, además no son parte de la estructura de una
receta, por todo ello se ha decidido que sean atributos. En este caso el efecto
visual es más claro que su versión con elementos, ya que incluso entra en una
línea y evitan tener que escribir etiquetas de inicio y cierre.
 INGREDIENTES, INGREDIENTE: claramente ambos son elementos, su
objetivo es agrupar información.

3
 COMENSALES: la información que guarda comensales podría guardarse como el
contenido de un elemento o como el contenido de un atributo. Parece que por
sus características puede se algo común a todos los ingredientes,
COMENSALES debe ser un atributo de INGREDIENTES. Además,
COMENSALES contendrá información de poco entidad e indivisible.
 CANTIDAD, UNIDAD y NOMBRE : estos componentes pueden pensarse como
atributos o como elementos, y aunque entre CANTIDAD Y UNIDAD hay una
relación que parece indicar que UNIDAD es un atributo de CANTIDAD , en el
ejemplo los tres se han incluido como atributos.
 PROCEDIMIENTO : este tipo de datos es claramente un elemento ya que
puede contener en su interior gran cantidad de texto. Además posiblemente
algún día se desee añadir información extra (otros elementos), como delimitar
cada paso a realizar.
Ya estaría en condiciones de elaborar un documento XML a partir de una receta.

Últimas consideraciones en el diseño.


Este proceso de creación de etiquetas debe ser realizado con delicadeza y
sabiduría, para no quedar defraudados por los resultados de un mal diseño.
Deberemos pensar primero que es lo que esperamos que haga nuestro documento
XML y diseñar un conjunto de marcas que se ajuste a nuestro objetivo y defina la
estructura lógica y la semántica del documento convenientemente.

¿Inclusión o no de una marca?


Ante la duda de incluir una marca hay que pensar en su utilidad si aún así no queda
claro, es preferible incluirla, salvo si ello complica en exceso todo el proceso de
marcado. Es más fácil ignorar información que tener que añadir marcas
posteriormente, lo que haría necesario actualizar todos los documentos que se
crearon anteriormente, con el consiguiente trabajo adicional.

Necesidades futuras.
Puede ser interesante detectar necesidades futuras y anticiparse a ellas e incluir
alguna marca de más, o crear los documentos con una estructura que los haga
fácilmente actualizables o ampliables. Sobre todo con las etiquetas de más alto
nivel, las más cercanas al objeto raíz, que deben de ser permisivas en cuanto al
contenido que pueden admitir .
No se deberá utilizar un atributo para contener texto o información que pueda ser
susceptible de una división.

Revisión.
Hay que comprobar que se cumplen los objetivos y los condicionantes especificados
en la especificación de requisitos.

Nombres descriptivos.
Los nombres de las marcas deben identificar la función o el contenido que
delimitan, de esta manera los documentos XML se hacen autodescriptivos
facilitándose el trabajo que se realizan con ellos. Que sean descriptivos no implica
que deban ser nombres largos, deben ser los mas cortos posibles, especialmente si

4
el marcado es manual. Hay que definir una política uniforme a seguir con los
nombres que haga más fácil recordarlos y reduzca el número de equivocaciones por
ejemplo se escribía con mayúscula o con minúscula, llevaba acento o no , cómo se
separaban los nombres compuestos.

Problemas con las búsquedas


si los nombres de ingredientes se escriben con minúsculas y con tildes, se deben de
buscar de esta forma. el resultado puede no ser el deseado si por ejemplo, se
busca “Maíz” o “MAÏZ” en lugar de “maíz”.

Automático o manual
si el marcado es manual, en algunos casos la única posibilidad que existe para
simplificar el proceso es reducir el número de marcas a añadir, las que se decida
incluir deben ser las mínimas que aseguren la funcionalidad requerida y cumplan con
las expectativas. Existen casos en los que se puede combinar una etapa de marcado
mecánico y ora manual, siempre intentaremos reducir el marcado manual al mínimo,
ya que, está sometido a más errores y requiere más recursos. Hay veces en los que
se pueden incluir ciertas marcas a mano que den pie a marcas automáticas. Por
ejemplo nos encontramos con la tarea de incluir marcas que delimiten los nombres,
el primer apellido y el segundo apellido de personas, en texto como el siguiente:

Esta misiva está dirigida a Juan Luis García García,..., con motivo de
...., su vecino Fernando Alemani Fontfría que realizó para ...

Un programa informático por sí solo no puede realizar esta tarea, sería complicado
encontrar los nombres entre todo el texto. Si esto fuera posible XML no sería
necesario.
Un posible truco para facilitar la resolución del problema consiste en añadir
manualmente dos marcas en lugar de seis, una antes del nombre y otra al final del
segundo apellido, y uniendo mediante un guión partes separadas de nombres o
apellidos como muestra el ejemplo:

<?xml version="1.0" encoding="ISO-8859-1" ?>


<Nombres>
Esta misiva está dirigida a <Nombre>Juan_Luis García
García</Nombre>,..., con motivo de ...., su vecino <Nombre>Fernando
Alemani Fontfría</Nombre> que realizó para ...
</Nombres>
A partir de esta ayuda es posible para un programa informático, a partir de los
espacios en blanco, insertar las otras marcas que delimitan el nombre y los
apellidos, eliminando además los guiones que se utilizaron para unir nombres o
apellidos compuestos., quedando así:

<Nombre><Nom>Juan Luis</Nom>
<Apellido1>García</Apellido1>
<Apellido2>García</Apellido2>
</Nombre>

Es tarea del diseñador reducir el número de etiquetas que se deben marcar a mano.

5
La estructura lógica y los programas
La estructura lógica y la organización de los elementos y los atributos debe
reflejar el contenido del documento original, pero hay que considerar lo siguiente:
 Las marcas y su estructura lógica deben tender a que su lectura sea lo más
legible y asimilable para un lector humano, pero sobre todo tender a hacer que
los programas que soportan estas etiquetas sean más sencillos. Es decir
estructuras demasiado complejas o demasiado sencillas complican los
programas que se construyen sobre ellas. El primer caso porque es necesario
navegar más por el documento para encontrar la información que se busca y en
segundo caso porque hay que descartar información que no se desea y que está
mezclada con la que se busca.
 Las marcas que reflejan la estructura lógica más que el contenido, es decir las
marcas que engloban a más marcas y que permiten dividir el documento en
partes facilitan las búsquedas de información o de marcas en concreto ya que al
dividir el documento sólo hay que buscar en una determinada zona semántica.
Estas marcas facilitan además una rápida comprensión del documento, pero un
exceso puede complicar las búsquedas y dificultar la lectura y comprensión del
documento.

por ejemplo:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<RECETA>
<TITULO>Tortilla a las finas hiervas</TITULO>
<COCINA>Española</COCINA>
<ESPECIALIDAD>Huevos</ESPECIALIDAD>
<COMENSALES>4</COMENSALES>
Elaboración:
<Paso>Cortar las <INGR><CANT>3</CANT><NOMR>lonchas de
jamón</NOMR></INGR> a trozos y picar las <INGR><NOMR>finas hierbas
(cebollino, perejil, etc.)</NOMR></INGR></Paso>. <Paso>Saltear el
jamón en la sartén con un poco de <INGR><NOMR>aceite</NOMR></INGR> sin
que se llegue a dorar. </Paso><Paso>Batir
los<INGR><CANT>6</CANT><NOMR>huevos</NOMR></INGR></Paso>, <Paso>añadir
<INGR><NOMR>pimienta</NOMR></INGR>, <INGR><NOMR>sal</NOMR></INGR> y
las finas hierbas.</Paso> <Paso>Mezclar con el jamón y preparar la
tortilla.</Paso>
</RECETA>

Al igual que para nosotros se hace difícil la lectura de este documento, para un
programador también se complicará, para buscar por ejemplo los nombres de los
ingredientes debe comprobar y preguntar continuamente para desestimar otras
etiquetas que se hayan mezcladas con los elementos al mismo nivel. Deberá leer
mucho texto y seleccionar la información que le sea relevante de entre toda la
existente. Un documento con la división propuesta en el ejemplo, que se ha
desarrollado en el capítulo hace más fácil los programas que busquen elementos ya
que una vez encontrada la etiqueta INGREDIENTES, se sabe que todo lo demás
son ingredientes.

3. El proceso de marcado
El marcado de los documentos cierra las fases de creación de un documento XML,
y se fundamenta en los principios de diseño anteriores.

6
En esta etapa el factor de automatización posible es decisivo:
 Si el procesado es manual, puede introducir errores, ya sea por omisión o por
marcado erróneo. El personal que realiza esta tarea no necesita conocer XML
en profundidad, sobre todo si el marcado es rutinario y puede ser diferente al
que realizó las fases anteriores.
 Si el procesado puede automatizarse será necesario un técnico que realice los
programas.

Es conveniente concluir el marcado de los elementos comprobando si el documento


está bien formado de otra manera, cuando se procesen los documentos podríamos
encontrarnos con errores que impidieran acceder al mismo.

Final del ejemplo


Para finalizar el ejemplo sobre el restaurante se añadirán las marcas generadas a
una sencilla receta. Esta operación se tiene que realizar inevitablemente a mano sin
posibilidad de automatizar ninguna parte de la misma.
Primero vamos a mostrar lo que queremos que se visualice.

Huevo frito: Calentar en una sartén bastante aceite. Cuando esté muy
caliente, se fríe el huevo hasta que los bordes estén dorados, Servir
muy caliente. Un truco, para que quede perfecto, mientras se fríe,
salpicar la yema de aceite con ayuda de la espumadera.

Segundo añadimos las marcas diseñadas en la fase anterior. El aspecto de esta


receta XML sería la siguiente:

<?xml version="1.0" encoding="ISO-8859-1" ?>


<RECETA>
<TITULO>Huevo frito</TITULO>
<GENERAL TIPO="huevos" NACIONALIDAD="" REGION=""/>
<INGREDIENTES COMENSALES="1">
<INGREDIENTE NOMBRE="huevo"
CANTIDAD="1" UNIDAD=""/>
<INGREDIENTE NOMBRE="aceite"
CANTIDAD="" UNIDAD=""/>
<INGREDIENTE NOMBRE="sal"
CANTIDAD="al gusto" UNIDAD=""/>
</INGREDIENTES>
<PROCEDIMIENTO>
Calentar en una sartén bastante aceite. Cuando esté muy caliente, se
fríe el huevo hasta que los bordes estén dorados, Servir muy caliente.
Un truco, para que quede perfecto, mientras se fríe, salpicar la yema
de aceite con ayuda de la espumadera.
</PROCEDIMIENTO>
</RECETA>

También podría gustarte