[ { "@id": "https://atomicdata.dev/properties/shortname", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/slug", "https://atomicdata.dev/properties/description": "A short name of something. It can only contain letters, numbers and dashes `-`. Use dashes to denote spaces between words. Not case sensitive - lowercase only. Useful in programming contexts where the user should be able to type something short to identify a specific thing.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "shortname" }, { "@id": "https://atomicdata.dev/properties/description", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/markdown", "https://atomicdata.dev/properties/description": "A textual description of something. When making a description, make sure that the first few words tell the most important part. Give examples. Since the text supports markdown, you're free to use links and more.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "description" }, { "@id": "https://atomicdata.dev/properties/isA", "https://atomicdata.dev/properties/classtype": "https://atomicdata.dev/classes/Class", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/resourceArray", "https://atomicdata.dev/properties/description": "A list of Classes of which the thing is an instance of. The Classes of a Resource determine which Properties are recommended and required.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "is-a" }, { "@id": "https://atomicdata.dev/properties/parent", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/atomicURL", "https://atomicdata.dev/properties/description": "The parent of a Resource sets the hierarchical structure of the Resource, and therefore also the rights / grants. It is used for both navigation, structure and authorization. Parents are the inverse of [children](https://atomicdata.dev/properties/children).", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "parent" }, { "@id": "https://atomicdata.dev/properties/datatype", "https://atomicdata.dev/properties/classtype": "https://atomicdata.dev/classes/Datatype", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/atomicURL", "https://atomicdata.dev/properties/description": "The Datatype of a property, such as String or Timestamp.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "datatype" }, { "@id": "https://atomicdata.dev/properties/classtype", "https://atomicdata.dev/properties/classtype": "https://atomicdata.dev/classes/Class", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/atomicURL", "https://atomicdata.dev/properties/description": "The class-type indicates that the Atomic URL should be an instance of this class.\n\nThis can be used inside [`Property`](https://atomicdata.dev/classes/Property) instances where the [`datatype`](https://atomicdata.dev/properties/datatype) is either [`Resource`](https://atomicdata.dev/datatypes/resource) or [`ResourceArray`](https://atomicdata.dev/datatypes/resourceArray).\n\nSo for example if we have a `Property` called `friend`, the `classType` can be `Person`.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "classtype" }, { "@id": "https://atomicdata.dev/properties/recommends", "https://atomicdata.dev/properties/classtype": "https://atomicdata.dev/classes/Property", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/resourceArray", "https://atomicdata.dev/properties/description": "The Properties that are not required, but recommended for this Class.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "recommends" }, { "@id": "https://atomicdata.dev/properties/requires", "https://atomicdata.dev/properties/classtype": "https://atomicdata.dev/classes/Property", "https://atomicdata.dev/properties/datatype": "https://atomicdata.dev/datatypes/resourceArray", "https://atomicdata.dev/properties/description": "The Properties that are required for each instance of this Class.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Property" ], "https://atomicdata.dev/properties/shortname": "requires" }, { "@id": "https://atomicdata.dev/classes/Property", "https://atomicdata.dev/properties/description": "A Resource that should redirect the browser to a new location. It can also set a `redirectAgent`, which is used in Invites to create an Agent Resource on the Server from a Public Key that the user posesses. See the [Invite docs](https://docs.atomicdata.dev/invitations.html).", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Class" ], "https://atomicdata.dev/properties/requires": [ "https://atomicdata.dev/properties/destination" ], "https://atomicdata.dev/properties/recommends": [ "https://atomicdata.dev/properties/invite/redirectAgent" ], "https://atomicdata.dev/properties/shortname": "redirect" }, { "@id": "https://atomicdata.dev/classes/Class", "https://atomicdata.dev/properties/description": "A Class describes an abstract concept, such as 'Person' or 'Blogpost'. It describes the data shape of data and explains what the thing represents. It is convention to use Uppercase in its URL. Note that in Atomic Data, a Resource can have several Classes - not just a single one. A Resource describes which Classes it has using the [`is-a` Property](https://atomicdata.dev/properties/isA).", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Class" ], "https://atomicdata.dev/properties/recommends": [ "https://atomicdata.dev/properties/recommends", "https://atomicdata.dev/properties/requires" ], "https://atomicdata.dev/properties/requires": [ "https://atomicdata.dev/properties/shortname", "https://atomicdata.dev/properties/description" ], "https://atomicdata.dev/properties/shortname": "class" }, { "@id": "https://atomicdata.dev/classes/Datatype", "https://atomicdata.dev/properties/description": "A Datatype describes a possible type of value, such as 'string' or 'integer'. In the JSON-AD serialization format, Datatypes by default use strings, unless noted otherwise.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Class" ], "https://atomicdata.dev/properties/requires": [ "https://atomicdata.dev/properties/shortname", "https://atomicdata.dev/properties/description" ], "https://atomicdata.dev/properties/shortname": "datatype" }, { "@id": "https://atomicdata.dev/classes/Agent", "https://atomicdata.dev/properties/description": "An Agent is a user that can create or modify data. It has two keys: a private and a public one. The private key should be kept secret. The public key is used to verify signatures (on [Commits](https://atomicdata.dev/classes/Commit)) set by the of the Agent.", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Class" ], "https://atomicdata.dev/properties/recommends": [ "https://atomicdata.dev/properties/name", "https://atomicdata.dev/properties/description" ], "https://atomicdata.dev/properties/requires": [ "https://atomicdata.dev/properties/publicKey" ], "https://atomicdata.dev/properties/shortname": "agent" }, { "@id": "https://atomicdata.dev/classes/Importer", "https://atomicdata.dev/properties/description": "Performs ", "https://atomicdata.dev/properties/isA": [ "https://atomicdata.dev/classes/Class" ], "https://atomicdata.dev/properties/recommends": [ "https://atomicdata.dev/properties/name", "https://atomicdata.dev/properties/description" ], "https://atomicdata.dev/properties/shortname": "importer" } ]