2357
Comment: converted to 1.6 markup
|
2794
|
Deletions are marked like this. | Additions are marked like this. |
Line 27: | Line 27: |
== General Remarks == Predicate names are ''not'' case-sensitive, but constants (`CARG`s) are. Furthermore, even though much current MRS manipulation software maintains a distinction between double-quoted predicate names (corresponding to Lisp strings) and non-quoted ones (Lisp symbols, often naming types in some hierarchy); this distinction is not meaningful either and arguably should be suppressed in MRS in- and output. |
Request For Comments: MRS
Overview
Formal Properties
Required properties:
- TOP
- INDEX
- RELS
- HCONS
Note that there is debate about the status of INDEX. It is not part of the formal definition of a complete MRS (see Copestake et al., 2005), hence Ann has at times argued it should be suppressed when constructing an MRS from its TFS description. On that point of view, INDEX is an element of the composition process, but not the 'final' product.
Conversely, it has been argued (by Dan and Francis, among others) that composition does not stop at the utterance level, i.e. if we were to move into discourse-level analysis, we might still need access to INDEX. Furthermore, in semantic transfer it is often convenient to have access to the INDEX (even more so as the current ERG leaves the TOP underspecified). In conclusion, as of mid-2011, I believe INDEX can be considered a legitimate component of MRSs, even though it remains true that it has a slightly different formal status than the others
General Remarks
Predicate names are not case-sensitive, but constants (CARGs) are. Furthermore, even though much current MRS manipulation software maintains a distinction between double-quoted predicate names (corresponding to Lisp strings) and non-quoted ones (Lisp symbols, often naming types in some hierarchy); this distinction is not meaningful either and arguably should be suppressed in MRS in- and output.
Syntaces
Simple MRS
<mrs> ::= "[" "LTOP:" <var> "INDEX:" <var> [ "[" <vtype> <proplist> "]" ] "RELS:" "<" <eplist> ">" "HCONS:" "<" <hconss> ">" "]"
<var> ::= /[A-Za-z][^\d\s]*\d+/
<vtype> ::= /[A-Za-z][^\d\s]*/
<proplist> ::= (<prop> <val>)*
<prop> ::= /[^\s]+:/
<val> ::= /[^\s]+/
<eplist> ::= <ep>*
<ep> ::= "[" <pred> <roles> "]"
<pred> ::= (<realpred>|<grammarpred>)[<span>]
<realpred> ::= /^"_((\\")|[^"]*)*_rel"/
<grammarpred> ::= /\w+_rel/
<span> ::= /<(-)?\d+:(-)?\d+>/
<roles> ::= <role>*
<role> ::= "LBL:" <var> | "CARG:" <string> | <rolename> <var> ["[" <vtype> <proplist> "]"]
<rolename> ::= /[^\s]+:/
<string> ::= "string" | <starredstring> | <quotedstring>
<starredstring> ::= /\*\w*\*/
<quotedstring> ::= /"((\\")|[^"]*)*"/
<hconss> ::= <hcons>*
<hcons> ::= <var> <relation> <var>
<relation> ::= "qeq" | "lheq" | "outscopes"