github.com/olivere/camlistore@v0.0.0-20140121221811-1b7ac2da0199/website/content/docs/schema/index.html (about) 1 <h1>Schema</h1> 2 3 <p> 4 At the lowest layer, Camlistore doesn't care what you put in it 5 (everything is just dumb bytes) and you're free to adopt your own 6 data model. However, the upper layers of Camlistore standardize on 7 a <a href="/gw/doc/schema">common schema</a> to represent various 8 classes of data. 9 </p> 10 11 <p> 12 Schema blobs are JSON objects with at least two attributes always 13 set: <tt>camliVersion</tt>, which is always 1, 14 and <tt>camliType</tt>, which tells you the type of metadata the 15 blob contains. 16 </p> 17 18 <p> 19 Here are some of the data types we've started to formalize 20 a <a href="http://json.org/">JSON</a> schema for: 21 </p> 22 23 <ul> 24 <li> 25 <a href="http://camlistore.org/gw/doc/schema/files">Files</a>: 26 traditional filesystems. Files, directories, inodes, symlinks, 27 etc. Uses the <tt>file</tt>, <tt>directory</tt>, <tt>symlink</tt>, 28 and <tt>inode</tt> camliTypes. 29 </li> 30 31 <li> 32 <a href="schema/permanode">Permanodes</a>: the immutable root 33 "anchor" of mutable Camlistore objects 34 (see <a href="terms">terminology</a>). Users create 35 signed <a href="/docs/schema/permanode#claim">claim</a> schema 36 blobs which reference a permanode and define some mutation for the 37 permanode. 38 <br> 39 Permanodes are used to model many kinds of mutable data, including 40 mutable files, dynamic directories, and more. 41 <br> 42 Uses the <tt>permanode</tt> and <tt>claim</tt> camliTypes. 43 </li> 44 45 <li> 46 <a href="/gw/doc/schema/objects/static-set.txt">Static Sets</a>: 47 Immutable lists of other blobs by their refs. Indicated by 48 the <tt>static-set</tt> camliType. 49 </li> 50 51 <li> 52 <a href="/gw/doc/schema/objects/keep.txt">"Keep" claims</a>: 53 Normally, any object that isn't referenced by a permanode could 54 theoretically be garbage collected. Keep claims prevent that from 55 happening. Indicated by the <tt>keep</tt> camliType. 56 </li> 57 </ul>