func (i *Item) addItem(property string, value *Item) {
	i.Properties[property] = append(i.Properties[property], value)
}
addItem adds the property, value pair to the properties map. It appends to any
existing property.
package microdata
import (
	"bytes"
	"io"
	"net/http"
	"net/url"
	"strings"
	"golang.org/x/net/html"
	"golang.org/x/net/html/atom"
	"golang.org/x/net/html/charset"
)
type Microdata struct {
	Items []*Item `json:"items"`
}
func (m *Microdata) addItem(item *Item) {
	m.Items = append(m.Items, item)
}
type ValueList []interface{}
type PropertyMap map[string]ValueList
type Item struct {
	Types      []string    `json:"type"`
	Properties PropertyMap `json:"properties"`
	ID         string      `json:"id,omitempty"`
}
func (i *Item) addString(property, value string) {
	i.Properties[property] = append(i.Properties[property], value)
}