@prefix :      <https://w3id.org/GDPRov#> .
@prefix owl:   <http://www.w3.org/2002/07/owl#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml:   <http://www.w3.org/XML/1998/namespace> .
@prefix xsd:   <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .

:UserOutputStep  a       owl:Class ;
        rdfs:label       "User Output Step" ;
        rdfs:subClassOf  :UserInteractionStep .

:collectedDataFromAgent
        a                   owl:ObjectProperty ;
        rdfs:domain         :DataCollectionActivity ;
        rdfs:range          <http://www.w3.org/ns/prov#Agent> ;
        rdfs:subPropertyOf  :involvesAgent .

:DataTransferStep  a     owl:Class ;
        rdfs:label       "DataTransferStep"^^rdfs:Literal ;
        rdfs:subClassOf  :DataStep .

:DataSubject  a           owl:Class ;
        rdfs:comment      "An individual or entity" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#DataSubject> ;
        rdfs:label        "Data Subject" ;
        rdfs:subClassOf   <http://www.w3.org/ns/prov#Agent> .

:DataCollectionActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that collects or acquires data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#CollectionOfPersonalData> ;
        rdfs:label        "Data Collection Activity" ;
        rdfs:seeAlso      :DataCollectionStep ;
        rdfs:subClassOf   :DataActivity .

:DataArchivalProcess  a   owl:Class ;
        rdfs:comment      "A DataArchivalProcess describes the process of data archival"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ArchiveData> ;
        rdfs:label        "Data Archival Process"@en ;
        rdfs:subClassOf   :Process .

:NotifyDataSubject  a     owl:Class ;
        rdfs:comment      "Step that notifies the data subject of data breach." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#NotifyDataSubjectOfBreach> ;
        rdfs:label        "Notify Data Subject" ;
        rdfs:seeAlso      :NotifyDataSubjectActivity ;
        rdfs:subClassOf   :DataBreachStep .

:ConsentAgreement  a      owl:Class ;
        rdfs:comment      "ConsentAgreement reflects the consent provided by the user based on the provided Terms and Conditions and Consent Agreement Templates. It is the set of permissions the user has specifically provided or refused to provide. This consent is useful to provide justification of activities that use user data."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#GivenConsent> ;
        rdfs:label        "ConsentAgreement"@en ;
        rdfs:seeAlso      :GivenConsent ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Variable> ;
        owl:disjointWith  :TermsAndConditions , :Data , :ConsentAgreementTemplate .

:DataSharingActivity  a   owl:Class ;
        rdfs:comment      "Is an activity that shares data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ShareDataWithThirdParty> ;
        rdfs:label        "Data Sharing Activity" ;
        rdfs:seeAlso      :DataSharingStep ;
        rdfs:subClassOf   :DataActivity .

:refersToProcess  a  owl:ObjectProperty ;
        rdfs:range  :Process .

:ControllerRepresentative
        a                 owl:Class ;
        rdfs:comment      "A Representative of the Controller" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ControllerRepresentative> ;
        rdfs:label        "Controller Representative" ;
        rdfs:subClassOf   <http://www.w3.org/ns/prov#Agent> .

:AnonymisationActivity
        a                owl:Class ;
        rdfs:comment     "Is an activity that anonymises data." ;
        rdfs:label       "Anonymisation Activity" ;
        rdfs:seeAlso     :DataAnonymisationStep ;
        rdfs:subClassOf  :DataTransformationActivity .

:UserInteractionStep  a  owl:Class ;
        rdfs:label       "User Interaction Step" ;
        rdfs:subClassOf  <http://purl.org/net/p-plan#Step> .

<http://purl.org/net/p-plan#Variable>
        a       owl:Class .

<http://purl.org/net/p-plan#Plan>
        a       owl:Class .

:DeAnonymisationActivity
        a                owl:Class ;
        rdfs:comment     "Is an activity that deanonymises data." ;
        rdfs:label       "DeAnonymisation Activity" ;
        rdfs:seeAlso     :DataDeanonymisationStep ;
        rdfs:subClassOf  :DataTransformationActivity .

:usesData  a                owl:ObjectProperty ;
        rdfs:comment        "links step with data used" ;
        rdfs:domain         :DataStep ;
        rdfs:label          "usesData" ;
        rdfs:range          :Data ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasInputVar> .

:SensitiveData  a         owl:Class ;
        rdfs:comment      "Personal data revealing racial or ethnic origin, political opinions, religious or philosophical beliefs, or trade union membership, and the processing of genetic data, biometric data for the purpose of uniquely identifying a natural person, data concerning health or data concerning a natural person's sex life or sexual orientation." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#SensitivePersonalData> ;
        rdfs:label        "Sensitive Personal Data" ;
        rdfs:seeAlso      :SensitiveDataEntity ;
        rdfs:subClassOf   :PersonalData .

:ConsentAgreementTemplate
        a                 owl:Class ;
        rdfs:comment      "This is a template for consent requested from the user."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#Consent> , <https://w3id.org/GDPRtEXT#ValidConsent> , <https://w3id.org/GDPRtEXT#ObligationForObtainingConsent> ;
        rdfs:label        "ConsentAgreementTemplate"@en ;
        rdfs:seeAlso      :GivenConsentTemplate ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Variable> ;
        owl:disjointWith  :Data , :TermsAndConditions .

:sharesDataWithThirdParty
        a                   owl:ObjectProperty ;
        rdfs:comment        "Shares data with a third party" ;
        rdfs:domain         :DataSharingStep ;
        rdfs:label          "sharesDataWithThirdParty" ;
        rdfs:range          :ThirdParty ;
        rdfs:subPropertyOf  owl:topObjectProperty ;
        owl:deprecated      true .

