Both sides previous revision
Previous revision
Next revision
|
Previous revision
|
hekate:attributes [2008/11/20 15:10] ligeza null explanation |
hekate:attributes [2008/11/27 16:17] gjn |
| |
**Version**: Draft 2008Q3 | **Version**: Draft 2008Q3 |
| |
| //Please put bigger remarks/discussusion, to the [[hekatedev:attributes|attributes development page]]// |
| |
===== Introduction ===== | ===== Introduction ===== |
| |
The semantics can be: "no value", "unset", "not defined yet", etc. | The semantics can be: "no value", "unset", "not defined yet", etc. |
| Yes; to me, we should accept //NULL// exactly as it is in RDB systems. This allows to import data //as they are//. |
| |
See here for the [[hekate:alsvfd#any_and_null|binding resolution]]. | See here for the [[hekate:alsvfd#any_and_null|binding resolution]]. |
| |
However, we could consider //another// semantics, such as "unknown" | However, we could consider //another// semantics, such as "unknown", see below. |
| |
| ==== ND or NA ==== |
| On the other hand, we can consider introducing //ND// or //NA// as for example the capacity of and electric engine, |
| meaning "does not apply", e.g. "maiden name" in case of a male. |
| |
FIXME ALi | |
NULL as "unknown" should be treated as an extension. | NULL as "unknown" should be treated as an extension. |
Its use should be explictly allowed in the attribute specification. | Its use should be explicitly allowed in the attribute specification. |
| |
Yes; to me, we should accept //NULL// exactly as it is in RDB systems. This allows to import data //as they are//. | |
| |
On the other hand, we can consider introducing //ND// as for example the capacity of and electric engine. | |
| |
==== Explicit Notation ==== | ==== Explicit Notation ==== |
| |
==== Implicit Notation ==== | ==== Implicit Notation ==== |
FIXME ALi | |
For setting attribute value the same implicit notation as for the domains should be used (a sum of ranges or values), | For setting attribute value the same implicit notation as for the domains should be used (a sum of ranges or values), |
''i.e. S=<5,8>u{3}.'' | ''i.e. S=<5,8>u{3}.'' |
| |
I agree. We should define the rules for well-formed expressions (enabling unique calculation of values), and allow for using it. This should be based on set algebra and incorporate the notational variants, such as ''A > 5'' (which in fact means ''A={6,7}'' if the domain of A is {1,2,3,4,5,6,7}. | I agree. We should define the rules for well-formed expressions (enabling unique calculation of values), and allow for using it. This should be based on set algebra and incorporate the notational variants, such as ''A > 5'' (which in fact means ''A={6,7}'' if the domain of A is {1,2,3,4,5,6,7}. |
| |
| So we use the //sum// SetTheory operator and sets of values. |
| |
| Syntactic suger on the interface level, |
| consider attribute T, domain {0,50}, we mean, t=<10, the tool sould hint, t=<0,10>, |
| in //STATE// we store t=<0,10>, see above. |
| |
| |
| |
//Symbol// might also be called //String//. | //Symbol// might also be called //String//. |
| |
| check types in Hibernate!!! FIXME |
| |
Basic types in other languages (also called primitive types): | Basic types in other languages (also called primitive types): |