// UnmarshalJSON unmarshals the 'tag' property.
UnmarshalJSON unmarshals the 'tag' property.
// UnmarshalJSON unmarshals the ' tag ' property .
func (p *TagProperty) UnmarshalJSON(bytes []byte) error {
	obj := &ObjectType{}
	err := json.Unmarshal(bytes, &obj)
	if err != nil {
		return err
	}
	switch {
	case obj.Type().Is(TypeLink):
		link := &LinkType{}
		e := json.Unmarshal(bytes, &link)
		if e != nil {
			return e
		}
		p.link = link
	default:
		p.obj = obj
	}
	return err
}
func ( p * TagProperty ) UnmarshalJSON ( bytes [ ] byte ) error { obj := & ObjectType { } err := json . Unmarshal ( bytes , & obj ) if err != nil { return err } switch { case obj . Type ( ) . Is ( TypeLink ) : link := & LinkType { } e := json . Unmarshal ( bytes , & link ) if e != nil { return e } p . link = link default : p . obj = obj } return err }
UnmarshalJSON unmarshals the 'tag' property.
UnmarshalJSON unmarshals the ' tag ' property .