Subject: deleting temporary annotations


Hi Peter,

Well, I want to remove them to make the output thinner. XML is very
verbose, and when it comes to persisting a large number of cas files, every
extra annotation can make the life harder in the long run. I do agree, that
it is good to keep them for explainability and debugging purposes.

I was about to ask another question of whether unmarking a parent also
unmarks the child annotations -- I noticed this happen while experimenting
-- and your example confirms it ;)

DECLARE Local LeftBoundary;
DECLARE Local RightBoundary;
l:Local{-> UNMARK(l)};
Honestly, it is not intuitive that child nodes will be affected. The
documentation does not mention it at all. Would you mind explaining the
purpose of parent classes? Another question... I thought that derived
annotations will inherit the properties of their parent annotation, like
normal subclasses in OOP, but looks like they dont:

DECLARE Money (STRING name, INT amount);

DECLARE Money SellPrice;

In this example, SellPrice does not automatically have the fields that
Money has. Hmm.. Why does one need to use parent class then? Related
question, what if I declare SellPrice with the same fields:

DECLARE Annotation  Money    (STRING name, INT amount);
DECLARE Money        SellPrice (STRING name, INT amount);
what is then the easier method of copying the values from Money to
SellPrice? For the time being, I use TRANSFER statement, like this:

SomeContent Money {-> TRANSFER(SellPrice) } SomeContext;

Frohe Ostern!

BR, Nikolai

On Thu, Apr 18, 2019 at 11:25 PM Peter Klügl <[EMAIL PROTECTED]>
wrote: