Have you seen how you can paste a URL into Facebook, Twitter or iMessage, and it will automatically find the page name, author, and photo? They do this by reading the Open Graph Protocol tags. Most websites today are already following this protocol and embedding information, all we need is to read it.
- Rich Link Preview using the Open Graph Protocol - Slightly nerd
- The Open Graph protocol - Official site
And Obsidian just added support for metadata using YAML. Obsidian can store aliases and tags in YAML metadata but there is potential for so much more. Here are some great discussions of YAML on Obsidian:
- YAML Fields for Link Attributes
- Allow links in YAML front matter; Notion-like databases from metadata; links as first-class citizens
- Customize Graph node appearance via YAML frontmatter
Allow Obsidian to support the YAML field
url:. When a user pastes a url into the
url: YAML field, Obsidian fetches the open graph metadata from the url and shows the user any metadata it found.
If an Open Graph field already matches a YAML field that Obsidian or an Obsidian plug-in already understands, then Obsidian just automatically pastes that data into the YAML field.
If Obsidian finds fields that it does not yet recognize or support, then it will show a dialog box with all the extra metadata it found. The user can click any of these open graph tags, type in the name of a YAML field and Obsidian will add it to the field.
I’m creating an atomic Literature note for a blog post that I read. I create a new note and add my YAML header. I add the YAML field
url: and paste in
www.someBlog.com/someArticle. Behind the scenes, Obsidian fetches the Open Graph metadata from
www.someBlog.com/someArticle. The metadata may look something like this:
article:published_time - datetime
Let’s say in the future, Obsidian already has support for more YAML fields. In this scenario, Obsidian reads that Open Graph metadata and auto adds the following YAML metadata:
--- url: www.someBlog.com/someArticle type: article author: some author date: published_time - datetime aliases: Article Title tags: [articleTag1, articleTag2] ---
Imagine how much faster and more powerful Obsidian could be if we just took advantage of the metadata that is already given to us.
This could greatly reduce “managerial work” particularly for people who take Atomic notes, and Literature notes.