:TermsAndConditions  a   owl:Class ;
        rdfs:comment     "Terms and Conditions of usage as provided to the user in agreement of provided service"@en ;
        rdfs:label       "TermsAndConditions"@en ;
        rdfs:seeAlso     :TermsAndConditionsEntity ;
        rdfs:subClassOf  <http://purl.org/net/p-plan#Variable> .

:PseudoAnonymised  a  owl:NamedIndividual ;
        rdfs:comment  "PseudoAnonymised represents the Anonymisation level where the data is anonymised but cannot be de-anonymised without additional data which is NOT accessible to the data-holding organisation to retrieve personally identifiable information." ;
        rdfs:label    "PseudoAnonymised" .

:isJustificationForDataStep
        a                   owl:ObjectProperty ;
        rdfs:label          "isJustificationForDataStep" ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isInputVarOf> ;
        owl:inverseOf       :isJustifiedUsingConsentAgreement .

:ReportDataBreach  a      owl:Class ;
        rdfs:comment      "The process of reporting after a data breach has taken place." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ReportDataBreach> ;
        rdfs:label        "Report Data Breach" ;
        rdfs:subClassOf   :HandleDataBreachProcess .

:Anonymised  a        owl:NamedIndividual ;
        rdfs:comment  "Anonymised represents the Anonymisation level where the data cannot be de-anonymised to retrieve personally identifiable information." ;
        rdfs:label    "Anonymised" .

<http://purl.org/net/p-plan#hasOutputVar>
        a       owl:ObjectProperty .

<http://purl.org/dc/terms/license>
        a       owl:AnnotationProperty .

<http://www.w3.org/ns/prov#Agent>
        a       owl:Class .

:HandleRightToTransparency
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to transparency." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightToTransparency> ;
        rdfs:label        "Handle Right to Transparency" ;
        rdfs:subClassOf   :Process .

:UserIdentifier  a       owl:Class ;
        rdfs:comment     "An UserIdentifier is a specific way to identify the user through a unique ID or a combination of other attributes"@en ;
        rdfs:label       "UserIdentifier"@en ;
        rdfs:seeAlso     :UserIdentifierEntity ;
        rdfs:subClassOf  :PersonalData .

:DataActivity  a          owl:Class ;
        rdfs:comment      "Is an activity involving data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#DataActivity> ;
        rdfs:label        "Data Activity" ;
        rdfs:seeAlso      :DataStep ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Activity> .

:DataDeletionActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that deletes or erases data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#EraseData> ;
        rdfs:label        "Data Deletion Activity" ;
        rdfs:seeAlso      :DataDeletionStep ;
        rdfs:subClassOf   :DataActivity .

:ConsentModificationStep
        a                 owl:Class ;
        rdfs:comment      "ConsentModificationStep deals with modifications to the consent by the user. It invalidates the previous consent object and produces a new updated consent object that represents the modified consent."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ObligationForObtainingConsent> ;
        rdfs:label        "Consent Modification Step"@en ;
        rdfs:seeAlso      :ModifyConsentActivity ;
        rdfs:subClassOf   :ConsentStep .

:usesTermsAndConditions
        a                   owl:ObjectProperty ;
        rdfs:comment        "Links a Consent Acquisition Step with the Terms and Conditions presented to the user when acquiring Consent" ;
        rdfs:domain         :ConsentAcquisitionStep ;
        rdfs:label          "usesTermsAndConditions" ;
        rdfs:range          :TermsAndConditions ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasInputVar> .

:collectedConsentFromAgent
        a                   owl:ObjectProperty ;
        rdfs:domain         :AcquireConsentActivity ;
        rdfs:range          <http://www.w3.org/ns/prov#Agent> ;
        rdfs:subPropertyOf  :involvesAgent .

<http://purl.org/net/p-plan#Step>
        a       owl:Class .

:TermsAndConditionsEntity
        a                owl:Class ;
        rdfs:comment     "Represents the Terms and Conditions entity." ;
        rdfs:label       "Terms and Conditions Entity" ;
        rdfs:seeAlso     :TermsAndConditions ;
        rdfs:subClassOf  <http://purl.org/net/p-plan#Entity> .

:ConsentArchivalStep  a   owl:Class ;
        rdfs:comment      "ConsentArchivalStep archives acquired consent to form a record of the consent given by the user."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#DemonstratingConsent> ;
        rdfs:label        "Consent Archival Step"@en ;
        rdfs:seeAlso      :ArchiveConsentActivity ;
        rdfs:subClassOf   :ConsentStep .

:HandleRightOfErasure
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right of erasure." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightOfErasure> ;
        rdfs:label        "Handle Right of Erasure" ;
        rdfs:subClassOf   :Process .

:involvesAgent  a   owl:ObjectProperty ;
        rdfs:range  <http://www.w3.org/ns/prov#Agent> .

:ImpactAssessment  a      owl:Class ;
        rdfs:comment      "Represents the process or collection of steps representing the Impact Assessment." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ImpactAssessment> ;
        rdfs:label        "Impact Assessment" ;
        rdfs:subClassOf   :Process .

:NotifyDPA  a             owl:Class ;
        rdfs:comment      "Step that notifies the Data Protection Authorities of a data breach." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ReportDataBreachToDPAWithin72Hours> ;
        rdfs:label        "Notify Data Protection Authority" ;
        rdfs:seeAlso      :NotifyDPAActivity ;
        rdfs:subClassOf   :DataBreachStep .

:DeAnonymised  a      owl:NamedIndividual ;
        rdfs:comment  "DeAnonymised represents the Anonymisation level where the data is completely de-anonymised and contains directly accessible personally identifiable information." ;
        rdfs:label    "DeAnonymised" .

<http://purl.org/dc/terms/created>
        a       owl:AnnotationProperty .

