module Text.HTML5.MetaData.Schema.StructuredValue where
import Text.HTML5.MetaData.Class
import Text.HTML5.MetaData.Type
import Data.Text
import Data.Typeable
import  qualified Text.HTML5.MetaData.Schema.Thing
import  qualified Text.HTML5.MetaData.Schema.Intangible
import  qualified Text.HTML5.MetaData.Schema.ContactPoint
import  qualified Text.HTML5.MetaData.Schema.GeoCoordinates
import  qualified Text.HTML5.MetaData.Schema.GeoShape
import  qualified Text.HTML5.MetaData.Schema.NutritionInformation
import  qualified Text.HTML5.MetaData.Schema.OpeningHoursSpecification
import  qualified Text.HTML5.MetaData.Schema.OwnershipInfo
import  qualified Text.HTML5.MetaData.Schema.PriceSpecification
import  qualified Text.HTML5.MetaData.Schema.QuantitativeValue
import  qualified Text.HTML5.MetaData.Schema.TypeAndQuantityNode
import  qualified Text.HTML5.MetaData.Schema.WarrantyPromise
data StructuredValue = StructuredValue { additionalType :: AdditionalType
                                       , alternateName :: AlternateName
                                       , description :: Description
                                       , image :: Image
                                       , name :: Name
                                       , sameAs :: SameAs
                                       , url :: Url
                                       }
                       deriving (Show, Read, Eq, Typeable)
instance MetaData StructuredValue where
  _label         = const "Structured Value"
  _comment_plain = const ""
  _comment       = const ""
  _url           = const "http://schema.org/StructuredValue"
  _ancestors     = const [typeOf (undefined :: Text.HTML5.MetaData.Schema.Thing.Thing)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.Intangible.Intangible)]
  _subtypes      = const [typeOf (undefined :: Text.HTML5.MetaData.Schema.ContactPoint.ContactPoint)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.GeoCoordinates.GeoCoordinates)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.GeoShape.GeoShape)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.NutritionInformation.NutritionInformation)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.OpeningHoursSpecification.OpeningHoursSpecification)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.OwnershipInfo.OwnershipInfo)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.PriceSpecification.PriceSpecification)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.QuantitativeValue.QuantitativeValue)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.TypeAndQuantityNode.TypeAndQuantityNode)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.WarrantyPromise.WarrantyPromise)]
  _supertypes    = const [typeOf (undefined :: Text.HTML5.MetaData.Schema.Intangible.Intangible)]