reduce instances when p-name is implied #6
|
From the end of the wiki discussion, one straw proposal was: "any explicit p-* property on an element stops implied p-name" (this sounds a bit ambiguous and could be reworded, but I think the general intent / principle is workable) |
|
I'm not clear on what that proposal actually means. Does "stop" mean no implied name is generated at all? Does it mean that property with p-* is excluded from the implied name? |
|
Either possibility could be pursued. Let's start documenting examples of existing failures / misbehaviors so we can look at specifics. |
|
Here is an example that came up today: https://huffduffer.com/tags/indieweb This boils down to a structure like below: <ol class="h-feed">
<li class="h-entry">
<h3 class="p-name">Episode Name</h3>
<div class="e-content">episode description...</div>
<audio class="u-audio" src="..."></audio>
<p class="p-author h-card">...</p>
</li>
</ol>The result of the current implied p-name rule is all the contents of the individual h-entrys end up being in the implied p-name of the h-feed. |
|
Would it make sense for implied p-name to skip content from h-* children? It would mean in the above case that the implied p-name for the above h-feed is empty. |
This is a split-off of part of http://microformats.org/wiki/microformats2-parsing-issues#implied_properties_when_an_explicit_class_is_provided that was left unresolved without consensus (since that issue was resolved with just dealing with u-url and nothing more).
Experience has shown there are a number of instances where implied p-name produces something unhelpful. Typically this happens with otherwise large microformats which for some reason omitted the name (e.g. an h-feed, or h-entry that has no author supplied name etc.).
The use-case for which implied p-name was designed was for small microformats, e.g. just a hyperlink with h-* class on it, or maybe just a simple set of nested elements (without siblings). It has some similar use-cases too. But by the point you have elements with multiple explicit properties specified inside, rarely does the current implied p-name rule produce anything useful.
One thing that would help is links to specific examples where excessive or otherwise "useless" p-names are being implied, where no p-name would actually be preferable (from a consuming code point of view).