:HandleRightOfDataPortability
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right of data portability." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightOfDataPortability> ;
        rdfs:label        "Handle Right of Data Portability" ;
        rdfs:subClassOf   :Process .

:CrossBorderDataTransfer
        a                 owl:Class ;
        rdfs:comment      "Reflects cross-border transfer of data" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#CrossBorderTransfer> ;
        rdfs:label        "Cross-border Data Transfer" ;
        rdfs:seeAlso      :CrossBorderTransferActivity ;
        rdfs:subClassOf   :DataStep .

:HandleRightToObjectDirectMarketing
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to object to direct marketing." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightToObjectForDirectMarketting> ;
        rdfs:label        "Handle Right to Object to Direct Marketing" ;
        rdfs:subClassOf   :Process .

<http://purl.org/vocab/vann/preferredNamespacePrefix>
        a       owl:AnnotationProperty .

:Controller  a            owl:Class ;
        rdfs:comment      "A ThirdPartyDataController is a Third Party entity that acts as a Data Controller"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#Controller> ;
        rdfs:label        "Controller"@en ;
        rdfs:subClassOf   :ThirdParty .

<http://purl.org/net/p-plan#isInputVarOf>
        a       owl:ObjectProperty .

:ArchiveConsentActivity
        a                owl:Class ;
        rdfs:comment     "An activity that archives given/acquired consent for storage." ;
        rdfs:label       "Archive Consent Activity" ;
        rdfs:seeAlso     :ConsentArchivalStep ;
        rdfs:subClassOf  :ConsentActivity .

:Processor  a            owl:Class ;
        rdfs:comment     "A ThirdPartyDataProcessor is a Third Party entity that acts as a Data Processor"@en ;
        rdfs:label       "Processor"@en ;
        rdfs:label       <https://w3id.org/GDPRtEXT#Processor> ;
        rdfs:subClassOf  :ThirdParty .

<https://w3id.org/GDPRov>
        a                owl:Ontology ;
        rdfs:comment     "GDPRov is an ontology for expressing provenance metadata in the context of the General Data Protection Regulation (GDPR) and its compliance. It extends PROV-O and P-Plan. PROV-O is the ontology based on the PROV model, a W3C recommendation, while P-Plan is an extension of PROV-O. PROV is used to define terms or 'instances' of what has happened in the past, while P-Plan is used to define the abstract model or 'Plan' of things to happen. GDPRov uses P-Plan to create a template/model/plan as an abstract or model representation of a system which is then recorded using PROV-O instances to show something has happened. The aim of the ontology is to enable representation of consent and personal data lifecycles using terms relevant to GDPR and to facilitate expression of this information towards documentation related to compliance." ;
        <http://purl.org/dc/terms/abstract>
                "The General Data Protection Regulation (GDPR) is an European law governing the use of consent and personal data. Some of its obligations involve concepts related to the lifecycles of consent and personal data. Such obligations are concerned with how the collection, use, processing, sharing, and storing of consent and personal data takes place and provides the motivation for a form of documentation that can demonstrate the required information towards compliance. GDPRov is an OWL2 ontology for representing this information as provenance metadata using terms relevant to the GDPR. It extends PROV-O and P-Plan to represent the lifecyles as an abstract model of how things should happen or will happen (future) as well as instance of what has happened (past). The ontology is being developed as part of contributions towards PhD research by its primary author." ;
        <http://purl.org/dc/terms/created>
                "2017-08-01"^^xsd:date ;
        <http://purl.org/dc/terms/creator>
                "http://purl.org/adaptcentre/people/dave_lewis"^^xsd:anyURI , "http://purl.org/adaptcentre/people/harshvardhan_pandit"^^xsd:anyURI ;
        <http://purl.org/dc/terms/description>
                "GDPRov is an OWL2 ontology to express provenance metadata of consent and data lifecycles towards documenting compliance for GDPR." ;
        <http://purl.org/dc/terms/license>
                "https://creativecommons.org/licenses/by/4.0/" ;
        <http://purl.org/dc/terms/modified>
                "2018-04-06" ;
        <http://purl.org/dc/terms/title>
                "The GDPR Provenance ontology" ;
        <http://purl.org/vocab/vann/preferredNamespacePrefix>
                "gdprov" ;
        <http://purl.org/vocab/vann/preferredNamespaceUri>
                "https://w3id.org/GDPRov#"^^xsd:anyURI ;
        owl:imports      <http://purl.org/net/p-plan#> , <http://www.w3.org/ns/prov-o-20130430> ;
        owl:versionIRI   "https://openscience.adaptcentre.ie/ontologies/gdprov/v/gdprov.0.7.owl" ;
        owl:versionIRI   <https://openscience.adaptcentre.ie/ontologies/gdprov/v/gdprov_v0.7.owl> ;
        owl:versionInfo  "0.7" .

:UserIdentifierEntity
        a                owl:Class ;
        rdfs:comment     "Is an entity acting as the user identifier. Or contains an identifier." ;
        rdfs:label       "User Identifier Entity" ;
        rdfs:seeAlso     :UserIdentifier ;
        rdfs:subClassOf  :PersonalDataEntity .

<http://purl.org/net/p-plan#Entity>
        a       owl:Class .

:Data   a                 owl:Class ;
        rdfs:comment      "Represents class of data collected or generated through various activities"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#Data> ;
        rdfs:label        "Data"@en ;
        rdfs:seeAlso      :DataEntity ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Variable> ;
        owl:disjointWith  :TermsAndConditions .

:HandleDataBreachProcess
        a                 owl:Class ;
        rdfs:comment      "A process that defines the actions that should be undertaken in event of a data breach" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#DataBreach> ;
        rdfs:label        "HandleDataBreachProcess" ;
        rdfs:subClassOf   :Process .

