TODO: ----- Clean this up and/or break into separate files. Old notes from July doc: ------------------------ Claim types: permanode-become: -- implies either: 1) switching from typeless/lifeless virgin pnode into something (dynamic set, filesystem tree, etc) 2) changing versions of that base metadata (new filesystem snapshot) -- ‘permaNode’ is the thing that is changing -- ‘contents’ is the current node that represents what permaNode changes to set-membership: add a blobref to a dynamic set -- “permaNode” is blobref of the dynamic set delete-claim: delete another claim (target is claim to delete) -- “contents” is the claim blobref you’re deleting {set,add}-attribute: -- attach a piece of metadata to something. -- use set-attribute for single-valued attributes only: highest dated claim wins (of trusted person) e.g. “title”, “description” -- use add-attribute for multi-valued things. e.g. “tag” Tagging something: {“claimType”: “add-attribute”, // “attribute”: “tag”, // utf-8, should have list of valid attributes names, preferrably not made up by us (open social spec?) “value”: “funny”, // value that doesn’t have lasting value “valueRef”: “sha1-blobref”, // hefty reference to a lasting value “claimer?”: “sha1-of-the-dude-who’s-signing”, “claimDate”: “2010-07-10T17:20:03.9212Z”, “claimType”, “permanode-become”, “permaNode”: “sha1-pnode”, } filesystem root claim: { “camliVersion”: 1, “camliType”: “claim”, // Stuff for camliType “claim”: “claimDate”: “2010-07-10T17:20:03.9212Z”, // redundant with data in ascii armored "camliSig". TODO: resolve “claimType”, “permanode-become”, // Stuff for “permanode-become”: “permaNode”: “sha1-pnode”, “contents”: “sha1-fs-node” ,"camliSigner": "digalg-blobref-to-ascii-armor-public-key-of-signer", "camliSig": "......"}