summaryrefslogtreecommitdiff
path: root/grammars/database/Database.gf
blob: eb0c08d9fda12e6e75fd030d6cadaeca28c782f1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
abstract Database = {

flags startcat=Query ;

cat 
  Query ; 
  Category ; Subject ; Value ; Property ; Relation ; Comparison ; Name ;
  Feature ;

fun 
  WhichAre  : Category -> Property -> Query ;
  IsThere   : Category             -> Query ;
  AreThere  : Category             -> Query ;
  IsIt      : Subject -> Property  -> Query ; 
  WhatIs    : Value                -> Query ;

  MoreThan   : Comparison -> Subject  -> Property ;
  TheMost    : Comparison -> Category -> Value ;
  Relatively : Comparison -> Category -> Property ;

  RelatedTo  : Relation -> Subject -> Property ;

  Individual : Name -> Subject ;
  AllN       : Category -> Subject ;
  Any        : Category -> Subject ;
  MostN      : Category -> Subject ;
  EveryN     : Category -> Subject ;

  FeatureOf  : Feature -> Subject -> Subject ;
  ValueOf    : Feature -> Name -> Value ;

  WithProperty : Category -> Property -> Category ;
} ;