{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE DeriveDataTypeable #-}
module Text.HTML5.MetaData.Schema.QualitativeValue where

--  Valid: 2016-03-21 (Schema.rdfs.org)

import Text.HTML5.MetaData.Class
import Text.HTML5.MetaData.Type
import Data.Text
import Data.Typeable
import {-# SOURCE #-} qualified Text.HTML5.MetaData.Schema.Thing
import {-# SOURCE #-} qualified Text.HTML5.MetaData.Schema.Intangible
import {-# SOURCE #-} qualified Text.HTML5.MetaData.Schema.Enumeration
import {-# SOURCE #-} qualified Text.HTML5.MetaData.Schema.CarUsageType
import {-# SOURCE #-} qualified Text.HTML5.MetaData.Schema.DriveWheelConfigurationValue
import {-# SOURCE #-} qualified Text.HTML5.MetaData.Schema.SteeringPositionValue

-- | A predefined value for a product characteristic, e.g. the power cord plug type \"US\" or the garment sizes \"S\", \"M\", \"L\", and \"XL\".
--
--   [@id@] QualitativeValue
--
--   [@label@] Qualitative Value
--
--   [@comment@] A predefined value for a product characteristic, e.g. the power cord plug type \"US\" or the garment sizes \"S\", \"M\", \"L\", and \"XL\".
--
--   [@ancestors@] @'Thing','Intangible','Enumeration'@
--
--   [@subtypes@] @'CarUsageType','DriveWheelConfigurationValue','SteeringPositionValue'@
--
--   [@supertypes@] @'Enumeration'@
--
--   [@url@] <http://schema.org/QualitativeValue>
data QualitativeValue = QualitativeValue { additionalProperty :: AdditionalProperty
                                         , equal :: Equal
                                         , greater :: Greater
                                         , greaterOrEqual :: GreaterOrEqual
                                         , lesser :: Lesser
                                         , lesserOrEqual :: LesserOrEqual
                                         , nonEqual :: NonEqual
                                         , valueReference :: ValueReference
                                         , supersededBy :: SupersededBy
                                         , additionalType :: AdditionalType
                                         , alternateName :: AlternateName
                                         , description :: Description
                                         , image :: Image
                                         , mainEntityOfPage :: MainEntityOfPage
                                         , name :: Name
                                         , potentialAction :: PotentialAction
                                         , sameAs :: SameAs
                                         , url :: Url
                                         }
                        deriving (Show, Read, Eq, Typeable)

instance MetaData QualitativeValue where
  _label         = const "Qualitative Value"
  _comment_plain = const "A predefined value for a product characteristic, e.g. the power cord plug type \"US\" or the garment sizes \"S\", \"M\", \"L\", and \"XL\"."
  _comment       = const "A predefined value for a product characteristic, e.g. the power cord plug type \"US\" or the garment sizes \"S\", \"M\", \"L\", and \"XL\"."
  _url           = const "http://schema.org/QualitativeValue"
  _ancestors     = const [typeOf (undefined :: Text.HTML5.MetaData.Schema.Thing.Thing)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.Intangible.Intangible)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.Enumeration.Enumeration)]
  _subtypes      = const [typeOf (undefined :: Text.HTML5.MetaData.Schema.CarUsageType.CarUsageType)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.DriveWheelConfigurationValue.DriveWheelConfigurationValue)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.SteeringPositionValue.SteeringPositionValue)]
  _supertypes    = const [typeOf (undefined :: Text.HTML5.MetaData.Schema.Enumeration.Enumeration)]