Open kevincrawfordknight opened 8 years ago
What about yes-no questions with negation: "Did he not sing?" Do we want to claim that's equivalent in meaning to "Did he sing?" (I think the former indicates a presumption that he did sing.)
I am in favor of reviewing interrogatives generally, though, and reducing :mode interrogative
where possible. See also #185 which introduces amr-choice
for multiple-choice questions.
I would normally understand a question like "Did he not sing?" to mean something like "He sang, didn't he?" which we would annotate as
(s / sing-01
:ARG0 (h / he)
:ARG1-of (r / request-confirmation-91))
AMR Dict: http://www.isi.edu/~ulf/amr/lib/amr-dict.html#tag%20question
Oh good, then as long as that's documented as similar to a tag question, I can only think of a syntactic objection to :polarity amr-unknown
for neutral yes-no questions: that amr-unknown
is usually a concept rather than a constant. (And AFAIK there are no constants that contain both alphabetic characters and hyphens, so this might break compatibility for AMR readers.) Maybe call it :polarity 0
?
Maybe:
I don't know whether the boy sang.
(k / know-01
:arg0 (i / i)
:polarity -
:arg1 (s / sing-01
:polarity (a / amr-unknown)
:arg0 (b / boy)))
What about the following (in analogy with ":wiki ?"):
I don't know whether the boy sang.
(k / know-01
:arg0 (i / i)
:polarity -
:arg1 (s / sing-01
:polarity ?
:arg0 (b / boy)))
đź‘Ť
Did the boy sing?
(s / sing-01
:polarity ?
:arg0 (b / boy))
No :mode interrogative
.
Let's get rid of ":mode interrogative". Here's how:
Did the boy sing?
(s / sing-01
:arg0 (b / boy)
:polarity (a / amr-unknown)))
I don't know whether the boy sang.
I don't know if the boy sang.
What I don't know is if the boy sang or not.
(k / know-01
:arg0 (i / i)
:polarity -
:arg1 (t / truth-value
:polarity-of (s / sing-01
:arg0 (b / boy))))
We have no information on whether users are at risk.
(i / inform-01
:arg1 (w / we)
:arg2 (r / risk-01
:arg2 (u / user))
:polarity -)
We must decide whether resistance is futile.
(d / decide-01
:arg0 (w / we)
:arg1 (t / truth-value
:polarity-of (f / futile
:domain (r / resist-01
:arg0 w))))
We are debating whether to purchase a machine.
We are debating the purchase of a machine.
(d / debate-01
:arg0 (w / we)
:arg1 (p / purchase-01
:arg0 w
:arg1 (m / machine)))
Did the boy not sing?
The boy sang, didn't he?
(s / sing-01
:ARG0 (h / he)
:ARG1-of (r / request-confirmation-91))
I'm not sure that the :polarity
on sing
needs to be different for
Did the boy sing?
versus
I don't know whether the boy sang. I don't know if the boy sang. What I don't know is if the boy sang or not.
Consider: "Did the boy sing? I don't know." (Seems equivalent to the above, it we were to give it one AMR.)
I take it that @kiragrif's proposal was to use :polarity ?
in all these cases. I like the conciseness of that—is there a reason we would need an additional concept to refer back to?
no need to have both "?" and "amr-unknown", and have AMR-consuming programs deal with them separately. "amr-unknown" consistently means "here is a slot whose value the speaker would like to know", regardless of whether the speaker realizes this request syntactically by a yes-no question, a wh-question, or some other mechanism.
definitely might be interesting to also represent "i don't know if X" with "amr-unknown". in this case, the contrast is that the speaker doesn't necessarily want to know the truth-value of X ... they might just be stating that they don't know it.
the contrast is that the speaker doesn't necessarily want to know the truth-value of X ... they might just be stating that they don't know it.
That seems like a difference between speech acts that are declarative vs. interrogative, which is not entirely the same as the status of truth value itself (it seems to me). Maybe we're better off keeping :mode interrogative
to capture the utterance-level speech act, and marking unknown :polarity
in addition.
But I'm not an expert on the semantics/pragmatics of questions. I'm sure the formal semantics literature has a lot to say here.
i think we're trying to get those in context. so "can you pass the salt?" should be an imperative (perhaps with polite +), not a request to fill a slot value. we may have to judge "i don't know if X" in context. it might be a simple statement of fact about the speaker's lack of knowledge, or it might be a request for information -- we can represent either in AMR. if it's something else (e.g., "i don't know if you should do that" ~ "you shouldn't do that"), our goal should be to cover such stuff (use "recommend-01"), but to go with literal meaning short of that.
let's remove all ":mode interrogative" through mechanisms we already have. the corpus sentences above with "information", "futile", and "purchase" can be handled with different existing AMR mechanisms (not necessarily "amr-unknown").
I wanted to chime in in support of Kevin's proposal; I think that this :polarity amr-unknown
trick really improves our treatment of questions. Currently, if someone were to ask me "how do I tell whether this AMR is a question?", the answer might be embarrassingly complicated, and wouldn't be 100% accurate, since we get AMRs like:
So I ask do you think drugs can be good for some people?
(c / cause-01
:ARG1 (a / ask-01
:ARG0 (i / i)
:ARG1 (t / think-01 :mode interrogative
:ARG0 (y / you)
:ARG1 (p / possible-01
:ARG1 (g / good-04
:ARG1 (d / drug)
:ARG2 (p2 / person
:mod (s / some)))))))
(this is presumably the same AMR as the declarative "therefore, I asked whether you thought that it was possible for drugs to be good for some people.")
As for the "whether" complements; the proposed new model gives us clean treatments for things that are pretty ugly for :mode interrogative
, like "I don't know whether the boy sang, but John claims that he did":
(a3 / and
:op1 (k / know-01 :polarity -
:ARG0 i
:ARG1 (t2 / truth-value
:polarity-of (s2 / sing-01)))
:op2 (c / claim-01
:ARG0 (p4 / person :name (n2 / name :op1 "John"))
:ARG1 s2))
Since ":mode interrogative" is pretty syntacticky, how about this for yes-no questions:
Comments?
I mentioned this to Tim, and he suggested extending it to "whether/if" clauses, in order to eliminate another class of ":mode interrogative".
Can't remember what Tim meant exactly, just guessing here:
Comments?