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

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

import Text.HTML5.MetaData.Class
import Text.HTML5.MetaData.Type hiding (DeliveryMethod)
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.LockerDelivery
import {-# SOURCE #-} qualified Text.HTML5.MetaData.Schema.ParcelService

-- | A delivery method is a standardized procedure for transferring the product or service to the destination of fulfillment chosen by the customer. Delivery methods are characterized by the means of transportation used, and by the organization or group that is the contracting party for the sending organization or person.    Commonly used values:    http://purl.org/goodrelations/v1#DeliveryModeDirectDownload     http://purl.org/goodrelations/v1#DeliveryModeFreight     http://purl.org/goodrelations/v1#DeliveryModeMail     http://purl.org/goodrelations/v1#DeliveryModeOwnFleet     http://purl.org/goodrelations/v1#DeliveryModePickUp     http://purl.org/goodrelations/v1#DHL     http://purl.org/goodrelations/v1#FederalExpress     http://purl.org/goodrelations/v1#UPS
--
--   [@id@] DeliveryMethod
--
--   [@label@] Delivery Method
--
--   [@comment@] A delivery method is a standardized procedure for transferring the product or service to the destination of fulfillment chosen by the customer. Delivery methods are characterized by the means of transportation used, and by the organization or group that is the contracting party for the sending organization or person.<br/>    Commonly used values:<br/><br/>    http://purl.org/goodrelations/v1#DeliveryModeDirectDownload <br/>    http://purl.org/goodrelations/v1#DeliveryModeFreight <br/>    http://purl.org/goodrelations/v1#DeliveryModeMail <br/>    http://purl.org/goodrelations/v1#DeliveryModeOwnFleet <br/>    http://purl.org/goodrelations/v1#DeliveryModePickUp <br/>    http://purl.org/goodrelations/v1#DHL <br/>    http://purl.org/goodrelations/v1#FederalExpress <br/>    http://purl.org/goodrelations/v1#UPS <br/>        
--
--   [@ancestors@] @'Thing','Intangible','Enumeration'@
--
--   [@subtypes@] @'LockerDelivery','ParcelService'@
--
--   [@supertypes@] @'Enumeration'@
--
--   [@url@] <http://schema.org/DeliveryMethod>
data DeliveryMethod = DeliveryMethod { 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 DeliveryMethod where
  _label         = const "Delivery Method"
  _comment_plain = const "A delivery method is a standardized procedure for transferring the product or service to the destination of fulfillment chosen by the customer. Delivery methods are characterized by the means of transportation used, and by the organization or group that is the contracting party for the sending organization or person.    Commonly used values:    http://purl.org/goodrelations/v1#DeliveryModeDirectDownload     http://purl.org/goodrelations/v1#DeliveryModeFreight     http://purl.org/goodrelations/v1#DeliveryModeMail     http://purl.org/goodrelations/v1#DeliveryModeOwnFleet     http://purl.org/goodrelations/v1#DeliveryModePickUp     http://purl.org/goodrelations/v1#DHL     http://purl.org/goodrelations/v1#FederalExpress     http://purl.org/goodrelations/v1#UPS"
  _comment       = const "A delivery method is a standardized procedure for transferring the product or service to the destination of fulfillment chosen by the customer. Delivery methods are characterized by the means of transportation used, and by the organization or group that is the contracting party for the sending organization or person.<br/>    Commonly used values:<br/><br/>    http://purl.org/goodrelations/v1#DeliveryModeDirectDownload <br/>    http://purl.org/goodrelations/v1#DeliveryModeFreight <br/>    http://purl.org/goodrelations/v1#DeliveryModeMail <br/>    http://purl.org/goodrelations/v1#DeliveryModeOwnFleet <br/>    http://purl.org/goodrelations/v1#DeliveryModePickUp <br/>    http://purl.org/goodrelations/v1#DHL <br/>    http://purl.org/goodrelations/v1#FederalExpress <br/>    http://purl.org/goodrelations/v1#UPS <br/>        "
  _url           = const "http://schema.org/DeliveryMethod"
  _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.LockerDelivery.LockerDelivery)
                         ,typeOf (undefined :: Text.HTML5.MetaData.Schema.ParcelService.ParcelService)]
  _supertypes    = const [typeOf (undefined :: Text.HTML5.MetaData.Schema.Enumeration.Enumeration)]