microformats2 implied properties

(Redirected from microformats-2-implied-properties)

Jump to: navigation, search

Contents

summary

As part of the further simplifications in microformats-2, the following generic properties are automatically implied by microformats with only a root class name with certain common semantic markup patterns.

and combinations thereof.

root class only and name property

Web pages with microformats nearly always markup proper nouns, which have a primary label of some sort, commonly known as a name.

Thus if a microformat only has a root class name and no properties, then the entire text contents of the element is parsed as the p-name property of the microformat.

Markup example:

Simple person reference:

<span class="h-card">Frances Berriman</span>

Parsed JSON with implied name property:

{
  "type": ["h-card"],
  "properties": {
    "name": ["Frances Berriman"] 
  }
}

to-do:

use-cases:

related FAQ:

aside name vs fn

In short, why use 'name' instead of the well established 'fn' from existing microformats? (per naming-principle etc.) Per feedback:

Choosing to use 'name' as the generic term moving forward instead of 'fn' - the benefits outweigh costs.

hyperlink and url property

A significant proportion of proper noun references on web pages are a hyperlink to a page about that proper noun, AKA a URL for a proper noun.

Thus if a microformat is on a hyperlink element with only a root class name and no properties, then in addition to implying the name from its text contents, the href of the element is parsed as the u-url property of the microformat.

Markup example:

Simple hyperlinked person reference

<a class="h-card" href="http://benward.me">Ben Ward</a>

Parsed JSON:

{ 
  "type": ["h-card"],
  "properties": {
    "name": ["Ben Ward"],
    "url": ["http://benward.me"]
  }
}

to-do:

use-cases:

image and name photo properties

Many proper noun references on web pages are simply an embedded image of that proper noun, typically a representative photo of the proper noun, often with its name as alt text.

Thus if a microformat is on an image element (<img src>) with only a root class name and no properties, then the src of the element is parsed as the u-photo property of the microformat, and if present, the alt of the element is parsed as the p-name property of the microformat.

Markup example:

<img class="h-card" src="http://example.org/pic.jpg" alt="Chris Messina" />

Parsed JSON:

{ 
  "type": ["h-card"],
  "properties": {
    "name": ["Chris Messina"],
    "photo": ["http://example.org/pic.jpg"]
  }
}

An object element with a data attribute works the same way as the img element with its src attribute.

to-do:

use-cases:

hyperlinked image and name photo url properties

Often proper noun references on web pages are a representative image of the proper noun that is hyperlinked to a page about that proper noun.

Thus if a microformat is on a hyperlink element with only a root class name and no properties, and that element has a single child element and that element is an image, then in addition to implying the the URL from its href, the src of the child image element is parsed as the u-photo property of the microformat, and if present, its alt attribute is parsed as the p-name property of the microformat.

Markup example:

<a class="h-card" href="http://rohit.khare.org/">
 <img alt="Rohit Khare"
      src="https://s3.amazonaws.com/twitter_production/profile_images/53307499/180px-Rohit-sq_bigger.jpg" />
</a>

Parsed JSON:

{ 
  "type": ["h-card"],
  "properties": {
    "name": ["Rohit Khare"],
    "url": ["http://rohit.khare.org"],
    "photo": ["https://s3.amazonaws.com/twitter_production/profile_images/53307499/180px-Rohit-sq_bigger.jpg"]
  }
}

An object element with a data attribute works the same way as the img element with its src attribute. E.g. <a class="h-card" href><object type="image/..." data="..."> in addition to implying u-url from the href, implies u-photo from the object element's data, as well as p-name from the text contents of the object as with elements in general.

use-cases:

root class with one child hyperlink

root class with one child element and text

parsing

See: http://microformats.org/wiki/microformats2-parsing#parsing_for_implied_properties

to do

to-do:

additional markup patterns to consider

Document more use-cases from actual publishing examples in the wild of simple items, e.g. from Wikipedia.

And some per the principle of least surprise - fleshing out some of the patterns to consider additional different combinations of elements, but in the same basic pattern(s).

root class on one element

Let's consider root class only on:

<cite class="p-author h-cite">
 (<abbr class="h-card" title="Richard Posner">Posner</abbr> 
  <time class="dt-published">2010</time>)
</cite>

Note the problem of lacking an explicit "name" for the work being cited. Perhaps such an abbreviated citation reference could hyperlink to a full citation, and either:

  • incorporate the name of the work being cited by reference from that full citation, or
  • perhaps create a new, smaller microformat as a subset of h-cite like abbreviated cite, or a cite reference. Try to pick a name according to what TCMOS calls those parenthetical references.

rejected root only markup patterns

Is there anything that should be implied semantically from root class only on:

Use-case counter-examples welcome.

root element and one child

see also

microformats2 implied properties was last modified: Saturday, July 11th, 2015

Views