# baseURI: http://linked.data.gov.au/def/project
# imports: http://purl.org/dc/terms/
# imports: http://www.w3.org/2004/02/skos/core
# imports: http://www.w3.org/ns/prov
# prefix: proj
@prefix dcterms: .
@prefix owl: .
@prefix proj: .
@prefix proji: .
@prefix prov: .
@prefix rdf: .
@prefix rdfs: .
@prefix schema: .
@prefix sdo: .
@prefix skos: .
@prefix voaf: .
@prefix xsd: .
a owl:Ontology ;
dcterms:contributor "Peter BRENTON, CSIRO" ;
dcterms:created "2017-08-14"^^xsd:date ;
dcterms:creator ;
dcterms:description """
The PROJECT ontology is designed to enable publication of information describing projects, including research projects. It is not designed to support project management, though sub-activities are included. As far as possible PROJECT is intended to be domain-neutral, and it is expected that domains and applications will specialize or extend this ontology for more specific purposes.
The ontology gives terms to support the representation of:
- project planning, funding, goals
- project stakeholders and relationships
- project activities and timeline
One specialization is included - the **Research Project** - which has been the subject of several predecessor designs that have informed the design of this ontology.
PROJECT extends the W3C PROV-O ontology. Otherwise, it has no dependencies except for the normal RDF/OWL infrastructure (RDF [rdf11-concepts], RDFS [rdf-schema], OWL [owl2-quick-reference]), Dublin Core [dc-terms] for some ontology metadata, and SKOS [skos-reference] to support some relationships between Role values, and project classification.
A summary of the main classes and relationships in PROJECT is shown in the diagram below, including the key superclass `prov:Activity`.
![summary of PROJECT ontology](../images/Project-overview.png)
Core classes from PROJECT vocabulary.
""" ;
dcterms:license ;
dcterms:modified "2020-04-24"^^xsd:date ;
dcterms:title "A Project ontology" ;
voaf:exampleDataset ;
voaf:extends ;
voaf:reliesOn ;
owl:imports dcterms: ;
owl:imports ;
owl:imports ;
.
proj:FundingAssociation
a owl:Class ;
dcterms:description """
Association to a funder and a sum of money
![Project funding association](../images/Project-funding.png)
""" ;
rdfs:label "Funding association" ;
rdfs:subClassOf prov:Association ;
rdfs:subClassOf [
a owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty prov:agent ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:hasValue proji:Funder ;
owl:onProperty prov:hadRole ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:minCardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:fundsProvided ;
] ;
skos:example """
ex:FA3
rdf:type proj:FundingAssociation ;
rdfs:label \"Level crossing removal project phase 1 funding arrangement\" ;
rdfs:seeAlso ;
proj:fundsProvided [
rdf:type proj:SumOfMoney ;
proj:moneyAmount \"524000000\"^^xsd:decimal ;
proj:moneyCurrency ;
] ;
prov:agent ;
.
""" ;
.
proj:Project
a owl:Class ;
dcterms:description """
A Project is a planned activity with a budget, a sponsor, and a leader.
Project stakeholders are indicated using the `prov:qualifiedAssociation` structure which allows their role to be catpured. Some special stakeholders have specific sub-properties with the roles fixed, including project-leader, project-participant, and project-funder.
Activities within a project are indicated using the `proj:hasSubActivity` (simple) or `proj:subActivityAssociation` properties - the latter allowing the nature of the relationshp to be described as well.
![Project details](../images/project.png)
""" ;
rdfs:label "Project" ;
rdfs:subClassOf prov:Activity ;
rdfs:subClassOf [
a owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:hadBudgetTotal ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:plannedEnd ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:plannedStart ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:minCardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:hadLeader ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:minCardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:hadPlan ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:minCardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:hadSponsor ;
] ;
skos:example """
ex:Project1
rdf:type proj:Project ;
rdfs:label \"Victoria level-crossing removal - phase 1\" ;
proj:hadBudgetTotal [
rdf:type proj:SumOfMoney ;
rdfs:label \"Level crossing removal phase 1 budget\" ;
proj:moneyAmount \"524000000\"^^xsd:decimal ;
proj:moneyCurrency ;
] ;
proj:hadLeader ex:johnholland-kbr ;
proj:hadSponsor ;
proj:hadSubActivity ex:BentleighLevelCrossingRemoval ;
proj:hadSubActivity ex:BurkeRoadLevelCrossingRemoval ;
proj:hadSubActivity ex:McKinnonRoadLevelCrossingRemoval ;
proj:hadSubActivity ex:NorthRoadLevelCrossingRemoval ;
proj:wasFundedThrough [
rdf:type proj:FundingAssociation ;
rdfs:label \"Level crossing removal project phase 1 funding arrangement\" ;
rdfs:seeAlso ;
proj:fundsProvided [
rdf:type proj:SumOfMoney ;
proj:moneyAmount \"524000000\"^^xsd:decimal ;
proj:moneyCurrency ;
] ;
prov:agent ;
] ;
rdfs:label \"Victoria level-crossing removal - phase 1\" ;
proj:plannedEnd \"2017-03-31\"^^xsd:date ;
proj:plannedStart \"2015-10-01\"^^xsd:date ;
prov:atLocation ;
prov:endedAtTime \"2016-10-31T00:00:00\"^^xsd:dateTime ;
prov:startedAtTime \"2015-10-01T00:00:00\"^^xsd:dateTime ;
.
""" ;
.
proj:ResearchProject
a owl:Class ;
dcterms:description """
A research project is a project that has
- one or more PIs who are individual persons, and
- should be classified according to standard research classification, such as the Australian Bureau of Statistics ANZSRC-FOR or NASA's Global Change Master Directory - Science Keywords.
""" ;
rdfs:label "Research Project" ;
rdfs:subClassOf proj:Project ;
rdfs:subClassOf [
a owl:Restriction ;
owl:minCardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:hadFieldOfResearch ;
] ;
skos:example """
ex:Project2
rdf:type proj:Project ;
rdf:type proj:ResearchProject ;
rdfs:label \"Improved management of feral animals in remote tropical Australia\" ;
proj:budgetTotal [
rdf:type proj:SumOfMoney ;
proj:moneyAmount 0 ;
proj:moneyCurrency ;
] ;
proj:hadFieldOfResearch ;
proj:hadPrincipalInvestigator ;
proj:hadSponsor ;
proj:hadSubActivity ex:Aerial ;
proj:wasSubActivityOf ;
rdfs:label \"Improved management of feral animals in remote tropical Australia\" ;
proj:hadObjective \"To develop a robust understanding of the costs and benefits of selected feral animal control programs on reducing impacts to natural and cultural values.\" ;
proj:plannedEnd \"2022-12-31\"^^xsd:date ;
proj:plannedStart \"2012-12-31\"^^xsd:date ;
proj:projectParticipant ;
proj:hadPlan ex:FCY-project-plan ;
proj:wasFundedThrough [
rdf:type proj:FundingAssociation ;
proj:fundsProvided [
rdf:type proj:SumOfMoney ;
proj:moneyAmount 0 ;
proj:moneyCurrency ;
] ;
prov:agent ;
] ;
prov:atLocation ;
prov:generated ;
prov:startedAtTime \"2012-12-31T00:00:00\"^^xsd:dateTime ;
.
""" ;
.
proj:SumOfMoney
a owl:Class ;
dcterms:description "A sum of money, expressed as an amount and a specified currency" ;
rdfs:label "Sum of money" ;
rdfs:subClassOf owl:Thing ;
rdfs:subClassOf [
a owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:moneyAmount ;
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty proj:moneyCurrency ;
] ;
skos:example """
ex:SM4
rdf:type proj:SumOfMoney ;
proj:moneyAmount \"524000000\"^^xsd:decimal ;
proj:moneyCurrency ;
.
""" ;
.
proj:fundingScheme
a owl:AnnotationProperty ;
a owl:ObjectProperty ;
dcterms:description """
Link to description of funding scheme, e.g.
- [European Commission Horizon 2020](https://ec.europa.eu/programmes/horizon2020/)
- [Australian National Collaborative Research Infrastructure Strategy](https://www.education.gov.au/national-collaborative-research-infrastructure-strategy-ncris)
""" ;
rdfs:domain proj:FundingAssociation ;
rdfs:label "pointer to funding-scheme" ;
.
proj:fundsProvided
a owl:ObjectProperty ;
dcterms:description "Link to a sum of money." ;
rdfs:label "funding provided" ;
rdfs:range proj:SumOfMoney ;
.
proj:grantNumber
a owl:AnnotationProperty ;
a owl:DatatypeProperty ;
dcterms:description "The grant or contract number assigned to the funding arrangement by the funder. 'Grant number' is common for research or charitable projects, 'Contract number' in a commercial context." ;
rdfs:domain proj:FundingAssociation ;
rdfs:label "grant or contract number" ;
rdfs:range xsd:string ;
.
proj:hadAreaOfInterest
a owl:AnnotationProperty ;
a owl:ObjectProperty ;
dcterms:description """
Address, place, locality, location, etc
""" ;
rdfs:domain proj:Project ;
rdfs:label "has area of interest" ;
rdfs:range dcterms:Location ;
rdfs:subPropertyOf prov:atLocation ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
.
proj:hadBudgetTotal
a owl:ObjectProperty ;
dcterms:description """
Basic funding arrangements are captured through the `proj:hadSponsor` and `proj:hadBudgetTotal` properties.
More complex arrangements, for example if multiple funders are involved, can be captured through the `proj:wasFundedThrough` property, which links a funding agent with a funding amount in the context of a project.
""" ;
rdfs:domain proj:Project ;
rdfs:label "total project budget" ;
rdfs:range proj:SumOfMoney ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
.
proj:hadFieldOfResearch
a owl:AnnotationProperty ;
a owl:ObjectProperty ;
dcterms:description """
The field of research of the research project.
""" ;
rdfs:domain proj:ResearchProject ;
rdfs:label "field of research" ;
rdfs:range skos:Concept ;
rdfs:subPropertyOf dcterms:subject ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
skos:scopeNote "The value is usually taken from a curated vocabulary, such as [ANZSRC Fields of Research](http://www.abs.gov.au/ausstats/abs@.nsf/0/6BB427AB9696C225CA2574180004463E), [Re3data subjects](http://www.re3data.org/browse/by-subject/), [EDAM Topic](http://edamontology.org/topic_0003) or [Scigraph subjects](https://github.com/springernature/scigraph/wiki)" ;
.
proj:hadLeader
a owl:ObjectProperty ;
dcterms:description """
There are a number of distinctive stakeholders in a project, in particular: a leader who is accountable for the delivery of project outcomes; a sponsor under whose authority the project is undertaken; funders; and project staff or participants.
In some cases it is useful to provide specific details of a participant's role in the project.
PROJECT provides a number of ways to represent the relationships of stakeholders to projects and activities.
The standard role of _leader_ is implemented as a directly named property from an `prov:Activity` to a `prov:Agent`, and _sponsor_ as a directly named property from a `proj:Project` to a `prov:Agent`.
We distinguish one sub-class, the `proj:ResearchProject`, in which the leader(s) is known as a _Principal Investigator_, and which is classified according to its _field of research_.
""" ;
rdfs:label "leader" ;
rdfs:range prov:Person ;
rdfs:subPropertyOf prov:wasAssociatedWith ;
skos:editorialNote """
Equivalent to property-chain prov:qualifiedAssociation-prov:agent with the value of 'role' on the intermediate prov:Association being set to proji:Leader
which might be axiomatized as
owl:propertyChainAxiom (
[
rdf:type owl:ObjectProperty ;
rdfs:range [
rdf:type owl:Class ;
rdfs:subClassOf prov:Association ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:hasValue proji:Leader ;
owl:onProperty prov:hadRole ;
] ;
] ;
rdfs:subPropertyOf prov:qualifiedAssociation ;
]
prov:agent
) ;
""" ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
.
proj:hadObjective
a owl:AnnotationProperty ;
a owl:DatatypeProperty ;
dcterms:description "Textual description of project objective." ;
rdfs:domain proj:Project ;
rdfs:label "project objective" ;
.
proj:hadPlan
a owl:ObjectProperty ;
dcterms:description "The project plan." ;
rdfs:domain proj:Project ;
rdfs:label "Project plan" ;
rdfs:range prov:Plan ;
rdfs:subPropertyOf prov:used ;
skos:editorialNote "A new property is required to associated a plan with a project activity because the domain of `prov:hadPlan` is `prov:Association`." ;
.
proj:hadPrincipalInvestigator
a owl:ObjectProperty ;
dcterms:description """
The person who acts as principal investigator on the research project.
""" ;
rdfs:domain proj:ResearchProject ;
rdfs:label "principal investigator" ;
rdfs:subPropertyOf proj:hadLeader ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
.
proj:hadRelatedActivity
a owl:ObjectProperty ;
dcterms:description """
Link from an activity to a related activity.
""" ;
rdfs:domain prov:Activity ;
rdfs:label "had related activity" ;
rdfs:range prov:ActivityInfluence ;
rdfs:subPropertyOf prov:qualifiedInfluence ;
owl:inverseOf prov:activity ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
skos:editorialNote """
This is more general than `prov:qualifiedCommunication` since it is not predicated on the exchange of an entity.
""" ;
.
proj:hadSponsor
a owl:ObjectProperty ;
dcterms:description """
There are a number of distinctive stakeholders in a project, in particular: a leader who is accountable for the delivery of project outcomes; a sponsor under whose authority the project is undertaken; funders; and project staff or participants.
In some cases it is useful to provide specific details of a participant's role in the project.
PROJECT provides a number of ways to represent the relationships of stakeholders to projects and activities.
Basic funding arrangements are captured through the `proj:hadSponsor` and `proj:hadBudgetTotal` properties.
More complex arrangements, for example if multiple funders are involved, can be captured through the `proj:wasFundedThrough` property, which links a funding agent with a funding amount in the context of a project.
![Project funding association](../images/Project-funding.png)
""" ;
rdfs:domain proj:Project ;
rdfs:label "activity sponsor" ;
rdfs:subPropertyOf prov:wasAssociatedWith ;
skos:editorialNote """
Equivalent to property-chain prov:qualifiedAssociation-prov:agent with the value of 'role' on the intermediate prov:Association being set to proji:Sponsor
which might be axiomatized as
owl:propertyChainAxiom (
[
rdf:type owl:ObjectProperty ;
rdfs:range [
rdf:type owl:Class ;
rdfs:subClassOf prov:Association ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:hasValue proji:Sponsor ;
owl:onProperty prov:hadRole ;
] ;
] ;
rdfs:subPropertyOf prov:qualifiedAssociation ;
]
prov:agent
) ;
""" ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
.
proj:hadSubActivity
a owl:ObjectProperty ;
dcterms:description """
Relationship from an activity to a subsidiary activity.
""" ;
rdfs:domain prov:Activity ;
rdfs:label "has sub-activity" ;
rdfs:range prov:Activity ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
skos:editorialNote "This property is more general than prov:wasInformedBy since it is not predicated on the exchange of an entity. " ;
.
proj:moneyAmount
a owl:DatatypeProperty ;
dcterms:description "Numeric value of a sum of money, which must be scaled by a specified currency to get the actual value" ;
rdfs:domain proj:SumOfMoney ;
rdfs:label "Money amount" ;
rdfs:range xsd:decimal ;
.
proj:moneyCurrency
a owl:ObjectProperty ;
rdfs:domain proj:SumOfMoney ;
rdfs:label "currency of a sum of money" ;
.
proj:plannedEnd
a owl:DatatypeProperty ;
dcterms:description "The date and time at which an activity was planned to end. See also project:plannedStart."@en ;
rdfs:label "planned end-date|time" ;
skos:scopeNote "Usually an xsd:date or xsd:dateTime" ;
.
proj:plannedStart
a owl:DatatypeProperty ;
dcterms:description "The date and time at which an activity was planned to start. See also project:plannedEnd."@en ;
rdfs:label "planned start-date|time" ;
skos:scopeNote "Usually an xsd:date or xsd:dateTime" ;
.
proj:wasFundedThrough
a owl:ObjectProperty ;
dcterms:description """
Basic funding arrangements are captured through the `proj:hadSponsor` and `proj:hadBudgetTotal` properties.
More complex arrangements, for example if multiple funders are involved, can be captured through the `proj:wasFundedThrough` property, which links a funding agent with a funding amount in the context of a project.
![Project funding association](../images/Project-funding.png)
""" ;
rdfs:domain proj:Project ;
rdfs:label "had funding association" ;
rdfs:range proj:FundingAssociation ;
skos:editorialNote """
Sub-property of prov:qualifiedAssociation with the value of 'role' on the intermediate prov:Association being set to proji:Sponsor
which might be axiomatized as
rdfs:subPropertyOf [
rdf:type owl:ObjectProperty ;
rdfs:range [
rdf:type owl:Class ;
rdfs:subClassOf prov:Association ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:hasValue proji:Sponsor ;
owl:onProperty prov:hadRole ;
] ;
] ;
rdfs:subPropertyOf prov:qualifiedAssociation ;
] ;
""" ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
.
proj:wasSubActivityOf
a owl:ObjectProperty ;
dcterms:description """
Relationship from an activity to its parent activity or project.
""" ;
rdfs:label "is sub-activity of" ;
rdfs:subPropertyOf prov:wasInformedBy ;
owl:inverseOf proj:hadSubActivity ;
skos:editorialNote """
The name and label of this property are phrased retrospectively (had, was) which is consistent with PROV-O, but may be used for a contemporary relationship (has, is) while the project is underway.
""" ;
.
proji:Funder
a prov:Role ;
rdfs:label "funding-agent role" ;
skos:broader proji:Sponsor ;
.
proji:Leader
a prov:Role ;
rdfs:label "activity-leader role" ;
skos:broader proji:Participant ;
skos:narrower proji:PrincipalInvestigator ;
.
proji:Participant
a prov:Role ;
rdfs:label "activity-participant role" ;
.
proji:PrincipalInvestigator
a prov:Role ;
rdfs:label "principal-investigator role" ;
skos:broader proji:Leader ;
.
proji:Sponsor
a prov:Role ;
rdfs:label "project-sponsor role" ;
skos:narrower proji:Funder ;
.
proji:SubActivity
a prov:Role ;
rdfs:label "sub-activity" ;
.
prov:Role
rdfs:subClassOf skos:Concept ;
.
prov:agent
dcterms:description "Link to the agent which provided the funds." ;
skos:scopeNote "When used in the context of the sub-class proj:FundingAssociation, the value of prov:agent should identify the agent which provided the funds." ;
.
a sdo:Organization ;
sdo:name "Commonwealth Scientific and Industrial Research Organisation" ;
sdo:url ;
.
a sdo:Person ;
sdo:affiliation ;
sdo:name "Simon J D Cox" ;
sdo:url ;
.