:DataStorageActivity  a   owl:Class ;
        rdfs:comment      "Is an activity that stores data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#StoreData> ;
        rdfs:label        "Data Storage Activity" ;
        rdfs:seeAlso      :DataStorageStep ;
        rdfs:subClassOf   :DataActivity .

:NotifyDataSubjectActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that notifies data subjects about data breach" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#NotifyDataSubjectOfBreach> ;
        rdfs:label        "Notify Data Subject Activity" ;
        rdfs:seeAlso      :NotifyDataSubject ;
        rdfs:subClassOf   :DataBreachActivity .

:DataSharingStep  a       owl:Class ;
        rdfs:comment      "DataSharingStep shares data with another agent/organisation. These may be internal or external entities."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ShareDataWithThirdParty> ;
        rdfs:label        "Data Sharing Step"@en ;
        rdfs:seeAlso      :DataSharingActivity ;
        rdfs:subClassOf   :DataStep .

<http://purl.org/vocab/vann/preferredNamespaceUri>
        a       owl:AnnotationProperty .

:isDataCollectedByStep
        a                   owl:ObjectProperty ;
        rdfs:label          "isDataCollectedByStep" ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isOutputVarOf> .

:DataBreachStep  a        owl:Class ;
        rdfs:comment      "Step representing an action associated with data breach." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ReportDataBreach> ;
        rdfs:label        "Data Breach Step" ;
        rdfs:seeAlso      :DataBreachActivity ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Step> .

:SubProcessor  a          owl:Class ;
        rdfs:comment      "A Processor appointed under or by another Processor is a Sub-Processor." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#SubProcessor> ;
        rdfs:label        "Sub-Processor" ;
        rdfs:subClassOf   :Processor .

:DirectMarketing  a       owl:Class ;
        rdfs:comment      "Direct Marketing where the marketing is done directly to the data subject." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#DirectMarketing> ;
        rdfs:label        "Direct Marketing" ;
        rdfs:subClassOf   :Marketing .

<http://purl.org/dc/terms/abstract>
        a       owl:AnnotationProperty .

:NotifyController  a      owl:Class ;
        rdfs:comment      "Step that notifies the controller of data breach." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ReportDataBreachToController> ;
        rdfs:label        "Notify Controller" ;
        rdfs:seeAlso      :NotifyControllerActivity ;
        rdfs:subClassOf   :DataBreachStep .

:ProcessorRepresentative
        a                 owl:Class ;
        rdfs:comment      "A representative of the Processor." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ProcessorRepresentative> ;
        rdfs:label        "Processor Representative" ;
        rdfs:subClassOf   <http://www.w3.org/ns/prov#Agent> .

:AnonymisedData  a        owl:Class ;
        rdfs:comment      "Represents data that has been Anonymised at some level reflected by the hasAnonymityLevel object property" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#PseudoAnonymousData> , <https://w3id.org/GDPRtEXT#AnonymousData> ;
        rdfs:label        "AnonymisedData" ;
        rdfs:seeAlso      :AnonymisedDataEntity ;
        rdfs:subClassOf   :PersonalData ;
        rdfs:subClassOf   [ a                   owl:Restriction ;
                            owl:onProperty      :hasAnonymityLevel ;
                            owl:someValuesFrom  :AnonymityLevel
                          ] .

:AppointProcessor  a      owl:Class ;
        rdfs:comment      "Reflects the process(es) used to appoint processors" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#AppointmentOfProcessors> ;
        rdfs:label        "Appoint Processor" ;
        rdfs:subClassOf   :Process .

:sharesData  a              owl:ObjectProperty ;
        rdfs:comment        "Indicates sharing of Data through a DataStep" ;
        rdfs:domain         :DataSharingStep ;
        rdfs:label          "sharesData" ;
        rdfs:range          :Data ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasInputVar> ;
        owl:inverseOf       :wasSharedBy .

:generatesAnonymisedData
        a                   owl:ObjectProperty ;
        rdfs:comment        "Indicates that an DataAnonymisationStep transforms a Data object into AnonymisedData" ;
        rdfs:domain         :DataAnonymisationStep ;
        rdfs:label          "generatesAnonymisedData" ;
        rdfs:range          :AnonymisedData ;
        rdfs:subPropertyOf  :generatesData ;
        owl:inverseOf       :isAnonymisedByStep .

:DataBreachActivity  a    owl:Class ;
        rdfs:comment      "Is an activity dealing with data breach." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ReportDataBreach> ;
        rdfs:label        "Data Breach Activity" ;
        rdfs:seeAlso      :DataBreachStep ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Activity> .

:DataStepWithoutProvenance
        a                owl:Class ;
        rdfs:label       "Data Step without Provenance" ;
        rdfs:subClassOf  :DataStep .

:wasSharedBy  a             owl:ObjectProperty ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isInputVarOf> .

:Process  a              owl:Class ;
        rdfs:comment     "A Process describes a 'Plan' of action for carrying out a particular activity that uses or is related to Data or Consent"@en ;
        rdfs:label       "Process"@en ;
        rdfs:subClassOf  <http://purl.org/net/p-plan#Plan> .

:hasLegalBasis  a   owl:ObjectProperty ;
        rdfs:label  "hasLegalBasis"^^rdfs:Literal ;
        rdfs:range  <https://w3id.org/GDPRtEXT#LawfulBasisForProcessing> .

:isGeneratedByStep  a       owl:ObjectProperty ;
        rdfs:label          "isGeneratedByStep" ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isOutputVarOf> .

<http://purl.org/dc/terms/title>
        a       owl:AnnotationProperty .

:HandleRightToRestrictProcessing
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to restrict processing." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightToRestrictProcessing> ;
        rdfs:label        "Handle Right to restrict Processing" ;
        rdfs:subClassOf   :Process .

:DataTransferActivity
        a                owl:Class ;
        rdfs:label       "Data Transfer Activity" ;
        rdfs:subClassOf  :DataActivity .

