Relations: Difference between revisions
From UNLwiki
				
				
				Jump to navigationJump to search
				
				
| imported>Martins No edit summary | imported>Martins No edit summary | ||
| Line 9: | Line 9: | ||
| Where | Where | ||
| *''rel'' is the name of the relation; and | *''rel'' is the name of the relation; and | ||
| *''arg1'', ''arg2'', ..., are the arguments of the relation, i.e., [[node]]s | *''arg1'', ''arg2'', ..., are the arguments of the relation, i.e., [[node]]s. | ||
| == Types == | == Types == | ||
Revision as of 17:19, 19 August 2013
In order to form a natural language sentence or a UNL graph, nodes are inter-related by relations.
Basic Symbols
| Symbol | Definition | Example | 
|---|---|---|
| ( ) | node | (%a) | 
| " " | string | "went" | 
| [ ] | natural language entry (headword) | [go] | 
| [[ ]] | UW | [[to go(icl>to move)]] | 
| // | regular expression | /a{2,3}/ = aa,aaa | 
| rel(x;y) | relation | agt(kill;Peter) | 
| ^ | not | ^a = not a | 
| { | } | or | {a|b} = a or b | 
| % | index for nodes, attributes and values | %x | 
| : | scope ID | :01 | 
| # | index for sub-NLWs | #01 | 
| = | attribute-value assignment | POS=NOU | 
| ! | rule trigger | !PLR | 
| & | merge operator | %x&%y | 
| ? | dictionary lookup operator | ?[a] | 
Notation
Relations are represented by the general syntax
rel(arg1;arg2;...;arg2)
Where
- rel is the name of the relation; and
- arg1, arg2, ..., are the arguments of the relation, i.e., nodes.
Types
In the UNL framework, there can be three different types of relations:
- the linear relation L expresses the surface (list) structure of natural language sentences
- syntactic relations express the syntactic (tree) structure of natural language sentences
- semantic relations express the semantic (graph) structure of UNL graphs
Properties
- The linear relation is always binary and is represented in two possible formats
- L(%x;%y) or
- (%x)(%y)
where L is the invariant name of the linear relation, and %x and %y are nodes.
- Syntactic relations are not predefined, although we have been using a set of binary relations based on the X-bar theory.
- Semantic relations constitute a predefined and closed set that can be found here.
- Arguments of relations are not commutative.
- The order of the elements in a relation affects the result:
- (%x)(%y) is different from (%y)(%x)
- relation(%x;%y) is different from relation(%y;%x)
 
- Linear and semantic relations are always binary; syntactic relations may be n-ary
- L(%x;%y) - linear relation
- agt(%x;%y) - semantic relation
- VH(%x) - unary syntactic relation
- VC(%x;%y) - binary syntactic relation
- XX(%x;%y;%z) - possible ternary syntactic relation
- Inside each relation, nodes are isolated by semicolon (;).
- VC(%x;%y)
- VC(%x,%y)
- Inside each relation, nodes may be referenced by any of its elements, isolated by comma (,)
- ("a")([b]) - linear relation between a node where string = "a" and another node where headword = [b]
- L([[c]];D) - linear relation between a node where UW = [[c]] and another node having the feature D
- VC(%a;%b) - syntactic relation between a node where index = %a and another node where index = %b
- agt("a",[a],[[a]],A;"b",[b],[[b]],B) - semantic relation between a node having the feature A where string = "a" AND headword "a" AND UW = [[a]] AND another node having the feature B where string = "b" AND headword = [b] AND UW = [[b]]
- Relations may be conjoined through juxtaposition
- ("a")("b")("c") - two linear relations: one between ("a") and ("b") AND other between ("b") and ("c")
- agt(%x;%y)obj(%x;%z) - two semantic relations: one between (%x) and (%y) AND other between (%x) and (%z)
- VC([a];[b]),VC([a];[c])- conjoined relations must not be isolated by comma
- Relations may be disjoined through {braces}
- {("a")|("b")}("c") - either ("a")("c") or ("b")("c")
- {agt(%x;%y)|exp(%x;%y)}obj(%x;%z) - either agt(%x;%y)obj(%x;%z) or exp(%x;%y)obj(%x;%z)
- Syntactic and semantic relations may be replaced by regular expressions
- /.{2,3}/(%x;%y) - any relation made of two or three characters between %x and %y