Closed aannleax closed 1 year ago
Seems a bit underspecified for a single issue. So let me first clarify the key aspects for the basic design:
Note that, when implementing more of the XML Schema types, one also has to add some internal types that ensure that the "hierarchy" is actually a sup-semilattice (some pairs of types have several upper bounds in XSD but no most specific one). But that only comes up when considering much more specific types than initially planned.
Then, for the above questions in their order:
[2]
a syntax-level alias for [rdfs:Resource,rdfs:Resource]
instead of doing anything "smart" that is a source of confusing errors when it behaves unexpected.Related discussion: #185
A basic type system with Any
, String
, Integer
and Float64
has been implemented.
Since there is no type casting when reasoning yet, only Any
and String
are compatible because they happen to have the same physical representation.
Still, since this marks a basic milestone of the type system development, I hereby close this issue. We should open new issues for open points and use the existing discussion for clarifying additional questions.
As part of #70, we planned to have a separate type system on the physical layer and the logical layer. While the former deals with low-level types like u32 or floats, the latter deals with more abstract concepts like "String", "Integer" and so on. The task is to implement this functionality.
Some more considerations:
TrieSchemaElement
which currently represents the type in the physical layerInteger(32)
even though we might not differentiate between integers of different sizes in the logical layer