:ModifyConsentActivity
        a                owl:Class ;
        rdfs:comment     "Is an activity that modifies given consent." ;
        rdfs:label       "Modify Consent Activity" ;
        rdfs:seeAlso     :ConsentModificationStep ;
        rdfs:subClassOf  :ConsentActivity .

:RectifyDataActivity  a  owl:Class ;
        rdfs:comment     "Is an activity that recitifies data." ;
        rdfs:label       "Rectify Data Activity" ;
        rdfs:seeAlso     :RectifyData ;
        rdfs:subClassOf  :DataActivity .

:AcquireConsentActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that acquires consent." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ObtainingConsent> ;
        rdfs:label        "Acquire Consent Activity" ;
        rdfs:seeAlso      :ConsentAcquisitionStep ;
        rdfs:subClassOf   :ConsentActivity .

:DataDeletionStep  a      owl:Class ;
        rdfs:comment      "DataDeletionStep deletes data from within the system;\nThe deletion is expressed as prov:invalidated over the dataset."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#EraseData> ;
        rdfs:label        "Data Deletion Step"@en ;
        rdfs:seeAlso      :DataDeletionActivity ;
        rdfs:subClassOf   :DataStep .

:DataErasureProcess  a    owl:Class ;
        rdfs:comment      "A DataErasureProcess is responsible for handling the data erasure of a data subject."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#EraseData> ;
        rdfs:label        "Data Erasure Process"@en ;
        rdfs:subClassOf   :Process .

:DataStorageStep  a       owl:Class ;
        rdfs:comment      "DataStorageStep stores data within the system"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#StoreData> ;
        rdfs:label        "Data Storage Step"@en ;
        rdfs:seeAlso      :DataStorageActivity ;
        rdfs:subClassOf   :DataStep .

:PseudoOrganisationalAnonymised
        a             owl:NamedIndividual ;
        rdfs:comment  "PseudoOrganisationalAnonymised represents the Anonymisation level where the data is anonymised but cannot be de-anonymised without additional data which is accessible to the data-holding organisation to recreate the de-anonymised information." ;
        rdfs:label    "PseudoOrganisationalOrganised" .

:archivesConsentAs  a       owl:ObjectProperty ;
        rdfs:comment        "Archives the consent into some entity" ;
        rdfs:domain         :ConsentArchivalStep ;
        rdfs:label          "archives consent as" ;
        rdfs:range          :ConsentAgreement ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasOutputVar> .

<http://purl.org/net/p-plan#Activity>
        a       owl:Class .

:isAnonymisedByStep  a      owl:ObjectProperty ;
        rdfs:label          "isAnonymisedByStep" ;
        rdfs:subPropertyOf  :isDataGeneratedBy .

:HandleRightToNoAutomatedProcessing
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to not be processed automatically." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightToNotBeEvaluatedThroughAutomatedProcessing> ;
        rdfs:label        "Handle Right to not be evaluated through Automated Processing" ;
        rdfs:subClassOf   :Process .

:isJustifiedUsingConsentAgreement
        a                   owl:ObjectProperty ;
        rdfs:comment        "justifies use of data by step through specified consent agreement" ;
        rdfs:domain         :DataStep ;
        rdfs:label          "isJustifiedUsingConsentAgreement" ;
        rdfs:range          :ConsentAgreement ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasInputVar> .

:DataTransformationActivity
        a                owl:Class ;
        rdfs:comment     "Is an activity that transforms data." ;
        rdfs:label       "Data Transformation Activity" ;
        rdfs:seeAlso     :DataTransformationStep ;
        rdfs:subClassOf  :DataActivity .

:DataUsageStep  a         owl:Class ;
        rdfs:comment      "A DataUsageStep is a DataStep that uses existing data present within the system"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#Processing> ;
        rdfs:label        "Data Usage Step"@en ;
        rdfs:seeAlso      :DataUsageActivity ;
        rdfs:subClassOf   :DataStep .

:wasSharedWithThirdParty
        a                   owl:ObjectProperty ;
        rdfs:domain         :Data ;
        rdfs:range          :ThirdParty ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isInputVarOf> .

:isUsedByStep  a            owl:ObjectProperty ;
        rdfs:label          "isUsedByStep" ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isInputVarOf> ;
        owl:inverseOf       :usesData .

<http://purl.org/dc/terms/modified>
        a       owl:AnnotationProperty .

<http://purl.org/net/p-plan#isOutputVarOf>
        a       owl:ObjectProperty .

:anonymityLevel  a      owl:ObjectProperty ;
        rdfs:domain     :DataEntity ;
        rdfs:label      "anonymity level" ;
        rdfs:range      :AnonymityLevel ;
        owl:deprecated  true .

:hasAnonymityLevel  a  owl:ObjectProperty ;
        rdfs:comment  "Indicates the anonymity level of an AnonymisedData object using instances of the AnonymityLevel class" ;
        rdfs:domain   :PersonalData ;
        rdfs:label    "hasAnonymityLevel" ;
        rdfs:range    :AnonymityLevel .

:generatesData  a           owl:ObjectProperty ;
        rdfs:comment        "produces data" ;
        rdfs:domain         :DataStep ;
        rdfs:label          "generatesData" ;
        rdfs:range          :Data ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasOutputVar> ;
        owl:inverseOf       :isDataGeneratedBy .

:ConsentWithdrawalStep
        a                 owl:Class ;
        rdfs:comment      "ConsentWithdrawalStep deals with withdrawal of consent"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#WithdrawingConsent> , <https://w3id.org/GDPRtEXT#CanBeWithdrawnEasilyConsentObligation> ;
        rdfs:label        "Consent Withdrawal Step"@en ;
        rdfs:seeAlso      :WithdrawConsentActivity ;
        rdfs:subClassOf   :ConsentModificationStep .

