amrisi / amr-guidelines

246 stars 87 forks source link

Use of quantities as generic entity types? #39

Closed cbonial closed 11 years ago

cbonial commented 11 years ago

This question came up in training: can we use things like "monetary-quantity" for example, as a generic entity type for cases where the monetary quantity is implicit?

It is used that way a couple of times in consensus. In the first example below, one monetary quantity is explicitly mentioned, but the other is implicit. In the second example, the only mention is "spending," but monetary-quantity is used to represent the implicit concept of money.

screen shot 2013-06-18 at 2 17 32 pm

screen shot 2013-06-18 at 2 20 29 pm

Can we generally assume that these quantities, and perhaps even other entities like date-entity, are also usable as generic entity types? Or should this practice be avoided? I know we've had discussion about not using quantity types when it's not a specific, measurable quantity, so I wasn't sure if these were oversights, or something we could put into practice.

uhermjakob commented 11 years ago

Good point. In a sense, there are really two levels of monetary quantities: (1) a precise monetary-quantity with a specific :quant and a specific :value Example: $5 (m / monetary-quantity :quant 5 :unit (d / dollar)) (2) A larger semantic class of monetary quantities. Example: approximately $5, a lot of money, the amount spent on advertising

One solution: Introduce semantic classes class-monetary-quantity, class-temporal-quantity, ... and use them as a special NE-type instead of "thing". But in cases such as (a / approximately :op1 (m / monetary-quantity :quant 5 :unit (d / dollar))) where both "a" and "m" are of class class-monetary-quantity, we don't make any changes, relying instead on tools TBD that can automatically determine such a semantic class. Conversely, we might use monetary-quantity and specific-monetary-quantity, but I'm hesitant to make a change that would require massive changes to our AMR Bank.

nschneid commented 11 years ago

@ulfulf: What's wrong with using monetary-quantity for both precise and imprecise amounts? Would it be sufficient to define your class (1) as monetary-quantities with a :quant and :unit?

uhermjakob commented 11 years ago

@nschneid: Pragmatic reasons. More lenient typing would make it much harder for the AMR Checker to catch errors. It would probably also make it a bit harder to make a clear case how fuzzy quantities (such as "about $5") are built based on precise quantities, top-modified by fuzzy operators such as between and approximately.

cbonial commented 11 years ago

I think that it's easy enough for annotators to recognize the distinction that we could use something like class-monetary quantity as an entity type and also know when to use the actual monetary-quantity. I actually like the "class" terminology and think this reinforces the distinction.

kevincrawfordknight commented 11 years ago

feel free to use:

(m2 / maintain-01 :arg1 (m / monetary-quantity :arg3-of (s / spend-01 ...)))

instead of:

(m2 / maintain-01 :arg1 (t / thing :arg3-of (s / spend-01 ...)))

(m2 / maintain-01 :arg1 (s / spend-01 ...))