for now, just some notes after a talk with Tim about using N3 for n-ary
It's all about using binary-relation glasses sometimes, and n-ary relation glasses other times -- on the same data.
Expressions
(x y z)!sum sum of (x y z) sum$(x y z) sum(x y z)
Statements
possible new syntax:
WeatherReading(boston 63 jan_10_2006).
existing syntax - class of lists
( boston 63 jan_10_2006) a WeatherReading.
existing syntax - reifying relationship (several forms)
[where boston; temp 63; when jan_10_2006] a WeatherReading. [where boston; temp 63; when jan_10_2006; a WeatherReading]. [where boston; temp 63; when jan_10_2006]. # if domain of where is WeatherReading
could do both at once:
foo a WeatherReading, where boston; rdf:first boston; ...
but that seems like a bad practice. doesn't match some ideas of lists.
Issue: Poluting Domain of Discourse
Do all these reifications of the relation-tuple somehow somehow cause problems, cluttering up the domain of discourse?
Issue: Performance
Proper tuples are like c structs; here we're talking about doing everything in hash tables. cf python.
Issue: Mental Model
It is mentally more challenging when you have to notice that slots have names, that there is a binary model here?