<http://purl.org/dc/terms/creator>
        a       owl:AnnotationProperty .

:ProvideCopyOfPersonalData
        a                 owl:Class ;
        rdfs:comment      "A step that provides the data subject with a copy of their personal data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ProvideCopyOfPersonalData> ;
        rdfs:label        "Provide copy of Personal Data" ;
        rdfs:subClassOf   :DataStep .

:AnonymisedDataEntity
        a                 owl:Class ;
        rdfs:comment      "Is an entity where personal data has been anonymised to some extent." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#PseudoAnonymousData> , <https://w3id.org/GDPRtEXT#AnonymousData> ;
        rdfs:label        "Anonymised Data Entity" ;
        rdfs:seeAlso      :AnonymisedData ;
        rdfs:subClassOf   :PersonalDataEntity .

:usesConsentAgreement
        a                   owl:ObjectProperty ;
        rdfs:comment        "uses Consent Agreement entity" ;
        rdfs:domain         :ConsentStep ;
        rdfs:label          "uses Consent Agreement" ;
        rdfs:range          :ConsentAgreement ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasInputVar> .

:Marketing  a             owl:Class ;
        rdfs:comment      "Marketing as a process or collection of steps." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#Marketing> ;
        rdfs:label        "Marketing" ;
        rdfs:subClassOf   :Process .

:DataUsageActivity  a     owl:Class ;
        rdfs:comment      "Is an activity that uses data. Can also be termed as 'Processing' of data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#UseData> ;
        rdfs:label        "Data Usage Activity" ;
        rdfs:seeAlso      :DataUsageStep ;
        rdfs:subClassOf   :DataActivity .

:NotifyDPAActivity  a     owl:Class ;
        rdfs:comment      "Is an activity that notifies data protection authorities about data breach" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ReportDataBreachToDPAWithin72Hours> ;
        rdfs:label        "Notify DPA Activity" ;
        rdfs:seeAlso      :NotifyDPA ;
        rdfs:subClassOf   :DataBreachActivity .

:DataAnonymisationStep
        a                owl:Class ;
        rdfs:comment     "DataAnonymisationStep anonymises data by transforming it from one form to another along the anonymisation chain.\nAnonymisation can be represented as a spectrum going from raw user data to pseudo-anonymised data that can be de-anonymised by the same agent/organisation to pseudo-anonymous data that cannot be deanonymised internally, but may be done by external agents who have access to other data, and finally to completely anonymised data."@en ;
        rdfs:label       "Data Anonymisation Step"@en ;
        rdfs:seeAlso     :AnonymisationActivity ;
        rdfs:subClassOf  :DataTransformationStep .

<http://purl.org/net/p-plan#hasInputVar>
        a       owl:ObjectProperty .

:isPartOfProcess  a         owl:ObjectProperty ;
        rdfs:label          "isPartOfProcess"^^rdfs:Literal ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isStepOfPlan> .

:SensitiveDataEntity  a   owl:Class ;
        rdfs:comment      "Is an entity containing sensitive personal information." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#SensitivePersonalData> ;
        rdfs:label        "Sensitive Data Entity" ;
        rdfs:seeAlso      :SensitiveData ;
        rdfs:subClassOf   :PersonalDataEntity .

:DataArchivalActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that archives data. Archival is transformation of data into some form for storage." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ArchiveData> ;
        rdfs:label        "Data Archival Activity" ;
        rdfs:seeAlso      :DataArchivalStep ;
        rdfs:subClassOf   :DataTransformationActivity , :DataStorageActivity .

<http://purl.org/dc/terms/description>
        a       owl:AnnotationProperty .

:DataDeanonymisationStep
        a                owl:Class ;
        rdfs:comment     "DataDeanonymisationStep deanonymises data by transforming it from one form to another along the anonymisation chain."@en ;
        rdfs:label       "Data Deanonymisation Step"@en ;
        rdfs:seeAlso     :DeAnonymisationActivity ;
        rdfs:subClassOf  :DataTransformationStep .

<https://w3id.org/GDPRtEXT#LawfulBasisForProcessing>
        a       owl:Class .

:CrossBorderTransferActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that transfer data across borders (as defined in the GDPR)." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#CrossBorderTransfer> ;
        rdfs:label        "Cross Border Transfer Activity" ;
        rdfs:seeAlso      :CrossBorderDataTransfer ;
        rdfs:subClassOf   :DataActivity .

:JointController  a       owl:Class ;
        rdfs:comment      "A Joint Controller is where two or more controllers jointly determine the purposes and means of processing." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#JointController> ;
        rdfs:label        "Joint Controller(s)" ;
        rdfs:subClassOf   :Controller .

:PersonalData  a          owl:Class ;
        rdfs:comment      "PersonalData is any data pertaining to the user which can contain personally identifiable information or a data set generated by the system using personally identifiable information acquired through direct or indirect means"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#PersonalData> ;
        rdfs:label        "PersonalData"@en ;
        rdfs:seeAlso      :PersonalDataEntity ;
        rdfs:subClassOf   :Data .

:DataRectificationProcess
        a                 owl:Class ;
        rdfs:comment      "A DataRectificationProcess describes the process of data rectification, which is the correction of data already present within the system"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RectifyData> ;
        rdfs:label        "Data Rectification Process"@en ;
        rdfs:subClassOf   :Process .

:isConsentAgreementTemplateForStep
        a                   owl:ObjectProperty ;
        rdfs:label          "isConsentAgreementTemplateForStep" ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isInputVarOf> ;
        owl:inverseOf       :usesConsentAgreementTemplate .

