Skip to content

Commit

Permalink
Merge y and z tags
Browse files Browse the repository at this point in the history
  • Loading branch information
arthurfranca committed May 7, 2024
1 parent 472ddc2 commit 3bcd3b8
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 19 deletions.
37 changes: 19 additions & 18 deletions 54.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,16 +31,17 @@ The content should be Markdown, following the same rules as of [NIP-23](23.md),

One extra functionality is added: **wikilinks**. Unlike normal Markdown links `[]()` that link to webpages, wikilinks `[[]]` link to other articles in the wiki. In this case, the wiki is the entirety of Nostr. Clicking on a wikilink should cause the client to ask relays for events with `d` tags equal to the target of that wikilink.

#### Wikilink Tags
#### Closely Related Article Tags

The one to two most prevailing wikilink `d` tag references of an article should be set to the `y` and `z` tags.
The `y` tag is set to the most prevailing one while `z` is set to the least of the two.
The most prevailing wikilink of an article should be set to `r` (related article) tags and should
be limited in number.

A prevalent wikilink is a reference that is able to categorize the article into a specifc topic. These are usually positioned
Prevalent wikilinks are references to articles on topics that have high
level of relationship with the current article. These are usually positioned
on the top of the article on an introductory paragraph.

A Nostr wiki client may try to auto assign those tags. For example, by finding the first wikilink's paragraph on the article
then considering the up to first two wikilinks on the current paragraph as the prevailing wikilinks.
then considering the up to the first two wikilinks on the current paragraph as the prevailing wikilinks.

Example:

Expand All @@ -50,8 +51,8 @@ Example:
"tags": [
[ "d", "john-doe" ],
[ "title", "John Doe" ],
[ "y", "internet-celebrity" ],
[ "z", "nostr" ],
[ "r", "internet-celebrity" ],
[ "r", "nostr" ],
],
"content": "# John Doe\n\n" +
"John Doe is an [influencer[internet-celebrity]] in the [Nostr[nostr]] scene. He is known for his [memes[meme]].\n" +
Expand All @@ -61,7 +62,7 @@ Example:
}
```

Those tags are handy when searching for topics related to an article.
Those tags are handy when searching for articles closely related to another article.
They may be used as labels to tell two articles with the same `d` tag apart.
They are also used when [ranking authors](#author-ranking).

Expand All @@ -80,21 +81,21 @@ the author may be ranked as follows:
"pubkey": "<user-pubkey>",
"tags": [
["d", "<wiki-article-author-pubkey>"],
// "x" is the marker for the main article topic (its `d` tag "john-doe")
["T", "3:wiki:john-doe", "x"],
// "d" is the marker for the main article topic (its `d` tag "john-doe")
["T", "3:wiki:john-doe", "d"],
// even though this wiki article author may not have written about "internet-celebrity" yet (or never will),
// this rank may be used to consider the relevance of a "x"-marked trust rank eventually authored
// by them (or by someone even deeper, if following another y/z rank) on the "internet-celebrity" topic
["T", "2:wiki:internet-celebrity", "y"],
["T", "1:wiki:nostr", "z"]
// this rank may be used to consider the relevance of a "d"-marked trust rank eventually assigned
// by them (or by someone even deeper, if following another "r" rank) on the "internet-celebrity" topic
["T", "2:wiki:internet-celebrity", "r"],
["T", "1:wiki:nostr", "r"]
],
// ...other fields
}
```

Note that if later the same user **dislikes** a Nostr wiki article from the same author, the corresponding `T` tag would
be updated from `["T", "2:wiki:nostr", "z"]` to `["T", "-3:wiki:nostr", "x"]`, overwritting it because
the "x" marker (meaning main topic) takes precedence over the "z" one (related topic).
be updated from `["T", "2:wiki:nostr", "r"]` to `["T", "-3:wiki:nostr", "d"]`, overwritting it because
the "d" marker (meaning main article) takes precedence over the "r" one (related article).

### Merge Requests

Expand Down Expand Up @@ -133,8 +134,8 @@ As there could be many articles for each given name, some kind of prioritization

As mentioned [above](#author-ranking), article author [NIP-64](64.md) trust ranks can be easily assigned by
clicking a thumb up/down button or when making below [deferences](#deference)).
An user's follow trust rank event can be used to rank an article version directly by using a "x" marker.
If an "y" or "z" marker was used instead,
An user follow's trust rank event can be used to rank an article version directly if it has a "d" marker.
If a "r" marker was used instead,
it may indirectly be linking to the involved author's article on a related topic or another trust rank event on that related topic that depending on the marker can be navigated further until possibly finding a ranked article version.

Forks
Expand Down
5 changes: 4 additions & 1 deletion 64.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Example:
"kind": 30382,
"tags": [
["d", "<pubkey>"],
["T", "3:wiki:role-playing-video-game", "x"], // has written a based wiki article about RPG
["T", "3:wiki:role-playing-video-game", "d"], // has written a based wiki article about RPG
["T", "2:driver"], // polite and skilled driver but doesn't turn the air conditioner on
["T", "3:buyer"], // no problems when selling to this person
["T", "-2:seller"] // had a bad experience when buying from this person or company
Expand All @@ -31,6 +31,9 @@ Example:
}
```

If a client doesn't recognize a topic name, it should leave the corresponding `T` tag untouched. For example,
a wiki client will only add/update/remove `T` tags with topic names starting with `wiki:`.

## Trust by Rank Value

|trusted a lot|somewhat trusted|a bit trusted|neutral|a bit untrusted|somewhat untrusted|untrusted a lot|
Expand Down

0 comments on commit 3bcd3b8

Please sign in to comment.