[SPEC] Backwards-compatible metadata in Gemini
baschdel at disroot.org
Tue Feb 23 17:37:19 GMT 2021
I put some example metadata below my last E-Mail but after catching up
with the rest of the discussion since writing it, and thinking a bit
about it, I've come to the conclusion that I should add a littlebit of
First and foremost: I consider this st its current stage a (thought)
experiment and MAYBE a future convention for gemtext.
Something I really shouldn't have to write, but to clarify:
With great power comes great responsibility!
Adding metadata adds great power and whoever is implementing a metadata
based feature should ask themselves if what they are doing is the right
thing to encourage (this applies to all things you are implementing).
> version: 1 > date-written: 21-02-23 11:09 +0100
I added that one first and of course I messed it up.
It should be:
date written: 2021-02-23 11:09 +0100
I choose this format because it's easy to parse for humans and computer
alike for dates. The key consists of two keywords: date and written a
client that cares about metadata but wants to keep it simple can simply
search for the first thing starting with date. (Maybe just having date
> author: Baschdel
> => mailto:baschdel at disroot.org author contact E-Mail
I'm using link lines for uris here because then they will still work if
the client ignores the metadata, the contact keyword tells the client
that this link is contact information.
the E-Mail is just a label for humans (I don't know if adding the label
without any special delimiter is a good thing or not, it will definitely
make it less easy to extend this)
> => mailto:gemini at lists.orbitalfox.eu?subject=… reply contact
Same as above without a label for humans, a client could show a reply
button at the bottom of the page
> style: E-Mail message
Can of Worms! nasty ones!
Thinking about it, it would be a good thing to add styling hints (for
example that this is a fee page or search results page) but this would
encourage writing gemtext, that is overloading linetypes left and right
because some people don't realize, that styling and meaning are two
> => https://lists.orbitalfox.eu/archives/gemini/2021/005420.html answerto > => https://lists.orbitalfox.eu/archives/gemini/2021/005522.html mirror
Two tagged links, one linking to the message this one is an answer to
another one linking to a mirror of this page (following this system an
alternative link to an answer would be tagged with "answerto mirror")
To prevent content authors and/or server from going wild I'd suggest,
that clients always show the metadata section like it would render the
One thing I don't really like with this one is, that we use English
keywords here and that for human readable text that is intended to be
attached to a file, that could be in any language and is not very
accessible to non-English speakers.
A possible solution to that could be in unicode and (you guessed it,
didn't you?) emoji (yay!), at least those little pictures are
standardized and independent of the language(s) you speak. (Just make
sure the emoji makes sense for what it is used)
- Baschdel (I should really spin up my own gemlog)
More information about the Gemini