#microformats 2020-12-14

2020-12-14 UTC
[tantek] joined the channel
#
btrem
edited /menu-examples (+245) "/* T.S. McHugh's Irish Pub */ Adds details about draughts menu."
(view diff)
btrem joined the channel
#
btrem
My idea for an include-pattern:
#
Loqi
Brian Tremblay
#
btrem
I did all this work on it, and realized that, when all's said and done, the easiest thing is to just use the itemref attribute, which is already in html5. (sigh) I don't know why that didn't occur to me before I did all the work.
[prtksxna] joined the channel
#
btrem
But, in case you want some idea of how it might work, check out the link. And if you don't want to use itemref, maybe my idea could be used instead.
ethanyoo, [chrisaldrich], gRegorLove_, Loqi, sebbu, [tantek], [KevinMarks], [Ana_Rodrigues], [jgarber], [jgmac1106], KartikPrabhu, [snarfed] and btrem joined the channel; btrem left the channel
#
[tantek]
btrem, worth linking to that in a "Brainstorming" section on the current include-pattern page at least
#
btrem
Ok. I don't know what the protocol is about doing work outside the wiki. I created the pages because it seemed too large to include in their entirety there.
[chrisaldrich] joined the channel
#
btrem
I wanted to create a plausible case where an include pattern would match existing practice and would make authoring easier.
#
btrem
Similar situations exist for the proposed h-menu, where some menus -- notably beer lists -- have a price in a header that applies to all beers in that menu section.
#
btrem
I don't see a page or section for include pattern brainstorming. (My search fu is weak today.) Can someone point me in the right direction?
#
[tantek]
hmm that looks like another old page 😕
#
[tantek]
btrem, sure, I just renamed the page. note that it hasn't been edited in 12 years (before that)
ben_thatmustbeme joined the channel
#
btrem
edited /include-pattern-brainstorming (+1736) "Adds proposal for custom element with custom id"
(view diff)
#
btrem
edited /include-pattern-brainstorming (+407) "Adds proposal for itemref attribute."
(view diff)
btrem joined the channel
#
btrem
edited /menu-brainstorming (+437) "Proposes using p-nutrition for recipe items that have calories added to it, with caveat that it is not part of h-product."
(view diff)
ben_thatmustbeme, [jgmac1106], Phae, craftyphotons__, [barryf] and [tantek] joined the channel
#
[tantek]
btrem, the itemref proposal is ringing a bell from the early days of microformats2 exporations
[jeremycherfas] joined the channel
#
tantek
edited /include-pattern-brainstorming (+125) "/* Use html5 itemref attribute */ note mf2 brainstorming for use of itemref"
(view diff)
[schmarty] joined the channel
#
[schmarty]
hehehe, "[...[ if we believe the schema.org implementation announcements[...]"
btrem joined the channel
#
btrem
edited /microdata (+112) "Corrects status of microdata at W3C (editors for microdata were found, so the standard survived. Rumours of its death were greatly exagerated.)"
(view diff)
#
[tantek]
sorta, it kinda died without implementations tho, never actually made it to CR
#
[tantek]
it's not "current" by any measure
#
[tantek]
and it was dropped, the re-adopted then died again
#
aaronpk
huh the link to the "editor's version" on w3.org redirects to the whatwg html spec
#
btrem
Yes, I think the part that's relevant for us is that itemref is, I think, viable. If we decided to adopt it, that is.
#
tantek
edited /microdata (+139) "Undo revision 70305 by [[Special:Contributions/Btrem|Btrem]] ([[User talk:Btrem|talk]]), actually no, it was abandoned and dead for nearly 4 years, then briefly re-adopted in 2017 and once again abandoned subsequently in less than a year afterwards"
(view diff)
#
btrem
FWIW, I actually think there was real potential for microdata, but for something bigger than microformats. I think it should have been developed with something bigger in mind. IMHO and all that.
#
[tantek]
yeah, the WHATWG HTML inclusion of microdata is dubious because there are zero browser implementations, and the HTML spec is based on actual stuff implemented in browsers
#
[tantek]
btrem, not really. microdata was a hedge against the dogmatic evangelism of RDFa
#
[schmarty]
https://caniuse.com/mdn-html_global_attributes_itemref itemref as an attribute is supported across the board.
#
aaronpk
lol what does that even mean
#
[tantek]
note that both RDFa and microdata are effectively dead now.
#
aaronpk
does the browser do anything with itemref?
#
[tantek]
FF in particular unshipped a microdata implementation because it was completely ignored by developers
#
btrem
That's a strange assertion. What *should* a browser do with itemref?
#
[schmarty]
caniuse points to MDN docs which appear (at first glance) to be a dupe of the whatwg docs for microdata.
#
[tantek]
well that's not very useful
#
aaronpk
it seems weird for HTML to define features that a browser doesn't do anything with...
#
[tantek]
correct aaronpk!
#
btrem
The point of itemref, afaict, is for microdata parsing. Which is not really something browser do, at least not natively.
#
[tantek]
this will get resolved eventually
#
aaronpk
the vast majority of the HTML spec is instructions for browser implementers
#
[tantek]
literally the point of the HTML spec
#
aaronpk
and any tests that support the spec would be testing whether the browser does the right thing
#
aaronpk
so i don't see how microdata or microformats have any business being anywhere close to the HTML spec
#
btrem
[tantek] what did Firefox do with microdata before it "unshipped" it?
#
[schmarty]
a note above all the item* attributes in the MDN HTML global attributes list: https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes#attr-itemid
#
[schmarty]
just says "*Note:* The `item*` attributes are part of the WHATWG HTML Microdata feature."
#
KartikPrabhu
I am confused. You can literally put any attribute in your HTML like foojangle = "beepboop"
#
KartikPrabhu
so unless someone consumes it it seems useless
#
[schmarty]
so yeah i MDN just pulled that in because the whatwg spec exists
#
[tantek]
btrem, as already noted, the microdata DOM API which no one ended up using
btrem joined the channel
#
[tantek]
aaronpk, yup, which is why we kept microformats separate deliberately. also the processes for evolving them (HTML and microformats) were very different
#
[tantek]
the communities were very different too (with some noteable overlaps like myself, and adactio)
#
aaronpk
"Microdata does not generally interact with browsers, being a static document format that lacks any DOM interface." https://www.w3.org/TR/microdata/#security-considerations
#
btrem
arrgghh meta complaint: webchat.freenode.net dropped me from the channel. Again. :(
#
aaronpk
that sentence was removed from the whatwg version
#
[schmarty]
whatwg version also dropped the section on how to convert microdata to rdfa (not really relevant here but 😬 )
#
[tantek]
right, whatwg version is continuing to drop stuff that's irrelevant for any practical purposes
#
[schmarty]
this is a bit confusing but it looks like there was agreement to remove microdata from the whatwg spec in mid-2016 https://github.com/whatwg/html/issues/208
#
[schmarty]
that was blocked by web-platform-tests still having microdata tests in them, but that was merged in 2019
#
Loqi
[domenic] #208 Remove microdata API
#
Loqi
[jgraham] #3135 Remove the HTML Microdata API, since no one else ended up implementing it and now it's been removed from the spec. r=bkelly,jgraham
#
[schmarty]
oops sorry it was merged in 2016
#
aaronpk
wait if it was removed why is it still there?
#
[schmarty]
yeah i am confused by that. i think it pre-dates the move from w3c to whatwg so maybe this issue was from back when this repo was under w3c control??
#
[schmarty]
wait sorry that doesn't make sense since the move happened in 2013 according to https://www.w3.org/Bugs/Public/show_bug.cgi?id=22783
#
aaronpk
omg it's a 5mb text file
#
aaronpk
oh i see
#
[schmarty]
oops, did i link to some junk?
#
aaronpk
it's about removing the browser API not removing microdata from the text
#
aaronpk
that's the thing tantek mentioned FF had implemented but removed
btrem joined the channel
#
[schmarty]
OH okay. that makes a lot more sense.
#
btrem
I'm curious: unless there was a bug or whatever, why did FF remove the implementation? IOW, why should they care whether other browsers implemented it or not? I've never worked on a project at even a small scale, so it's hard to understand one as large as a browser.
#
btrem
Another question: what is the point of the microdata DOM api? Microdata and microformats are, to my eyes, something for communities to use. E.g., cooking sites/blogs etc. use h-recipe, and so search engines show recipes in search result rich snippets. But that's for Google or DDG to figure out, isn't it? And for microformats or schema.org to create
#
btrem
or change as needed.
#
btrem
To take another example, one of the motivations for my idea of h-menu is so that restaurants can publish menus on their web site, and any services they subscribe to -- Open Table, Grub Hub, etc. -- can read.
#
btrem
If a menu were created in microdata instead of microformats, I'd think it would be up to restaurant publishers to agree on a format, and for services to agree to read them. This is sort of why I don't quite get what browser are supposed to do with microdata.
#
[schmarty]
btrem: if i understand right, w3c and whatwg agree with your reading of it - the API specification was for browsers but folks eventually agreed that browsers were not intended to be consumers of microdata.
#
btrem
[schmarty]: but it that's the case, then what does it mean that Firefox dropped the md dom api because of lack of implementation?
#
[tantek]
btrem, re: "microdata ... it would be up to restaurant publishers to agree on a format", two big problems with that: 1. there is no microdata community to actually make that happen. and 2. restaurant publishers are not vocabulary experts, so they don't actually have the necessary infoscience skills to come up with a "format".
#
[schmarty]
the big open question in my mind is: who is taking care of this standard? who are the groups or individuals that are consuming and publishing microdata?
#
btrem
See, that why I think it's a shame that microdata died. I think of microdata as a possible way to make html extensible without the rat's nest of namespaces.
#
aaronpk
that's what microformats does
#
btrem
Ok. Also, I note that many new elements in html5 came about because of common class names.
#
btrem
What's missing is a middle step between a class name and a new element.
#
btrem
If anyone is familiar with wine classifications, there's an analogue: in Italy, for example, they had DOC and DOCG for classified wines, iow, wines deemed high quality. And "table wines" for those not deemed high quality. There was too wide a gulf between them.
#
btrem
The solution was a middle step: IGT, for wines that are not ready for DOCG, but are better than table wine.
#
aaronpk
i guess my question is more, what do you feel unable to express in microformats or HTML elements that something in between would solve?
#
[tantek]
analogies don't work well in practice for any kind of technical decisionmaking
#
[tantek]
many of the new elements in html5 from class names have been underutilized and/or misused or a source of confusion
#
[tantek]
it's clear at all that that was a good methodology for creating new elements
#
btrem
aaronpk: an obvious way for web authors to imagine how new elements are created. By sharing existing conventions. Microformats offers that, but authors have to know about them before they know about them. That is, the source code alone does not tell a novice that class=h-card means something more than class=blue or class=bottom.
#
[tantek]
btrem, it does, that's the whole purpose of the microformats2 prefixes
#
aaronpk
ah i see where you're coming from with this
#
[tantek]
and "novice" or not, the fact that anyone can make up new elements now (see Custom Elements) means you have to look things up anyway
#
aaronpk
this sounds like the discussion we had at an indiewebcamp in berlin
#
btrem
[tantek] only to those who already know that it's a mf2 prefix.
#
[tantek]
btrem, same thing is true with obscure HTML elements vs new Custom Elements
#
btrem
By contrast, an itemtype has a url, where one could (presumably) learn what the type is, and how to use it.
#
btrem
I've thought about this a lot. Sorry you don't like analogies, [tantek], but I think it is appropriate. Something like microdata, where authors could have a semi element, if you will, would be useful imho.
#
[tantek]
Adding anything element-like, whether semi or not would add a lot more confusion than not, e.g. to the DOM tree, CSS selectors etc. so that's perhaps why it doesn't make any sense to me
#
btrem
And if a microformat gains enough adoption, it could then be elevated to an actual element. Or not, maybe that step isn't even necessary. Still it'd be useful imho.
#
[tantek]
that's part of what I said was flawed see aove
#
[tantek]
that whole methodology of common class name -> element has not actually worked out well in practice
#
[tantek]
so it's not only not necessary, but not actually useful (as in used by folks that would have used the class name)
#
[tantek]
that was a common belief (class to element elevation) among lots of folks for many years and has not been borne out in practice
KartikPrabhu joined the channel
#
[tantek]
it's not clear that doing so again would result in any different outcomes
#
btrem
I guess that raises the question: is there any democratic way for new elements to be added to html?
#
btrem
Joining a w3c working group is simply beyond the reach of most web authors.
#
[tantek]
democracy is a horrible way to do any technology design
#
[tantek]
just as we don't do science by democracy
#
btrem
science <> techology Not by a long shot.
#
btrem
technology (where's spell check when I need it?) :)
#
[tantek]
good technology is developed scientifically
#
[tantek]
see also above where I pointed out that "2. restaurant publishers are not vocabulary experts"
#
btrem
I missed that. (freenode irc dumped my off. Again.)
#
[tantek]
hopefully it's in the logs!
#
Loqi
[[tantek]] btrem, re: "microdata ... it would be up to restaurant publishers to agree on a format", two big problems with that: 1. there is no microdata community to actually make that happen. and 2. restaurant publishers are not vocabulary experts, so they don...
#
[tantek]
also as of HTML5, we have Custom Elements, so anyone can independently experiment with new elements if they want
#
[tantek]
not that they'll get very far, but at least the opportunity to experiment is there
#
btrem
Well, that last comment sums up why that's not really going to work.
#
btrem
As to your remark about web publishers and restaurants, yeah, that's true, but I'm using restaurants loosely, more like, "people who publish websites for restaurants".
#
btrem
I think there are ideas worth exploring and considering from people who are not part of w3c working groups is my point.
#
aaronpk
html isn't in w3c anymore i thought
#
[tantek]
btrem, neither HTML, nor microformats are done at W3C and haven't been for a LONG time
#
[tantek]
so it's not clear what argument you're making about w3c wgs
#
[tantek]
to design good formats, you need both subject matter experts (on what the format is about), and formats experts. neither can do a good job by themselves
#
[tantek]
so "people who publish websites for restaurants" will inevitably come up with a bad or unworkable format, because they don't typically have the expertise on how to do good format design
#
btrem
I wasn't arguing that microformats are done at the w3c.
#
btrem
But I'm "people who publish websites for restaurants". So that means I shouldn't participate in h-menu.
#
btrem
I'm not an expert in vocabulary. That means people who are familiar with the needs of restaurants don't know what's needed for restaurants. This is a sort of weird anti-tautology.
#
aaronpk
that's why tantek said "you need both"
#
aaronpk
subject matter experts *and* formats experts
#
btrem
I'm not sure we actually disagree about this. :)
btrem joined the channel
#
btrem
Cool. Dumped by freenode. *Again*. /sigh
#
btrem
Meta question: any recommendations for an irc client? This web thing is not working out for me. I tried Colloquy but couldn't get it to anything.
#
btrem
...do anything.
#
aaronpk
they're all...terrible really
#
[tantek]
subject matter experts can be expected to design bad technology because they're not technology experts. the technology experts can be expected to design a theoretical technology that doesn't actually match real world needs because they're not subject matter experts in those real world needs.
#
aaronpk
colloquy should work fine. i also used limechat for a while
#
[tantek]
yeah Colloquy was ok last time I tried it
#
btrem
I must be unable to configure it, then. I dunno. I enter the #microformats channel, and nothing happens. /shrugs
#
btrem
aaronpk: do you use the web interface, then?
#
aaronpk
no i use an extremely convoluted setup that i would not necessarily recommend to most people :)
#
btrem
As to the point that I missed when I got dumped: my point is that, it seems to me, a method for subject matter experts to participate is needed. The microformats community is good for that, but it's not something that subject matter experts would likely know about.
#
btrem
The microdata idea -- or something like it -- might have been a way for subject experts to learn what's out there simply by looking at source code. Which is how a lot of learning on the web happens.
#
aaronpk
discoverability of features by looking at examples is always a challenge though
#
aaronpk
one of my biggest frustrations when trying to learn new languages or frameworks is trying to distinguish arbitrary decisions the author made vs things that are conventions or even rules of the language
#
btrem
And a better alternative is...?
#
aaronpk
but if I looked at a bunch of website source code and saw that a lot of them were using the h-entry class, i might then search for "h-entry", and then find the microformats wiki
#
btrem
Yes, another frustration is learning bad habits from bad authors.
#
btrem
Agreed. I'd wager that would happen much more quickly if a bunch of websites were using microformats.org/h-entry, because the link is right there.
#
aaronpk
i guess what i mean is seeing one instance of anything (even a url) on a website isn't enough to establish a pattern or suggest that it's something more than the one author doing something on their own
benterry joined the channel
#
btrem
I agree. But seeing it in lots of places is enough. I think a url is a much more recognizable pattern, though.
#
aaronpk
maybe, but i'm not sure the additional visual noise and potential for typos is worth the benefit
#
btrem
As I said earlier, if you don't know about mf2, you would have no way of knowing that h-xxxx is a root microformats name.
#
aaronpk
that's what i was getting at with the searching comment tho
#
aaronpk
sure you wouldn't know that from looking at just one website
#
aaronpk
but if you keep seeing it over and over you might get curious and look it up
#
btrem
I do recognize that the added complexity of microdata attributes is a draw back.
#
btrem
I guess I'm saying that microdata had a potential usefulness that was not really explored. It was limited to an alternative to microformats when an alternative was not really needed.
benterry joined the channel
#
btrem
edited /microformats2-brainstorming (+625) "/* adopt itemref */ Adds quote about itemref from whatwg html5 spec."
(view diff)
#
btrem
I added a note about itemref, just in case we decide it's a good idea. It is easy, and the attribute already exists, and won't trigger errors in a validator. At the end of the day, while my custom element is nifty, it doesn't offer any advantage over itemref, and it does add lots of complexity.
#
btrem
Lots of effort on my part, but a failed effort. I should have realized that much earlier. :-o
#
btrem
For the sake of ease, in case you want to see my idea that I think is not really that great, here's the link: https://btrem.github.io/microformats/include-pattern/
#
Loqi
Brian Tremblay
#
aaronpk
ah, there's an existing pattern for this
#
aaronpk
tho this is leaving the microformats parsing realm and getting into microformats consumer realm which tends to be more discussion over at #indieweb-dev
#
aaronpk
if you paste that HTML into XRay, XRay parses the microformats and then pulls out the full author info into each entry https://xray.p3k.app/
#
aaronpk
(note you have to include a URL like https://example.com when checking that on XRay)