KnolCase is a case-based knowledge management tool for
gathering information about subjects of interest and organizing these into case
files. This can be used by researchers, investigators, journalists
and others to collect, organize, share, and publish facts about topics.
It is a personal, distributed knowledge base tool.
You can create your own case files with topics like persons, companies,
organizations, places, articles, notes, documents, references, etc.
Topics are connected through properties, essentially forming a network of
The case files are stored locally on your computer giving you a high degree
You can choose to share your case file so others can view it or you can publish
the case topics in the public SLING knowledge base. You can also share your
case files privately.
Then your data will only be available to other users you have shared the
secret key with.
The data is end-to-end encrypted and only the encrypted version is stored
You can choose to export your information to Wikidata to make your
contributions available to a broader audience. Then your information will
ultimately be available in places like Google search knowledge panels, Siri,
as well as many other places.
High degree of privacy. Your data is stored locally on your own
computer until you explicitly choose to share it with others.
Simple to use. No installation required.
You are anonymous. No user registration needed. All traffic is
Cases can be shared with others or published to a public
Collaborations with live edits for working together in closed groups.
It's easy to set up your own collaboration server.
End-to-end encryption for sharing cases privately.
Compatible with Wikidata.
Large existing knowledge base with 100 million topics from Wikidata
as well as other sources like CVR, GLEIF, Twitter, IMDB, Reddit, etc., that
are updated daily.
No tracking and cookies. All external URLs are "noreferrer"
(so the sites you navigate to are not informed about where you came from), no
search engine indexing, and images can be cached to prevent tracking.
Open source. All source code is available on GitHub.
Free. No "premium" features you have to pay for, however donations
for covering expenses are appreciated.
Ergonomic friendly. You can use most functions using only the
KnolCase organizes topics and facts around case files.
A case file groups topics about a subject into a single document.
Case files are stored locally on your own computer in the browser's local
NB: It's important to note that if you use KnolCase in
, your case file will
be deleted by the browser when you close the window.
Therefore, it's not recommended to use incognito mode for cases you wish to retain.
Additionally, exercise caution when clearing cookies and browsing data.
Avoid deleting the local site data (for ringgaard.com) since doing so will erase
all your case files, and there are no backup copies stored on ringgaard.com.
It's also advisable to create regular backups of your case data.
Each case file is assigned a unique case number by a central case numbering
To view or edit a case, go to the URL for the case, e.g.
for case #1234.
Only the owner of the case can modify it, and the case can only be viewed by
others if it has been shared.
By default, a case is private and cannot be viewed by anyone else.
A case file contains topics grouped into folders.
A topic may appear in more than one folder.
The first topic in the Main folder is the case topic, which is the topic for the
It contains information about the case file like name, description, author, and
It cannot be deleted, but additional information can be added to the main topic,
such as a with a reference
to the central entity of the case.
To open a new case, click on the add button.
Type the name of the case you want to research and an optional description.
Then click "Create".
Type in the name of the case you want to research along with an optional
description, and then click "Create".
This opens the new case and you can begin adding topics to it.
To add new topics to the case, type the topic name into the search bar.
If the topic is already present in the knowledge base, you can select it from the
This creates a topic that is an extension of an existing topic and you can view
the existing information by clicking on the expand_more button.
If the topic doesn't exist in the knowledge base, pressing Enter will create a
After you have made changes to the case, you can save it by
clicking save or by pressing Ctrl+S, and
the case file will be stored in your browser's local database.
On the KnolCase home screen (https://ringgaard.com/c/),
you will see a list of all your case files on the computer.
These case files are specific to the computer and user, so you will only be able
to see the ones you have created on this particular computer and user account.
The case list shows the case number, status, name, description, creation date,
and last modification date, with the most recently modified cases appearing at
Clicking on a case from the list will open it.
You can delete a case by clicking the delete button.
Only the local link will be deleted for linked cases and collaborations.
The status icons show the status of each case:
case that you have shared so anyone with the case number can view it
case that you have shared secretly so it can only be viewed by other users with the secret key;
only an encrypted copy of the case will be stored on the server
link to case that someone else has shared
link with secret key to encrypted case that someone else has shared with you
case that you have published making all topics in the case available in KnolBase
link to collaboration case which can be viewed and edited by all participants in the collaboration
case has been modified since it was last shared
private case that is only stored locally and not shared with anyone
A topic in KnolCase is similar to a ,
but is it local to the case file.
Topics are used to represent various elements of human knowledge, such as
concepts, objects, subjects, and entities.
When a topic represents a concept or an abstract object, it typically has a
On the other hand, if the topic represents a concrete object, such as a person,
it usually has an property
that describes its type.
Many common topics will already be in KnolBase and Wikidata, so topics in
case files will often be new entities like persons, organization, locations,
and documents, but you are free to create topics for any entities or concepts
you're interested in.
Each topic is assigned a unique topic id, comprising the case number and a
serial number within that particular case.
For example, if the topic number is 10 and the case number is #1234, its topic
id will be t/1234/10.
Topic ids are never reused, even if you delete the topic.
A topic typically has a name and a description.
Topic names do not have to be unique.
The desciption can be utilized to differentiate between topics that share the
Additionally, you can include one or more aliases for a topic.
These aliases can be alternative names by which the subject is known, as well as
spelling variations for these names.
A topic is comprised of one or more statements, where each statement consists
of a property and a value.
You can use all the properties defined by Wikidata,
but you can also just use plain text for properties.
The datatype for the property value is determined by the property, but in most
cases you can override the predefined datatype.
For instance, it's possible to specify a text value for a reference property.
KnolCase supports the following datatypes:
Text: A simple string value. Text values can be localized by adding @ll to the string,
where "ll" is the two letter abbreviation for the language.
Number: Numeric values can either be integers or decimal numbers.
Date: Dates are specified with a precision. A normal date has year, month, and day of month,
but you can also specify dates where the precision is month, year, decade, century or millennium.
Reference: Link to another topic.
Quantity: A quantity is a number with a unit of measurement.
Geopoint: Geographical reference with lattitude and longitude.
You can qualify
a statement with other statement to expand on, annotate, or
contextualize beyond what can be expressed in just a simple property-value pair.
Qualifiers are used in order to further describe or refine the value of a
property given in a statement.
A statement should still provide useful data even without a qualifier;
the qualifier is just there to provide additional information.
Qualifier can modify what a topic means, indicate how the value of
a property was determined, constrain the validity of the value, or offer further
details that cannot otherwise be expressed using simple property-value pairs.
Qualifiers are also used for temporal information like
an event, or and
to specify the period where the statement applies.
You can make a topic an extension of another topic by adding an "is:"
statement to the topic.
When a topic is published, it will be combined with the topic it's extending,
allowing you to incorporate additional information into an existing topic.
This functionality can be utilized to add more facts to an already existing
If multiple "is:" statements are added to a topic, it will be merged with all
the extended topics during the reconciliation process.
To modify a topic, you can click the edit button in the
topic toolbar or press Enter when the topic is selected.
The topic editor works much like a normal text editor where you can use the
cursor and editing keys to move around and edit the topic facts.
Each line is a statement that consists of a property and a value separated by
You add new statements by begin typing the property name on a blank line.
You can add blank lines by pressing Enter.
A search box with the matching properties is shown below the statement line.
The search list is updated as you type, but you can also open and close the
search list by using Shift+Space.
Properties are ranked based on how common they are for the topic type
You can select a property from the search list by using the up and down arrow
keys or clicking on the desired property in the list.
Pressing Tab will choose the first property in the list.
This adds the property to the statement and moves the cursor to the statement
value after the colon.
You can repeat the previous property by pressing Tab on a blank line.
There are approximately 5000 properties in Wikidata plus more than
5000 cross reference properties. In addition to this, you can define custom
properties, or just use a text string as the property name. However, some
properties are more common than others, so you can select these with one-letter
name (shortcut n): name of the topic
alias (shortcut a): other names for the topic
description (shortcut d): topic description for disambiguation
instance of (shortcut t): topic type
comment (shortcut *): unstructured note
Many topics are persons (aka
in Wikidata lingo). Some common properties for persons are:
You can use Ctrl+M (male) and Ctrl+F (female) as shortcuts to add
or to the topic.
In the topic editor, pressing the Space key at the beginning of a statement
line will make it a qualifier of the previous statement.
This means that the statement is providing additional information or context to
the previous statement, rather than being a standalone statement.
A qualified statement can be unqualified by pressing Backspace at the beginning
of the line.
Statement values are entered much in the same way as properties, but it
searches for matching values in more places:
quantities with units and conversion from imperial units (feet, inches, pounds)
geopoints with lattitude and longitude
localized names with language code
plug-in pattern matches
new topic with name
The order of search results is determined by both the popularity of the item
and how frequently it is used for the property.
If you you do no select a value from the search list, the statement value will
just be plain text.
You can add unstructured notes to the topic by adding comments.
Comments are displayed with a bullet (⚫︎) in front, and they are not published
in the knowledge base.
You can select one or more statements, by selecting them with the mouse, or
by holding down Shift when moving around with the arrow keys, just like you
would do in any other text editor.
To copy a statement (property with a value), you can use the keyboard shortcut
Ctrl+C, and to cut it, you can use Ctrl+X.
When a statement is copied, the resolved property and topic ids are preserved,
so that when you paste them into the same or a different topic, they will refer
to the same property and topic ids as the place you copied them from.
Once you have finished editing the topic, you can save the changes by
clicking on the save_alt button or by using the keyboard
In case you decide to discard the changes made to the topic, you can do so by
clicking on the cancel button or by using the Esc key.
To copy or cut a topic, first select it by clicking on the background of the
topic card. Once selected, the topic will have a blue border.
To copy, use the shortcut Ctrl+C, and to cut use Ctrl+X.
The selected topic(s) will then be copied or cut to the clipboard.
To select multiple topics, you can click on the first one and then hold down
the Shift key while selecting the last topic.
Alternatively, you can use the up and down keys to extend or shrink the
If you want to select all topics in the current folder, you can use the
Once you have selected the topic(s), you can copy them to the clipboard by
The topic(s) will be stored in SLING text format in the clipboard.
To insert topics stored in the clipboard, you can use the Ctrl+V shortcut.
This inserts the topic(s) right after the (first) selected topic
or at the end if no topics are selected.
A topic can be in multiple folders at the same time.
If you copy and paste topics within the same case file, it simply creates
additional references to the same underlying topics in the case.
If you edit a topic in one folder, the changes will be reflected in the other
folders with a reference to the topic.
Topics can also be copied between cases using the clipboard.
This will assign new topic ids to the pasted topics but it preserves the
internal links between the pasted topics.
You can move topics by first cutting them to the clipboard with Ctrl+X.
This moves the topics from the current folder to the scraps folder.
Then, you can navigate to another folder and paste the topics into it,
moving them from the scraps folder to the new folder.
The scrap folder is emptied when you save the case (Ctrl+S) or select "Clear"
from the scraps folder context menu.
You can use Ctrl+D to copy the topic id of the selected topic to the
clipboard, while Ctrl+E copies its name.
You can copy all topics in the case file to the clipboard by
selecting "Copy all" from the KnolCase menu located in the top right-hand corner.
Topics are organized into folders. The folder list is to the left of the
topic panel and you can open and close it by clicking the menu
icon in the upper-left corner. The current folder is shown in bold and you can
switch to another folder by clicking it in the folder list.
You can add new folders by clicking create_new_folder above
the folder list. Each folder has a context menu (more_vert) with
functions for renaming the folder, moving the folder up and down in the list,
and for deleting the folder. A folder can only be deleted if it is empty.
Your case files are stored locally on your computer,
ensuring that no one else can access them.
However, if you want to share your case file with others, you can click on the
share button located in the toolbar.
This will allow you to select from the following sharing options:
By default your case file is private and no one else can view it.
If you have previously shared or published your case file, you can always make
it private again by selecting 'Private'.
This will remove the case file from the case server, ensuring that no one else
can access it.
If you select 'Share', your case file will be saved on the central case server,
and you can click on the content_copy to copy the sharing URL
to the clipboard.
Others can then view the case file by opening the case URL
(e.g. https://ringgaard.com/c/1234), but they cannot modify it.
The master copy of the case file will still be on your own computer.
If you modify the case after it has been shared (shown in the case list
with a * in the status column), the changes will not be visible to others until
you share the case again.
Case sharing URLs are easy to guess because case ids are small consecutive
numbers and the case files are store unencrypted on the server, so it doesn't
provide any real privacy.
If you want to share your case file with a closed audience, you can use restricted
This will only store an encrypted copy of the case file on the case server.
A secret 128-bit key is generated locally on your computer and the case data is
encrypted using AES-CBC encryption by your browser.
This makes it practically impossible to access your case file without knowledge
of the secret key.
Clicking content_copy will copy the secret URL to the clipboard,
and you can then use any secure form of communication to send this URL to those
you want to give access to the case.
Others can reshare the URL, but you can refresh the secret key by first making
it private and then restricted again.
Your master copy of the (unencrypted) case file will still be stored on your
local computer together with the secret key.
Publish: You can publish all the topics in your case in
This will make the topics in the case visible to all users.
KnolBase is rebuilt every night, so it can take up to 24 hours for your changes
to become available.
You can retract your changes by switching the case back to 'private'.
If you have extended existing topics, these will be merged during reconciliation.
Published topics will be available for searching in other cases without
requiring case linking.
You can use case sharing to let other users view your cases, but they cannot
make changes to them.
If you want to work together with other users on a case, you can turn your case
file into a collaboration.
This will move the case file to a collaboration server where all participants
can access and modify it at the same time.
Any changes made by a participant will be instantly propagated and made visible
to all other connected participants (like Google Docs).
Before you can collaborate on a case, you need to set yourself as the
author of the case by adding an
statement to the main case topic.
You can use your id from KnolCase or Wikidata, but if you are not in the
knowledge base, you can add a topic to the case for yourself.
Alternatively, you can make a biography case for yourself with your CV and
publish this case. You can then set your topic id (Ctrl+D) from this case as the
default author for new cases in the general settings (settings).
To transform a local case into a collaboration, simply choose the
'Collaborate' option from the case toolbar menu.
From there, you can either provide the URL for your own collaboration server or
use the default one (wss://ringgaard.com/collab/), and then select "Collaborate".
This moves the case from your own computer to the collaboration server and
creates your credentials for accessing the collaboration.
Once you have created the collaboration, you can begin inviting other
individuals to participate by clicking the people button
located in the case toolbar.
You can either search for participants or add a new participant to the
collaboration case itself.
Upon adding a new participant, they will be included in the case and the invite
URL will be copied to the clipboard.
You can then use any (secure) communication method to send the invite URL to
Once the new participant clicks on the invite URL, the collaboration server
will verify the validity of the invitation.
It's important to note that invite URLs expire after each restart of the
collaboration server, which means that invites to the default server must be
activated before the following day.
If the invite is deemed valid, the participant's credentials will be generated
and saved on their local computer.
The next time they wish to access the collaboration, they can simply click on
the collaboration case in the case list, and the stored credentials will be
used to establish a connection to the collaboration server.
You can import data from local files on your computer into a case by
selecting "Import from file" in the KnolCase menu (more_vert).
Choose the file format in the file dialog and then select the file to import.
The following file format are supported:
SLING frames (.sling):
The case data as well as the knowledge base is stored internally in
You can import data in either SLING text or binary format.
The input file should consist of a sequence of SLING frames, with each frame
imported as a new topic and each frame slot imported as a statement with a
property and value.
Using SLING as the input format ensures the most precise import in terms of
data types and structure, given that it's the native format.
JSON objects (.json):
JSON files can be imported in two ways: as a stream of objects (one JSON object
per line), or as a single array of JSON objects.
Each object in the JSON file is imported as a new topic, and each key-value pair
is imported as one statement.
The keys can be either property ids, such as "P569", or property names or
aliases, such as "birthdate".
If the key ends with "#" symbol, the value is treated as an item id instead of
Tab-separated values (.tsv):
TSV files, also known as tab-separated value files, are plain text files in
which lines are separated by newlines, and each line consists of fields
separated by a tab character.
The first line in the file should contain the field names, and the following
lines are imported as new topics.
The field names can be property ids, names, or aliases, and if a field name
ends with #, the corresponding value is interpreted as an item id instead of a
Comma-separated values (.csv):
-compliant CSV files can
be imported in the same way as tab-separated files.
is a popular
data format for importing data into
, but you can also use it to
import data into case files.
It is a simple text format which makes it easy to generate data in Wikidata format.
You can also use , a data
cleaning and transformation tool, to prepare your data and export it in
KnolBase provides a W3C Reconciliation Service API, which you can use in
OpenRefine to reconcile your data.
You can export case topics to Wikidata by selecting the topic(s) and clicking
the Wikidata button in the KnolCase toolbar.
The first time you do this, you are asked to authorize SLING to make changes to
Wikidata on your behalf.
For existing topics, which already have a Wikidata QID, the item will be updated
with new facts from the topic.
Otherwise, new Wikidata items will be created, and the new QID will be added to
Exporting to Wikidata will never overwrite or delete any existing information
Not all facts from topics can be exported to Wikidata. Statements which use
non-Wikidata properties or values will be skipped. Wikidata is also more strict
in terms of data types for properties, so statements where the data value type
does not match the property type will also be skipped.
You can upload files from you computer to a case using the "Upload files"
command in the KnolCase menu (more_vert). This uploads the
selected files to the SLING drive server (drive.ringgaard.com), and adds a
document topic to the case for each uploaded file with information about the
filename, date, size, URL, and file type.
The uploaded files can be accessed by anyone with the URL, but the URLs contain
a 64-bit crypto random key that makes it virtually impossible to guess the URL,
so in reality you need access to the case in order to view the uploaded files.
This should be good enough in most cases, but you should not use it to store
Your case files are stored in the browser's local database.
You can make a backup of all these by selecting "Backup" in the case manager
This saves all the cases to a file that you can store in a safe place for
You can also use this to move your case files to another computer.
The backup can be restored by clicking "Restore" in the case manager
menu (more_vert) and selecting the backup file.
This reads the backed up cases into your browser's local database.
This can be used to restore your case files if you have accidentally deleted them,
e.g. by clearing your cookies and local data.
You should be careful with having the same case files on multiple computers at the
same time as this can lead to conflicting updates. For cases that require access
from multiple devices, collaborations can be used.
KnolCase has a number of
that can be activated by pasting URLs into the search box or a topic,
letting you import information from other sites or applications in a quick and
Plug-ins are loaded on-the-fly when you paste a URL that matches the plug-in URL
pattern into the search box or a topic.
If you paste a URL into the search box, you can select the plug-in in the search results.
This will add a new topic produced by the plug-on to the current folder.
Pasting a URL matching a plug-in into a topic will add the retrieved information
from the plug-in to the selected topic.
External references are checked against the cross-reference register in KnolBase
and the topic is extended with any matches found.
"" it is said.
You can add pictures to a topic by selecting it and pasting an image URL.
The URL should end with one of the following extensions: .jpg, .jpeg, .gif, .png, .mp4, .webm, .webp, or .avif.
Once added, the picture will appear in the topic's photo gallery.
You can view the photo gallery by clicking on the image to the right in the topic card.
To obtain the URL of an image on a webpage, simply right-click on the image and
select "Copy image address" from the context menu in Chrome.
Pictures on the internet often disappear after a short time. To prevent the
pictures in your case topics from disappearing, you can cache the images on the
SLING media cache service by selecting "Cache images" in the KnolCase menu
(more_vert) in the top right-hand corner.
Then all the images in the case file will be cached in the background and you
will still be able to view them after they have disappeared from their original
Some sites do not allow
which prevents images from these sites from being displayed properly in KnolCase.
In this case, you can paste the image into the topic instead of just the image URL.
You can copy an image by right-clicking on an image on a webpage and selecting
"Copy image" in the context menu (Chrome).
When you paste an image into a topic, it will first be stored on
drive.ringgaard.com using a randomized URL, and then this image is added to the
You can also paste gallery URLs into a topic. A gallery URL starts with
"gallery:" followed by a list of image URLs separated by space. This format is
supported by the
Reddit photo search tool.
Albums from Reddit and Imgur are also supported.
You can search for images for a topic by clicking the
image_search button on the topic toolbar.
Pasting a URL from an article or webpage into the search box will create a
new topic for this page. You can also select a topic and paste the URL to add
information to an existing topic.
This is useful for keeping references to webpages and articles where you have
found information about a topic.
KnolCase uses the meta tags from the webpage to create a topic with
information about the page.
It supports Facebook OpenGraph, Twitter Cards, JSON-LD, Dublin Core, Sailthru,
as well as a number of generic meta tags:
KnolCase has a database of more than 3000 news sites with their Wikidata QIDs
to identify the publisher of a webpage.
For example, if you want to document the source for some fact in a topic, you
can add a
qualifier with the source:
Press Enter to make room for a new statement
Press Space on the new line to start a qualifier
Type 'source' and then Tab to add a property
Paste the URL for the source and press Tab.
This will create a new topic for the web article with meta data and add this as the source.
You can import tables from spreadsheets by copying some rows and columns
into the clipboard and pasting these into a folder in KnolCase.
You can copy data from any source that supports comma-separated or tab-separated
values (CVS/TSV format).
The first row should contain the property/column names. These can be property
ids (PIDs) or property names.
Each of the remaining rows are imported as a new topic.
If a column name ends with #, e.g. ID#, it is expected to contain item or topic
Otherwise, the value is parsed according to the data type of the property, e.g.
dates, number, URLs, quantities, etc.
KnolCase also has more specialized plug-ins that can import data from
The twitter plug-in retrieves information about
If you paste a user profile URL from twitter.com, the
following information is retrieved from the Twitter API:
The plug-in also tries to convert URLs in the description to external references, e.g. Facebook or Instagram.
(disabled due to Twitter API restrictions)
VIAF (Virtual International Authority File)
is an international authority file with information about authors and publishers.
It is a joint project of several national libraries and operated by
The VIAF plug-in can retrieve the following information from
Authority File references from more than 50 national libraries and other
institutions, e.g. Library of Congress, ISNI and German National Library, are
also retrieved and mapped to Wikidata references.
CVR is the Danish Central Business
Register with information about all Danish companies, organizations and their branches.
KnolBase contains all of the CVR register and is updated daily.
The CVR plug-in can take URLs from virk.dk and
create or extend topics with references to the CVR entity in KnolBase.
OpenCorporates is the largest open
database of companies in the world with information about more than 200 million
companies from more than
OpenCorporates has kindly provided a free license to Ringgaard Research for
retrieving company information from
If you paste an into a
topic, the email plug-in will add it to the selected topic.
If you paste a with an
international dialing prefix (i.e. +45) into a topic, the phone plug-in will add
the telephone number to the selected topic.
Linktree is a social media
reference landing page site that is often used on sites like Instagram and
Twitter which do not allow linking to multiple sites. If you paste a
linktr.ee URL, all the links for the user will
be added to the topic.
This is often a quick and easy way to add all the social links for a person to a topic.
You can paste a URL from
to add a to a
IMDB is is an
online database of information related to films and television. It has
biographies of many actors and other film people.
The imdb plug-in can retrieve the following information:
place of birth
place of death
cause of death
country of origin
social media accounts
Listal is a social networking
website that is based around the entertainment industry. It has profiles and
pictures of many celebrities like actors, models, social media stars etc.
The listal plug-in can retrieve the following information:
country of origin
country of residence
spouse or partner
hair and eye color
Famous Birthdays is a website
dedicated to cataloging the birthdays of famous people and compiling other
facts about them. The plug-in retrieves name, description, birth date and birth
If you paste a URL from wikidata.org, it will be imported as a new topic with
all the properties from the Wikidata item.
KnolBase already contains all items from Wikidata, so
this is mostly useful for new items that are not yet in Knolbase.
If you paste an article URL from Wikipedia, a new extension topic for the
Wikidata item corresponding to the Wikipedia article is added to the current
These plug-ins let you add a lot of information to topics by just copy and
For example, you can make a web search for a topic by clicking the
search button in the topic toolbar to find the sites with
information about the topic. You can copy the URL for the webpage using Ctrl+L Ctrl+C.
Sometimes you might not even need to visit the webpage.
You can copy the result URL by left-clicking on the blue link and selecting
"Copy link address".