add parenting guide

This commit is contained in:
constantinos 2023-08-15 15:42:46 +03:00
parent e8e60d6e78
commit fedacddcb5

View file

@ -0,0 +1,87 @@
---
title: "Parenting & Associating entries"
date: "2023-08-15T13:52:05+03:00"
author: "anybody"
contributors: ["constantinos-miltiadis.md"]
draft: true
keywords:
- guide
- internal
abstract: |
(Internal) Guide for parenting and associating entries.
---
# Introduction
Sandpoints allows parenting and associating different content types. This is done in the YAML header of a Markdown entry. Parenting content is done by providing a list of filenames of the children of a given entry. Associating content is done by providing a list of filenames of the associated entries (for an issue or article).
As in the examples below, for either case:
- provide filenames including extensions within quotations,
- separate entries with commas, as in the examples below, and
- make sure to leave a whitespace character been the colon and the square brackets.
- Example `flag: ["something.md", "something-else.md"]`
# Parenting content
*Sandpoints* follows a triadic hierarchy, which, here is *Journal>Issue>Article*, or:
```
Journal
└── Issue
└── Article
```
Thus, a journal has issues, and issues have articles. Following this convention, the YAML header section for each item that has children features the flag:
```
has_<child-content-type-in-plural>: ["child-1.md", "child-2.md"]
```
The YAML section for a **journal** instance has the field:
```
has_issues: []
```
And the YAML section of an **issue** instance has the field:
```
has_articles: []
```
## Parenting issues to the journal
```
---
title: "Game Design Knowledge & Practice Journal"
has_issues: ["issue-1.md", "issue-2.md"]
---
```
## Parenting articles to issues
```
---
title: "Some issue"
has_articles: ["article-1.md", "article-2.md"]
---
```
# Associating content
Sandpoints allows associations between:
- issues and editors, and
- articles and contributors.
This is done by providing a list of editors in the YAML section of an issue, or a list of contributors in the YAML section of an article, respectively.
## Associating editors to issue
```
---
title: "Some Issue"
editors: ["jane-editor.md", "joe-editor.md"]
---
```
## Associating contributors to article
```
---
title: "Some Article"
contributors: ["jane-contributor.md", "joe-contributor.md"]
---
```