:ConsentAcquisitionStep
        a                 owl:Class ;
        rdfs:comment      "ConsentAcquisitionStep deals with acquiring consent from the user. It uses Terms and Conditions along with the appropriate Consent Model as the basis of obtaining consent from the user. The output of this step is the consent object agreed upon by the user."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ObtainingConsent> ;
        rdfs:label        "Consent Acquisition Step"@en ;
        rdfs:seeAlso      :AcquireConsentActivity ;
        rdfs:subClassOf   :ConsentStep .

:collectsConsentFromAgent
        a                   owl:ObjectProperty ;
        rdfs:domain         :ConsentAcquisitionStep ;
        rdfs:range          <http://www.w3.org/ns/prov#Agent> ;
        rdfs:subPropertyOf  :involvesAgent .

:UserInputStep  a        owl:Class ;
        rdfs:label       "User Input Step" ;
        rdfs:subClassOf  :UserInteractionStep .

:sharesDataWith  a   owl:ObjectProperty ;
        rdfs:domain  :DataSharingStep ;
        rdfs:label   "sharesDataWith" ;
        rdfs:range   <http://www.w3.org/ns/prov#Agent> .

:PersonalDataEntity  a    owl:Class ;
        rdfs:comment      "Represents a personal data entity." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#PersonalData> ;
        rdfs:label        "Personal Data Entity" ;
        rdfs:seeAlso      :PersonalData ;
        rdfs:subClassOf   :DataEntity .

:isTermsAndConditionsForStep
        a                   owl:ObjectProperty ;
        rdfs:label          "isTermsAndConditionsForStep" ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isInputVarOf> ;
        owl:inverseOf       :usesTermsAndConditions .

:GivenConsent  a          owl:Class ;
        rdfs:comment      "Represents the given consent by the data subject." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#GivenConsent> ;
        rdfs:label        "Given Consent" ;
        rdfs:seeAlso      :ConsentAgreement ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Entity> .

:ConsentWithdrawalProcess
        a                 owl:Class ;
        rdfs:comment      "A ConsentWithdrawalProcess deals with the withdrawal of consent by the user and the corresponding activity carried out within the system"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#WithdrawingConsent> ;
        rdfs:label        "Consent Withdrawal Process"@en ;
        rdfs:seeAlso      :ConsentWithdrawalStep ;
        rdfs:subClassOf   :Process .

:collectsDataFromAgent
        a                   owl:ObjectProperty ;
        rdfs:domain         :DataCollectionStep ;
        rdfs:range          <http://www.w3.org/ns/prov#Agent> ;
        rdfs:subPropertyOf  :involvesAgent .

:RectifyData  a           owl:Class ;
        rdfs:comment      "Rectifies existing data" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RectifyData> ;
        rdfs:label        "Rectify Data" ;
        rdfs:seeAlso      :RectifyDataActivity ;
        rdfs:subClassOf   :DataStep .

:DataEntity  a            owl:Class ;
        rdfs:comment      "Represents a data entity." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#Data> ;
        rdfs:label        "Data Entity" ;
        rdfs:seeAlso      :Data ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Entity> .

:AutomatedStep  a        owl:Class ;
        rdfs:label       "AutomatedStep"^^rdfs:Literal ;
        rdfs:subClassOf  <http://purl.org/net/p-plan#Step> .

:HandleSAR  a            owl:Class ;
        rdfs:label       "HandleSAR"^^rdfs:Literal ;
        rdfs:subClassOf  :Process .

:ConsentActivity  a       owl:Class ;
        rdfs:comment      "Is an activity dealing with consent." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ConsentActivity> ;
        rdfs:label        "Consent Activity" ;
        rdfs:seeAlso      :ConsentStep ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Activity> .

:usesConsentAgreementTemplate
        a                   owl:ObjectProperty ;
        rdfs:comment        "links a Consent Acquisition Step with the Consent Agreement Template used to acquire consent" ;
        rdfs:domain         :ConsentAcquisitionStep ;
        rdfs:label          "usesConsentAgreementTemplate" ;
        rdfs:range          :ConsentAgreementTemplate ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasInputVar> .

:invalidatesData  a  owl:ObjectProperty ;
        rdfs:domain  :DataDeletionActivity ;
        rdfs:range   :Data .

:hasSharedDataWith  a  owl:ObjectProperty ;
        rdfs:domain  :DataSharingActivity ;
        rdfs:label   "hasSharedDataWith"^^rdfs:Literal ;
        rdfs:range   <http://www.w3.org/ns/prov#Agent> .

:ThirdParty  a            owl:Class ;
        rdfs:comment      "A ThirdParty is any external entitiy associated with some internal activity"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#Entity> ;
        rdfs:label        "ThirdParty"@en ;
        rdfs:subClassOf   <http://www.w3.org/ns/prov#Agent> .

:WithdrawConsentActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that withdraws given consent. Can also term it so as to depict withdrawal as a modification of consent." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#WithdrawingConsent> ;
        rdfs:label        "Withdraw Consent Activity" ;
        rdfs:seeAlso      :ConsentWithdrawalStep ;
        rdfs:subClassOf   :ModifyConsentActivity .

:DataBreachRecord  a      owl:Class ;
        rdfs:comment      "A record of a data breach." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#MaintainRecordOfBreach> ;
        rdfs:label        "Data Breach Record" ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Variable> .

:DPO    a                 owl:Class ;
        rdfs:comment      "The Data Protection Officer appointed to an organisation." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#DPO> ;
        rdfs:label        "Data Protection Officer (DPO)" ;
        rdfs:subClassOf   <http://www.w3.org/ns/prov#Agent> .

:DataArchivalStep  a      owl:Class ;
        rdfs:comment      "DataArchivalStep archives data by transforming it and storing it"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ArchiveData> ;
        rdfs:label        "Data Archival Step"@en ;
        rdfs:seeAlso      :DataArchivalActivity ;
        rdfs:subClassOf   :DataTransformationStep , :DataStorageStep .

