#Loqi[Tantek Çelik] Introducing #metaformats (https://microformats.org/wiki/metaformats), an extension to #microformats2 for parsing invisible data published in HTML meta tags, for backward compatibility with existing vocabularies consumed by multiple testable interoper...
#[tantek]KevinMarks same as if you had multiple elements with the same property
#[tantek]See also backcompat details in mf2 parsing
barpthewire joined the channel
#[KevinMarks]Maybe add a property to show that it was derived from meta elements, as its going to show up before the body items in the list, so the tools that pick the first item to show will favour the metaformats over the microformats
#aaronpki guess the question is what do you expect to read this markup? if you don't have an expected consuming use case then there isn't much point in marking it up
#[tantek]capjamesg[d], not meta name/property no. meta http-equiv yes, but that's because it's purely a machine directive and not user content in any way
#[tantek]aaronpk, specifically the recommendation is to NOT bother with publishing this info, this is a consuming code use-case only
#[tantek]KevinMarks, I considered the head vs body thing, and was thinking about special casing head to put any microformats found on or inside it to be placed after any other items found, but was curious to hear from folks
#aaronpkI was talking about the "identity key" question
#[KevinMarks]Putting them after may make sense, but there is still potentially a DRY problem. The extreme separation would be to put them in a head-items key. I was thinking of something more like the id handling, where we add an origin reference.
#[KevinMarks]If we did that more broadly, it could help with the use case discussed recently for knowing which element the item came from
gRegor joined the channel
#[tantek]ah you're talking about it exposing DRY violations in the page
#[KevinMarks]Yes, think about my metadata teasing page as an extreme example, but if you look at a standard known or mastodon page, they repeat some info in the silo markup
#aaronpkIf I ever get a second cat, I will definitely name it Identikitty
#sknebelor twin cats authentikitty and authorikitty ;)
#[tantek][KevinMarks] indeed, perhaps head should be sequestered to its own top level key, like items and rels
#[tantek]because invisible metadata is such a different beast
#[tantek]I mean heck maybe even just name it 'meta', that is that array (or key? is there any scenario where we can parse more than one item from the head?)
#[tantek]part of the goal here was to not require every consuming application (e.g. something looking for info for a reply-context) to have to special check another key or do any extra work
#[tantek]putting the head/meta item last in the top level array of items makes the most sense to me for that
#Loqisknebel has 4 karma in this channel over the last year (36 in all channels)
#[tantek]that way, only if there are no other top level items (or any in body that is?) would a "typical" mf2 parser client actually "see" the backcompat h-entry / properties from head/meta, and it would "just work" without them having to do anything "special"
#tantekedited /metaformats (+311) "/* parse an element for class microformats */ link h-*, set aside parsed head item and append it to end of items array after finishing parsing (prioritize visible data in body)" (view diff)
#[tantek]^ [KevinMarks] going to go with that for now, presuming that's the primary use-case that consuming code wants, to use OGP/TwCrd as fallback in the absence of other microformats
#[tantek]in addition to the implied h-entry, h-card, etc.
#[tantek]I'm curious if it matters in practice though. E.g. does jamietanna or GWG's code do anything special with data from OGP/TC as compared to an h-entry, e.g. for displaying a reply-context
#[tantek]I'd rather not add it unless there's a specific use-case for "what would you do with the information"
#[KevinMarks]The use case is if you have multiple variations on h-entry with the same url, you feed to decide whixh one to trust more
ur5us joined the channel
#GWGMy code parses microformats and if there is not a minimum level of data, tries the WordPress rest api, json-ld, and meta tags in that order
#GWGBut philosophically I am promoting microformats as I convert everything else into it
#GWGAlso rest API polling requires a minimum of 3 fetches, more if categories or tags
#GWG1. Fetch base endpoint for timezone and site info, 2. fetch post, 3. Fetch author
[jgmac1106]1 and Murray[d] joined the channel
#[tantek]exactly, metaformats is based on that methodology of "philosophically I am promoting microformats as I convert everything else into it"
#GWGAlso there are some sites that, because they are old wordpress sites with no attention to their classic microformats, have little to no useful info in there, so I figured a summary property for h-entry, or a name property for h-card was minimum viable