In this section we show how to define schema in BNF notation.
Bold type words are those which must be written as they are, and slanted
type words are data types. Please see Kappa user's manual for the
details related to distributed databases and so on which are
omitted here.
<Schema>::=TableName(TableProperty,AttrList,NestSequence,
HorizontalDecompositionInfo)
TableName::= ATOM
nil
TableProperty::= primitive
AttrList::={Attr
AttrList}
NestSequence::=[AttrName
NestSequence]
[]
AttrName::= ATOM
HorizontalDecompositionInfo::= shd(HorizontalDecompositionMethod,
HorizontalDecompositionInfoList)
nil
Attr::=AttrName(RepetitiveProperty,AttrPropertyList)
AttrName(RepetitiveProperty,AttrList)
RepetitiveProperty::= set
single
AttrPropertyList::=[AttrProperty
AttrPropertyList]
[]
AttrProperty::= type(DataType)
key(KeySpecification)
key(primary,ReferenceKeyInfo)
access(AccessSpecification)
null_value(NullValueSpecificaion)
overflow(OverflowSpecification)
DataType::= string
integer
term
KeySpecification::= table
set
non_key
NullValueSpecification::= not_allowed
allowed
not_nil
not_bottom
OverflowSpecification::= not_allowed