Quoting Bob Glickstein (2019-12-03 10:48:01)
> For another example, claims and permanodes seem to need timestamps, but
> I quickly ran into cases where a timestamp is not desirable and ended
> up using time.Unix(0, 0) as a handy null value.
Can you clarify what the problem is?
The timestamp on a claim indicates when the claim was made, so the
correct value when creating one is typically "now."
> I see that the core Perkeep code does that in one or two places too.
I just did a grep of the source tree for 'time.Unix(0, *0)' and only
came up with stuff in vendor/ and two places where it was being used for
the SignatureTime on a permanode, but not claimDate on either permanode
or claims. Not sure what you're referring to?
> How about making timestamps optional?
For claims, this is problematic because searching permanodes as of a
given time depends on the claim dates; it works by just ignoring all
of the claims after that date:
https://perkeep.org/pkg/search/#PermanodeConstraint
For permanodes, the docs don't suggest that these are required?
> These examples are of interest in part because (as you may have seen) I
> have been playing around with importing highly structured static data
> as schema blobs. To that end I'd also like to explore design options
> that would allow schema blobs (rather than merely claims and
> permanodes) to protect one another from garbage collection.
> (How might that look? Imagine a "schema+" blob with this structure:
> {camliVersion:..., camliType:..., payload:..., protects:[...]}. Here
> payload is whatever structure camliType says it is, and protects is a
> list of blobrefs reachable from this blob.)
You may be interested in:
https://perkeep.org/doc/schema/keep
--
You received this message because you are subscribed to the Google Groups
"Perkeep" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/perkeep/157539319804.883.5459483170730246412%40localhost.localdomain.