Hyper-relation
From UNL Wiki
(Difference between revisions)
(Created page with "Relations may have relations as arguments. In this case, they are said to be "hyper-relations". Examples of hyper-relations are the following: *XP(XB(%a;%b);%c) - a syntactic ...") |
(→Notation) |
||
(11 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | + | Hyper-relation is a relation between [[relation]]s, or between relations and nodes. | |
− | * | + | |
− | * | + | == Basic Symbols == |
− | + | {{:Basic Symbols}} | |
+ | |||
+ | == Basic Concepts == | ||
+ | {{:Grammar units}} | ||
+ | |||
+ | == Notation == | ||
+ | Hyper-relations and [[relation]]s are represented in the same way, i.e., | ||
+ | rel:scope(arg1;arg2;...;argn) | ||
+ | where: | ||
+ | *rel is the name of the hyper-relation | ||
+ | *scope is the [[scope]] of the hyper-relation | ||
+ | *arg1, arg2, ... are the arguments of the hyper-relation | ||
+ | The only difference between relations and hyper-relations is that the latter has at least one relation as one of its arguments, e.g.: | ||
+ | *rel(rel1(arg1;arg2);arg3;...;argn) | ||
+ | For better readability, inner relations are normally replaced by relation ID's, to be represented by :XX, where XX is a two-digit string | ||
+ | *rel(rel1(arg1;arg2);arg3;...;argn) is the same as rel(:01;arg3;...;argn)rel1:01(arg1;arg2) | ||
+ | |||
+ | == Properties == | ||
;A hyper-relation may have one single relation as each argument | ;A hyper-relation may have one single relation as each argument | ||
*XP(XB(%a;%b);%c) - the source argument of the hyper-relation XP is a relation | *XP(XB(%a;%b);%c) - the source argument of the hyper-relation XP is a relation | ||
Line 8: | Line 25: | ||
*XP(VC(%a;%b);VA(%a;%c)) - the source and the target argument of the hyper-relation XP are relations | *XP(VC(%a;%b);VA(%a;%c)) - the source and the target argument of the hyper-relation XP are relations | ||
*<strike>XP(VC(%a;%b)VA(%a;%c);VS(%a;%d))</strike> - a hyper-relation may not have more than one relation as one single argument (in this case, the hyper-relation XP contained two relations as the source argument) | *<strike>XP(VC(%a;%b)VA(%a;%c);VS(%a;%d))</strike> - a hyper-relation may not have more than one relation as one single argument (in this case, the hyper-relation XP contained two relations as the source argument) | ||
− | ; | + | ;Differently from [[nodes]], relations do not have elements (strings, headwords, features and indexes) |
*<strike>XP(XB(%a;%b),"ab",[ab],<nowiki>[[ab]]</nowiki>,A,B;%c)</strike> (the relation XB(%a;%b) may not have strings, UWs, headwords or any features) | *<strike>XP(XB(%a;%b),"ab",[ab],<nowiki>[[ab]]</nowiki>,A,B;%c)</strike> (the relation XB(%a;%b) may not have strings, UWs, headwords or any features) | ||
+ | |||
+ | == Examples == | ||
+ | Examples of hyper-relations | ||
+ | *XP(XB(%a;%b);%c) - a syntactic relation XP between the syntactic relation XB(%a;%b) and the node %c | ||
+ | *and(agt([a];[b]);agt([a];[c])) - a semantic relation "and" between the semantic relations agt([a];[b]) AND agt([a];[c]) | ||
+ | |||
+ | == Transformations == | ||
+ | {{:Transformation over hyper-relations}} |
Latest revision as of 21:05, 26 August 2013
Hyper-relation is a relation between relations, or between relations and nodes.
Contents |
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] |
Basic Concepts
- Node
- A node is the most elementary unit in the graph. It is the result of the tokenization process, and corresponds to the notion of "lexical item". At the surface level, a natural language sentence is considered a list of nodes, and a UNL graph a set of relations between nodes.
- Relation
- In order to form a natural language sentence or a UNL graph, nodes are inter-related by relations. In the UNL framework, there are three different types of relations: the linear (list) relation, syntactic relations and semantic relations.
- Hyper-Node
- A hyper-node is a sub-graph, i.e., a scope: a node containing relations between nodes.
- Hyper-Relation
- A hyper-relation is a relation between relations.
Notation
Hyper-relations and relations are represented in the same way, i.e.,
rel:scope(arg1;arg2;...;argn)
where:
- rel is the name of the hyper-relation
- scope is the scope of the hyper-relation
- arg1, arg2, ... are the arguments of the hyper-relation
The only difference between relations and hyper-relations is that the latter has at least one relation as one of its arguments, e.g.:
- rel(rel1(arg1;arg2);arg3;...;argn)
For better readability, inner relations are normally replaced by relation ID's, to be represented by :XX, where XX is a two-digit string
- rel(rel1(arg1;arg2);arg3;...;argn) is the same as rel(:01;arg3;...;argn)rel1:01(arg1;arg2)
Properties
- A hyper-relation may have one single relation as each argument
- XP(XB(%a;%b);%c) - the source argument of the hyper-relation XP is a relation
- XP(%a;XB(%b;%c)) - the target argument of the hyper-relation XP is a relation
- XP(VC(%a;%b);VA(%a;%c)) - the source and the target argument of the hyper-relation XP are relations
XP(VC(%a;%b)VA(%a;%c);VS(%a;%d))- a hyper-relation may not have more than one relation as one single argument (in this case, the hyper-relation XP contained two relations as the source argument)
- Differently from nodes, relations do not have elements (strings, headwords, features and indexes)
XP(XB(%a;%b),"ab",[ab],[[ab]],A,B;%c)(the relation XB(%a;%b) may not have strings, UWs, headwords or any features)
Examples
Examples of hyper-relations
- XP(XB(%a;%b);%c) - a syntactic relation XP between the syntactic relation XB(%a;%b) and the node %c
- and(agt([a];[b]);agt([a];[c])) - a semantic relation "and" between the semantic relations agt([a];[b]) AND agt([a];[c])
Transformations
Hyper-relations are altered, replaced, created and deleted by T-rules:
Creating hyper-relations
Hyper-relations are created through encapsulating relations:
- rel1(%x;%y)rel2(%x;%z):=rel1(rel2(%x;%z);%y); (the relation rel1 between %x and %y becomes a hyper-relation between the relation rel2(%x;%z) and the node %y.)
Transforming hyper-relations into simple relations
Hyper-relations are transformed into simple relations by removing their internal relations:
- rel1(rel2(%x;%z);%y):=rel1(%x;%y)rel2(%x;%z); (the hyper-relation rel1 between the relation rel2(%x;%z) and the node %y is transformed into a simple relation between the nodes %x and %y; the relatin rel2(%x;%z) is not affected.)