how-to-start-a-new-microformat
The New Microformat HOW-TO
This HOW-TO provides a step-by-step tutorial in the process of creating a new Microformat from beginning to end.
Step 1: Determine if a New Microformat is Needed
In many cases, a new Microformat is not needed. Microformats are meant to be combined with one another, therefore most problems can be solved by combining a number of Microformats. Here is a step by step guide to determining if a new Microformat is needed:
- Create a Problem Statement
- The Problem Statement is a very specific paragraph that outlines the problem that you are trying to address. If you need an example of an initial problem statement, one can be found here: hAudio Problem Statement. Once you have finished your problem statement, proceed to the next step.
- Apply pre-existing Microformats to your Problem Statement
- There is a large list of Microformat specifications, drafts and exploratory discussions that could be applied to your Problem Statement. Make sure to check the list and see if your problem can be solved using a combination of the pre-existing Microformats. If you have not found a combination of Microformats that can address your problem statement, proceed to the next step.
- Ask the microformats-new mailing list for guidance
- There are a number of people that have been active in the community for a long time. If you have done the first two steps and you still think that your problem is not being addressed by the Microformats community, ask the microformats-new mailing list. Make sure to include your Problem Statement and let the list know that you are considering creating a new Microformat to address the issue. Be ready for a variety of answers - the community rarely agrees when a new topic arises. It may take a bit of discussion to determine if a new Microformat is needed.
Step 2: Gather Examples and Similar Projects
If several people on the microformats-new mailing list have stated that they are interested in working on your problem statement, the next step in the process is to gather examples. It is suggested that you collect at least 50 unique URLs that demonstrate the publishing behavior that you are standardizing. You should also note every file format
- Gather example URLs
- Example URLs that contain publishing behavior as specified in your problem statement should be gathered. For example, if you are attempting to come up with a new image metadata Microformat, you would collect website URLs that publish image metadata (such as Flickr).
- Gather example file and markup formats
- Example file formats and markup formats that demonstrate publishing behavior as specified in your problem statement should be gathered. For example, if you are attempting to come up with a new image metadata Microformat, you would collect file formats that are capable of encapsulating image metadata (such as as the EXIF file format).
- Create and populate the examples page
- You will want to create an examples page on the wiki. For example, if you are gathering image metadata examples, you could name the page image-metadata-examples. Place all example URLs into this page. For more guidance, take a look at the audio-info-examples page.
- Create and populate the formats page
- You will want to create a formats page on the wiki. For example, if you are gathering image metadata formats, you could name the page image-metadata-formats. For more guidance, take a look at the audio-info-formats page.
Step 3: Analyze the Examples for Common Attributes
Microformats are based on sound research, logical analysis and thorough vetting of the data that you have gathered. This is one of the most tedious parts of the process, and if you do not perform a thorough job at this stage, it will come back to bite you.
- Determine common properties
- It is important to define and keep track of common properties found throughout the process. If you were analyzing image metadata, for instance, you would probably define the title, summary, formatted name, and publish date properties. The list will grow as you perform more analysis. Make sure to clearly define each common property so that others will know what you mean in your analysis. For an example of defining common properties, here is the definition for the audio-info title common property.
- Analyze each example URL
- Once a set of common properties have been defined, start analyzing each example URL that you have collected. Note which common properties are published on each page. You will have to add common properties to the list as you find new trends while analyzing your data. Here is an example of how you can document this analysis on the wiki: audio-info analysis documentation
- Analyze each format
- Perform the same type of analysis that you performed on the example URLs on the file formats and other semantic formats you have gathered.
- Perform aggregate statistical analysis
- After you have completed analysis of all URLs and formats, you should perform a statistical analysis on the aggregate data. You will need hard numbers that are backed up by data to prove your point on the microformats-new mailing list. For an example of what the aggregate analysis should look like after it is completed, the aggregate analysis of music services section of the audio-info page may be of help.
Step 4: Check your work, Start Brainstorming, and Ask for Feedback
It is important that all of your findings are thoroughly documented on the wiki. You will be able to speed the process along if everybody understands the data that you have gathered. If your analysis is sound and doesn't leave any open questions, the next step of the process will be much easier.
- Ensure that you have the basics
- At this point you should have an examples and formats page. The examples page should contain:
- A Problem Statement
- Common Properties and their definitions
- At least 50 example URLs, each with common properties that they contain
- A statistical analysis of all aggregate data
- At this point you should have an examples and formats page. The examples page should contain:
- Create and populate the brainstorming page
- The brainstorming page is where most of the discussion on the mailing list will be documented. It is important to propose a starting point to the mailing list. Identify the common properties that you think should be included in the Microformat based on the analysis. Be as minimalistic as you can. Do not propose anything that is not backed up by hard data. An example of how to propose common properties, also known as Discovered Elements, can be found on the audio-info Discovered Elements section of the audio-info-brainstorming page.
- Ask for Feedback
- Send an e-mail to microformats-new stating that examples gathering and analysis has been completed for your Microformat and that you would like to start brainstorming usage scenarios, markup and work toward a Microformat draft specification.
Step 5: Brainstorm Usage Scenarios and Proposals
Brainstorming is best done with as much community involvement as possible. There are a number of people that have been involved with Microformats for years and can provide valuable direction for your Microformat.
- Discuss each Discovered Element
- Each discovered element that you identified in the previous step must be discussed thoroughly. See if there are any objections to your proposal and discuss alternatives.
- Update the brainstorming page
- For every element, you will want to discuss re-using property names from other Microformats, alternatives, benefits and drawbacks. Make sure to document the discussion in a way that is non-confrontational and fair to both sides of the argument.