165
#Somefactoringhere,forthetwokindsofcontent.
external ::='('(extinsDATA:data|
extdel|
usropexternal*|
att_contents)
')';
# end_opnotneededforexternalchanges
extins ::=EXTINSSTRING:id
(ext_change_att:att'='STRING:value)*')';
extdel ::=EXTDELSTRING:id
(ext_change_att:att'='STRING:value)*')';
usrop ::=USROPSTRING:id
(usrop_att:att'='STRING:value)*')';
att_contents ::=ATTLISTSTRING:id
(any_att:att'='STRING:value)*')';
doc_att:att%{att=null;%}
::=BASE|tracking_att:attr;
tracking_att:att%{att=null;%}
::=(OWNER
|TIMESTAMP
|COMMENT
|USER_KEYWORD:attr%{att=attr;%});
change_att:att%{att=null;%}
::=ATT
|tracking_att:attr%{att=attr;%}
#Weallowexternalchangeattributes,sowecaninternalizechanges
#withoutremovingtheiroriginalattributes.Theseattributesshould
#notbeusedonchangesthatwerenotoriginallyexternal...
|POS
|BASE
|LEN
ext_change_att:att::=change_att:attr;
usrop_att:att::=change_att:attr
|ITEMS
|INCLUDES
166
|EXCLUDES;
any_att:att::=usrop_att:attr;
Previous Page Next Page