draft
author:wds4
In DCoSL, data is represented using graphs, which is a collection of nodes and edges. A concept graph is a graph with additional structure, as described though this series of DIPs.
A Node is any piece of information, of any size, in any format. It can be analog or digital, binary or trinary.
For the most part, we will be restricing our attention to data in the form of objects, using json, and will be relying heavily upon json schema to keep track of their formats. But in principle, a node could represent data files in other formats, such as XML, CSV, SQL, TXT, etc. A node could even represent the information recorded on a physical object: a book, a piece of paper, the back of a napkin, puffs of smoke in the air.
If you don't like json or json schema, realize that DCoSL can be readily reformulated using some alternative to json, or with json but using some alternative to json schema, while keeping the overall structure and approach of DCoSL intact.
An edge, a.k.a a relationship, is a connection between two nodes. Like a node, an edge contains information. But unlike a node, the amount of information stored in an edge is kept to a minimum. Each edge has a small handful of attributes:
- Each edge is dirrectional or undirected.
- Each edge has an identifier which is a string.
Although DCoSL is not technically a "graph database", many of the ideas and principles are the same.