Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A4 Citations and references to internal and external sources #1708

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
116 changes: 116 additions & 0 deletions A4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
NIP-A4
======

Citations
-------------------------------

`draft` `mandatory`
SilberWitch marked this conversation as resolved.
Show resolved Hide resolved

This NIP defines the basic structure of citations required for quotes, footnotes, endnotes, in-line references, appendices, and prompt records.

It covers internal (to Nostr addresses) and external (to the wider web or printed material) citations.

## Documenting

### Citation Location

#### In-Event References

The fixed citations MAY be documented in-event, in whichever format the event normally handles, such as plain-text, Markdown, or Asciidoc. In-event references to nostr addresses MUST be formulated with the same information as `kind:30`, according to the following format:
SilberWitch marked this conversation as resolved.
Show resolved Hide resolved

```
User name [c:pubkey]. Kind [c:kind]. Nostr discussion on [title]. Available from: [c:relay hint] with id [c:id]. Accessed [accessed_on].
SilberWitch marked this conversation as resolved.
Show resolved Hide resolved
SilberWitch marked this conversation as resolved.
Show resolved Hide resolved
```

#### Ex-Event References

Ideally, citations SHOULD be document ex-event, within the following structure, to ensure completeness, reusability, discoverability, and applicability of the citation.

* `kind:30` internal reference,
* `kind:31` external web reference,
* `kind:32` hardcopy reference,
* `kind:33` prompt reference

*Internal Nostr reference*

```jsonc
{
"kind": 30,
"pubkey": "<citation-writer-pubkey>",
"tags": [
["c", "<kind>:<pubkey>:<hex event id>", "<relay hint>"]
["accessed_on", "<date-time in ISO 8601 format>"],
["title", "<title to display for citation>"],
// additional, optional tags
["author", "<author to display for citation, such as a handle name or proper name of the npub>"]
["location", "<where was it written or published>"],
["g", "<geohash of the precise location>"],
["summary", "<short explanation of which topics the citation covers>"]
],
SilberWitch marked this conversation as resolved.
Show resolved Hide resolved
"content": "<text cited>"
}
```

*External Web Reference*

```jsonc
{
"kind": 31,
"pubkey": "<citation-writer-pubkey>",
"tags": [
// mandatory tags
["u", "<URL where citation was accessed>"]
["accessed_on", "<date-time in ISO 8601 format>"],
["title", "<title to display for citation>"],
["author", "<author to display for citation>"],
// additional, optional tags
["published_on", "<date-time in ISO 8601 format>"],
["published_by", "<who published the citation>"],
["version", "<version or edition of the publication>"],
["location", "<where was it written or published>"],
["g", "<geohash of the precise location>"],
SilberWitch marked this conversation as resolved.
Show resolved Hide resolved
["summary", "<short explanation of which topics the citation covers>"]
],
"content": "<text cited>"
}
```

*Hardcopy Reference*

```jsonc
{
"kind": 32,
"pubkey": "<citation-writer-pubkey>",
"tags": [
["accessed_on", "<date-time in ISO 8601 format>"],
["title", "<title to display for citation>"],
["author", "<author to display for citation>"],
// additional, optional tags
["published_on", "<date-time in ISO 8601 format>"],
["published_by", "<who published the citation>"],
["version", "<version or edition of the publication>"],
["location", "<where was it written or published>"],
["g", "<geohash of the precise location>"],
["summary", "<short explanation of which topics the citation covers>"]
],
SilberWitch marked this conversation as resolved.
Show resolved Hide resolved
"content": "<text cited>"
}
```

*Prompt Reference*

```jsonc
{
"kind": 33,
"pubkey": "<citation-writer-pubkey>",
"tags": [
["llm", "<language model used for the prompt, like ChatGPT>"]
["accessed_on", "<date-time in ISO 8601 format"],
["version", "<version or edition of the model>"],
["summary", "<prompt conversation script>"],
// additional, optional tags
["u", "<website llm was accessed from>"]
],
"content": "<text cited>"
}
```