:hasLegalJustification
        a               owl:ObjectProperty ;
        rdfs:domain     <http://purl.org/net/p-plan#Activity> ;
        rdfs:label      "has legal justification" ;
        rdfs:range      <https://w3id.org/GDPRtEXT#LawfulBasisForProcessing> ;
        owl:deprecated  true .

:MonitorCompliance  a     owl:Class ;
        rdfs:comment      "The process of monitoring compliance as mandated by the GDPR." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#MonitorCompliance> ;
        rdfs:label        "Monitor Compliance" ;
        rdfs:subClassOf   :Process .

:HandleRightToBasicInfoAboutProcessing
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to basic information about processing." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightToBasicInformationAboutProcessing> ;
        rdfs:label        "Handle Right to basic information about Processing" ;
        rdfs:subClassOf   :Process .

:transferredDataToRegion
        a            owl:ObjectProperty ;
        rdfs:domain  :CrossBorderTransferActivity ;
        rdfs:label   "transferredDataToRegion"^^rdfs:Literal .

:HandleRightToRectification
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to rectification of personal data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightToRectification> ;
        rdfs:label        "Handle Right to Rectification" ;
        rdfs:subClassOf   :Process .

:DataTransformationStep
        a                owl:Class ;
        rdfs:comment     "DataTransformationStep transforms data from one form into another."@en ;
        rdfs:label       "Data Transformation Step"@en ;
        rdfs:seeAlso     :DataTransformationActivity ;
        rdfs:subClassOf  :DataStep .

:generatesConsentAgreement
        a                   owl:ObjectProperty ;
        rdfs:comment        "Generates ConsentAgreement which is a the consent granted by the user based on the ConsentAgreementTemplate through a ConsentAcquisitionStep" ;
        rdfs:domain         :ConsentStep ;
        rdfs:label          "generatesConsentAgreement" ;
        rdfs:range          :ConsentAgreement ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasOutputVar> ;
        owl:inverseOf       :isGeneratedByStep .

:HandleRightToObjectProcessing
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to object to processing." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightToObjectToProcessing> ;
        rdfs:label        "Handle Right to Object to Processing" ;
        rdfs:subClassOf   :Process .

:HandleRightToAccessPersonalData
        a                 owl:Class ;
        rdfs:comment      "The process or series of steps that handle the right to access personal data." ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#RightOfErasure> ;
        rdfs:label        "Handle Right to access Personal Data" ;
        rdfs:subClassOf   :Process .

:GivenConsentTemplate
        a                owl:Class ;
        rdfs:comment     "Is the template used to obtain the given consent." ;
        rdfs:label       "Given Consent Template" ;
        rdfs:seeAlso     :ConsentAgreementTemplate ;
        rdfs:subClassOf  <http://purl.org/net/p-plan#Entity> .

:isDataGeneratedBy  a       owl:ObjectProperty ;
        rdfs:label          "isDataGeneratedByStep" ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#isOutputVarOf> .

:transfersDataToRegion
        a            owl:ObjectProperty ;
        rdfs:domain  :CrossBorderDataTransfer ;
        rdfs:label   "transfersDataToRegion"^^rdfs:Literal .

:DataAccessProcess  a     owl:Class ;
        rdfs:comment      "A DataAccessProcess corresponds to the request made by an user for access to their data within the system. This process is responsible for handling the request process and providing the appropriate data to the end user."@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ProvideCopyOfPersonalData> ;
        rdfs:label        "Data Access Process"@en ;
        rdfs:subClassOf   :Process .

:ConsentStep  a           owl:Class ;
        rdfs:comment      "A ConsentStep acts/interacts with/uses Consent"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ConsentActivity> ;
        rdfs:label        "Consent Step"@en ;
        rdfs:seeAlso      :ConsentActivity ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Step> .

:collectsData  a            owl:ObjectProperty ;
        rdfs:comment        "Links data obtained (collected) by the step/activity that acquired it" ;
        rdfs:domain         :DataStep ;
        rdfs:label          "collectsData" ;
        rdfs:range          :Data ;
        rdfs:subPropertyOf  <http://purl.org/net/p-plan#hasOutputVar> ;
        owl:inverseOf       :isDataCollectedByStep .

owl:versionIRI  a  owl:AnnotationProperty .

:AnonymityLevel  a        owl:Class ;
        rdfs:comment      "Provides a way to express the Anonymity Level of AnonymisedData objects through the object property hasAnonymityLevel" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#PseudoAnonymousData> , <https://w3id.org/GDPRtEXT#AnonymousData> ;
        rdfs:label        "AnonymityLevel" .

:NotifyControllerActivity
        a                 owl:Class ;
        rdfs:comment      "Is an activity that notifies controller about data breach" ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#ReportDataBreachToController> ;
        rdfs:label        "Notify Controller Activity" ;
        rdfs:seeAlso      :NotifyController ;
        rdfs:subClassOf   :DataBreachActivity .

:DataStep  a              owl:Class ;
        rdfs:comment      "A DataStep deals with data"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#DataActivity> ;
        rdfs:label        "Data Step"@en ;
        rdfs:seeAlso      :DataActivity ;
        rdfs:subClassOf   <http://purl.org/net/p-plan#Step> .

<http://purl.org/net/p-plan#isStepOfPlan>
        a       owl:ObjectProperty .

:DataCollectionStep  a    owl:Class ;
        rdfs:comment      "DataCollectionStep collects data from the user"@en ;
        rdfs:isDefinedBy  <https://w3id.org/GDPRtEXT#CollectionOfPersonalData> ;
        rdfs:label        "Data Collection Step"@en ;
        rdfs:seeAlso      :DataCollectionActivity ;
        rdfs:subClassOf   :DataStep .
