Anexo B Código JSP function Size(Text) { if(Text.length>35) return false; else return true; } Figura C1. Evaluación para que conceptos y definiciones no sean mayores a 35 caracteres function isNumber(Text) { cont=0; for (i = 0; i < Text.length ; i++) { Char = Text.charAt(i); if (!isNaN(Char)) cont=cont+1; else cont=cont; } if((cont <Text.length)) return false; if((parseInt(Text)>=1000)&&(parseInt(Text)<=2030)) return true; else return false; } Figura C2. Evaluación de formato de fechas del patrón línea de tiempo en años function isNumber(Text) { cont=0; for (i = 0; i < Text.length ; i++) { Char = Text.charAt(i); if (!isNaN(Char)) cont=cont+1; else cont=cont; } if((cont == Text.length)) return false; else { switch(Text) { case 'enero': case 'Enero': case 'ENERO': case 'febrero': case 'Febrero': case 'FEBRERO': case 'marzo': case 'Marzo': case 'MARZO': case abril': case 'Abril': case 'ABRIL': case 'mayo': case 'Mayo': case 'MAYO': case 'junio': case 'Junio': case 'JUNIO': case 'julio': case 'Julio': case 'JULIO': case 'agosto': case 'Agosto': case 'AGOSTO': case 'septiembre': case 'Septiembre': case 'SEPTIEMBRE': case 'octubre': case 'Octubre': case 'OCTUBRE': case 'noviembre': case 'Noviembre': case 'NOVIEMBRE': case 'diciembre': case 'Diciembre': case 'DICIEMBRE': return true; break; default: return false; }; } } Figura C3. Evaluación de formato de fechas del patrón línea de tiempo en meses Código JAVA String varxml ="<?xml version="+letra+"1.0"+letra+ "encoding="+letra+"iso-8859-1"+letra+"?>"; String var1="<data>",var2="</data>" linea_tx.write(varxml+"\n"+var1+"\n"); for(int i=0;i<n;i++) { linea_tx.write(arr[i]); } linea_tx.write(var2); linea_tx.close(); Figura C4. Creación del archivo XML a partir de la información del usuario for(int i=0;i<n;i++) { if((i%2)==0) { arr1[q]=arr[i]; q++; } else { arr2[s]=arr[i]; s++; } } q=s=0; for(int i=0;i<m;i++) { if((i%2)==0) { arr3[q]=arr2[i]; q++; } else { arr4[s]=arr2[i]; s++; } } for(int i=0;i<o;i++) arr2[i]=arr4[i]; for(int i=o;i<m;i++) { arr2[i]=arr3[a]; a++; } a=0; for(int i=0;i<m;i++) arr[i]=arr1[i]; for(int i=m;i<n;i++) { arr[i]=arr2[a]; a++; } Figura C5. Ordenamiento de la información del usuario del patrón combinaciones for(int i=1;i<a.length;i++) { for(int j=0;j<a.length-1;j++) { if((a[j])>(a[j+1])) { aux=a[j+1]; a[j+1]= a[j]; a[j]=aux; } } } Figura C6. Ordenamiento de la información del usuario del patrón línea de tiempo en años for(int i=0;i<a.length;i++) { if (a[i].equalsIgnoreCase("Enero")) a5[i]=1; else if (a[i].equalsIgnoreCase("Febrero")) a5[i]=2; else if (a[i].equalsIgnoreCase("Marzo")) a5[i]=3; else if (a[i].equalsIgnoreCase("Abril")) a5[i]=4; else if (a[i].equalsIgnoreCase("Mayo")) a5[i]=5; else if (a[i].equalsIgnoreCase("Junio")) a5[i]=6; else if (a[i].equalsIgnoreCase("Julio")) a5[i]=7; else if (a[i].equalsIgnoreCase("Agosto")) a5[i]=8; else if (a[i].equalsIgnoreCase("Septiembre")) a5[i]=9; else if (a[i].equalsIgnoreCase("Octubre")) a5[i]=10; else if (a[i].equalsIgnoreCase("Noviembre")) a5[i]=11; else if (a[i].equalsIgnoreCase("Diciembre")) a5[i]=12; } for(int i=1;i<a5.length;i++) { for(int j=0;j<a5.length-1;j++) { if((a5[j])>(a5[j+1])) { aux3=a5[j+1]; a5[j+1]= a5[j]; a5[j]=aux3; aux2=a[j+1]; a[j+1]= a[j]; a[j]=aux2; } } } Figura C7. Ordenamiento de la información del usuario del patrón línea de tiempo en meses