Annotation of Amaya/amaya/Template.S, revision 1.20
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.20 ! kia 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.19 vatton 78: repeat: NoReplicate, NoBreakByReturn;
79: option: NoReplicate, NoBreakByReturn;
1.16 quint 80: {Hiding unkown and language attributes}
1.19 vatton 81: Unknown_attribute: Invisible;
82: Language: Invisible;
1.16 quint 83: types : DuplicateAttr;
1.19 vatton 84: currentType: Invisible, GiveName;
85: ref: Invisible;
1.1 tollenae 86:
87: END
Webmaster