Return to Template.S CVS log | Up to [Public] / Amaya / amaya |
1.7 francesc 1: { Structure Schema for XTiger Templates 1.19 vatton 2: Francesc Campoy Flores & I. Vatton January 2007 } 1.1 tollenae 3: 4: 5: STRUCTURE Template; 6: 7: DEFPRES TemplateP; 8: 9: ATTR 1.7 francesc 10: { generic attributes for internal use } 11: Unknown_attribute = TEXT; { to store an unknown attribute } 1.1 tollenae 12: 13: CONST 14: 1.7 francesc 15: C_CR = '\12'; 1.1 tollenae 16: 17: STRUCT 18: 1.11 francesc 19: Template = CASE OF 1.9 vatton 20: head; 21: repeat; 22: option; 23: useEl; 1.17 vatton 24: useSimple; 1.9 vatton 25: bag; 26: attribute; 27: END; 1.7 francesc 28: 1.11 francesc 29: head = LIST OF ( 1.7 francesc 30: Declaration = CASE OF 31: component; 32: union; 33: import; 34: END 1.11 francesc 35: ); 1.7 francesc 36: 1.11 francesc 37: component ( ATTR name = TEXT; title = TEXT ) = ANY - ( head, union, import ); 38: union ( ATTR name; includeAt = TEXT; exclude = TEXT; title ) = CONSTANT C_CR; {It is always empty} 39: import ( ATTR src = TEXT ) = CONSTANT C_CR; {It is always empty} 1.9 vatton 40: 1.15 quint 41: folder = ANY - ( head, union, import, component ); 42: 1.19 vatton 43: repeat ( ATTR ref = TEXT; minOccurs = TEXT; maxOccurs = TEXT; currentOccurs = 1.15 quint 44: TEXT; title ) = 45: LIST OF ( Repetition = 46: CASE OF 47: useEl; 1.17 vatton 48: useSimple; 1.15 quint 49: option; 50: repeat; 1.18 vatton 51: bag; 1.15 quint 52: folder; 53: END); 1.11 francesc 54: 1.10 francesc 55: 1.19 vatton 56: option ( ATTR ref ) 1.15 quint 57: = ANY - ( head, union, import, component ); 1.7 francesc 58: 1.19 vatton 59: useEl ( ATTR ref; types = TEXT; currentType = TEXT; title ) 1.15 quint 60: = ANY - ( head, union, import, component ); 1.7 francesc 61: 1.19 vatton 62: useSimple ( ATTR ref; types; currentType; title ) 1.17 vatton 63: = ANY - ( head, union, import, component ); 64: 1.19 vatton 65: bag ( ATTR ref; types ) 1.21 ! vatton 66: = LIST OF (ANY) - ( head, union, import, component ); 1.7 francesc 67: 1.11 francesc 68: attribute ( ATTR 1.19 vatton 69: ref_name = TEXT; 1.10 francesc 70: type = integerVal, decimal, string, listVal; 1.7 francesc 71: useAt = TEXT; 1.10 francesc 72: defaultAt = TEXT; 73: fixed = TEXT; 74: values = TEXT; 1.11 francesc 75: title ) = CONSTANT C_CR; {It is always empty} 1.7 francesc 76: 77: EXCEPT 1.21 ! vatton 78: useEl: NoReplicate, NoBreakByReturn, NoCreate; ! 79: useSimple: NoReplicate, NoBreakByReturn, NoCreate; ! 80: repeat: NoReplicate, NoBreakByReturn, NoCreate; ! 81: option: NoReplicate, NoBreakByReturn, NoCreate; ! 82: bag: NoReplicate, NoBreakByReturn, NoCreate, ParagraphBreak; 1.16 quint 83: {Hiding unkown and language attributes} 1.19 vatton 84: Unknown_attribute: Invisible; 85: Language: Invisible; 1.16 quint 86: types : DuplicateAttr; 1.19 vatton 87: currentType: Invisible, GiveName; 88: ref: Invisible; 1.1 tollenae 89: 90: END