Ken

Ken

  • Docs
  • Explorer
  • Github

›Ken Standard

Introduction

  • What & Why
  • Stack Layers

Ken Standard

  • Bases
  • kenID
  • Facts

KenML

  • KenML

KenJs

  • KenJs

Ken Explorer

  • Ken Explorer

Bases

Bases are collections of facts with metadata. Each base has a Base ID. Bases are expected to be generally moderated and maintained by groups of people.

Simplified Json Example

{
  "baseId": "exampleBase",
  "privateIds": [
    "examplebase/tools/hammer/_f/MK5yxYv4",
    "examplebase/tools/toolkit/_f/#ZxzB7*fl"
  ],
  "facts": [
    {
      "subjectId": "examplebase/tools/hammer",
      "propertyId": "stdlib/properties/is-instance-of",
      "value": "tool-definitions/properties/hammer",
      "factId": "examplebase/tools/hammer/_f/MK5yxYv4"
    },
    {
      "subjectId": "examplebase/tools/toolkit",
      "propertyId": "stdlib/properties/is-instance-of",
      "value": "tool-definitions/properties/toolkit",
      "factId": "examplebase/tools/toolkit/_f/#ZxzB7*fl"
    }
  ]
}
KeyDescription
baseIdThe baseID should be the name chosen for this base.
privateIdsThere may be cases where some of the IDs instantiated in a given base were generated randomly. In this case, the base creator could flag these IDs as "private", meaning that they are not recommended to be referenced by other bases. This could also be used for the base creator to signal that others should not use the ID for other reasons.
factsA list of facts contained in the base.

Note that the above API is not currently exposed in Ken.Js. Instead, it supports KenML, which translates into a structure that handles the same information.

Referring to a Base

Base names themselves are not valid kenIDs, and thus cannot be used to describe the bases in facts. If you would like to write facts that describe a base, add them using the kenID {baseName}/.about. For example, if the base ID is tools, the kenID to refer to it is tools/.about.

Distinguishing Between Bases with the same Base IDs

Currently there is no standard to distinguish two bases that use the same base ID. In the future there could be something similar to the internet DNS system to do this.

← Stack LayerskenID →
  • Referring to a Base
  • Distinguishing Between Bases with the same Base IDs
Ken
Docs
Ken StandardKenMLKenJsKen Explorer
More
GitHubStar