{-# LANGUAGE OverloadedStrings #-}
--------------------------------------------------------------------------------
-- See end of this file for licence information.
--------------------------------------------------------------------------------
-- |
-- Module : Swish.RDF.Vocabulary.Provenance
-- Copyright : (c) 2012 Douglas Burke
-- License : GPL V2
--
-- Maintainer : Douglas Burke
-- Stability : experimental
-- Portability : OverloadedStrings
--
-- This module defines some vocabulary terms from the Provenance Ontology
-- by the W3C Provenance Working Group
-- ().
-- This is /experimental/ since the Ontology is still a Working Draft.
--
--------------------------------------------------------------------------------
module Swish.RDF.Vocabulary.Provenance
(
-- | The version used for this module is
-- \"W3C Working Draft 13 December 2011\",
-- .
namespacePROV
-- * Classes
, provActivity
, provAgent
, provControl
, provEntity
, provGeneration
, provLocation
, provParticipation
, provProvenanceContainer
, provQualifiedInvolvement
, provRecipe
, provRole
, provUsage
-- * Properties
, provdependedOn
, provendedAt
, provhadLocation
, provhadOriginalSource
, provhadParticipant
, provhadQualifiedControl
, provhadQualifiedEntity
, provhadQualifiedGeneration
, provhadQualifiedParticipation
, provhadQualifiedUsage
, provhadRecipe
, provhadRole
, provhadTemporalValue
, provstartedAt
, provused
, provwasAttributedTo
, provwasComplementOf
, provwasControlledBy
, provwasDerivedFrom
, provwasEventuallyDerivedFrom
, provwasGeneratedAt
, provwasGeneratedBy
, provwasInformedBy
, provwasQuoteOf
, provwasRevisionOf
, provwasScheduledAfter
, provwasSummaryOf
)
where
import Swish.Namespace (Namespace, makeNamespace, ScopedName, makeNSScopedName)
import Swish.QName (LName)
import Data.Maybe (fromMaybe)
import Network.URI (URI, parseURI)
------------------------------------------------------------
-- Namespace
------------------------------------------------------------
provURI :: URI
provURI = fromMaybe (error "Internal error processing PROV URI") $ parseURI "http://www.w3.org/ns/prov-o/"
-- | Maps @prov@ to .
namespacePROV :: Namespace
namespacePROV = makeNamespace (Just "prov") provURI
------------------------------------------------------------
-- Terms
------------------------------------------------------------
toS :: LName -> ScopedName
toS = makeNSScopedName namespacePROV
-- Classes
-- | @prov:Activity@ from .
provActivity :: ScopedName
provActivity = toS "Activity"
-- | @prov:Agent@ from .
provAgent :: ScopedName
provAgent = toS "Agent"
-- | @prov:Control@ from .
provControl :: ScopedName
provControl = toS "Control"
-- | @prov:Entity@ from .
provEntity :: ScopedName
provEntity = toS "Entity"
-- | @prov:Generation@ from .
provGeneration :: ScopedName
provGeneration = toS "Generation"
-- | @prov:Location@ from .
provLocation :: ScopedName
provLocation = toS "Location"
-- | @prov:Participation@ from .
provParticipation :: ScopedName
provParticipation = toS "Participation"
-- | @prov:ProvenanceContainer@ from .
provProvenanceContainer :: ScopedName
provProvenanceContainer = toS "ProvenanceContainer"
-- | @prov:QualifiedInvolvement@ from .
provQualifiedInvolvement :: ScopedName
provQualifiedInvolvement = toS "QualifiedInvolvement"
-- | @prov:Recipe@ from .
provRecipe :: ScopedName
provRecipe = toS "Recipe"
-- | @prov:Role@ from .
provRole :: ScopedName
provRole = toS "Role"
-- | @prov:Usage@ from .
provUsage :: ScopedName
provUsage = toS "Usage"
-- Properties
-- | @prov:dependedOn@ from .
provdependedOn :: ScopedName
provdependedOn = toS "dependedOn"
-- | @prov:endedAt@ from .
provendedAt :: ScopedName
provendedAt = toS "endedAt"
-- | @prov:hadLocation@ from .
provhadLocation :: ScopedName
provhadLocation = toS "hadLocation"
-- | @prov:hadOriginalSource@ from .
provhadOriginalSource :: ScopedName
provhadOriginalSource = toS "hadOriginalSource"
-- | @prov:hadParticipant@ from .
provhadParticipant :: ScopedName
provhadParticipant = toS "hadParticipant"
-- | @prov:hadQualifiedControl@ from .
provhadQualifiedControl :: ScopedName
provhadQualifiedControl = toS "hadQualifiedControl"
-- | @prov:hadQualifiedEntity@ from .
provhadQualifiedEntity :: ScopedName
provhadQualifiedEntity = toS "hadQualifiedEntity"
-- | @prov:hadQualifiedGeneration@ from .
provhadQualifiedGeneration :: ScopedName
provhadQualifiedGeneration = toS "hadQualifiedGeneration"
-- | @prov:hadQualifiedParticipation@ from .
provhadQualifiedParticipation :: ScopedName
provhadQualifiedParticipation = toS "hadQualifiedParticipation"
-- | @prov:hadQualifiedUsage@ from .
provhadQualifiedUsage :: ScopedName
provhadQualifiedUsage = toS "hadQualifiedUsage"
-- | @prov:hadRecipe@ from .
provhadRecipe :: ScopedName
provhadRecipe = toS "hadRecipe"
-- | @prov:hadRole@ from .
provhadRole :: ScopedName
provhadRole = toS "hadRole"
-- | @prov:hadTemporalValue@ from .
provhadTemporalValue :: ScopedName
provhadTemporalValue = toS "hadTemporalValue"
-- | @prov:startedAt@ from .
provstartedAt :: ScopedName
provstartedAt = toS "startedAt"
-- | @prov:used@ from .
provused :: ScopedName
provused = toS "used"
-- | @prov:wasAttributedTo@ from .
provwasAttributedTo :: ScopedName
provwasAttributedTo = toS "wasAttributedTo"
-- | @prov:wasComplementOf@ from .
provwasComplementOf :: ScopedName
provwasComplementOf = toS "wasComplementOf"
-- | @prov:wasControlledBy@ from .
provwasControlledBy :: ScopedName
provwasControlledBy = toS "wasControlledBy"
-- | @prov:wasDerivedFrom@ from .
provwasDerivedFrom :: ScopedName
provwasDerivedFrom = toS "wasDerivedFrom"
-- | @prov:wasEventuallyDerivedFrom@ from .
provwasEventuallyDerivedFrom :: ScopedName
provwasEventuallyDerivedFrom = toS "wasEventuallyDerivedFrom"
-- | @prov:wasGeneratedAt@ from .
provwasGeneratedAt :: ScopedName
provwasGeneratedAt = toS "wasGeneratedAt"
-- | @prov:wasGeneratedBy@ from .
provwasGeneratedBy :: ScopedName
provwasGeneratedBy = toS "wasGeneratedBy"
-- | @prov:wasInformedBy@ from .
provwasInformedBy :: ScopedName
provwasInformedBy = toS "wasInformedBy"
-- | @prov:wasQuoteOf@ from .
provwasQuoteOf :: ScopedName
provwasQuoteOf = toS "wasQuoteOf"
-- | @prov:wasRevisionOf@ from .
provwasRevisionOf :: ScopedName
provwasRevisionOf = toS "wasRevisionOf"
-- | @prov:wasScheduledAfter@ from .
provwasScheduledAfter :: ScopedName
provwasScheduledAfter = toS "wasScheduledAfter"
-- | @prov:wasSummaryOf@ from .
provwasSummaryOf :: ScopedName
provwasSummaryOf = toS "wasSummaryOf"
--------------------------------------------------------------------------------
--
-- Copyright (c) 2012 Douglas Burke
-- All rights reserved.
--
-- This file is part of Swish.
--
-- Swish is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 2 of the License, or
-- (at your option) any later version.
--
-- Swish is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with Swish; if not, write to:
-- The Free Software Foundation, Inc.,
-- 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
--
--------------------------------------------------------------------------------