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

@prefix savvi: <http://def.savviuk.org/concepts#> .
@prefix : <http://def.savviuk.org/concepts#> .
@prefix sccm: <http://data.smartcityconceptmodel.com/model/> .
@prefix istanduk: <http://def.istanduk.org/concepts#> .

:
    a owl:Ontology;
    owl:versionInfo "1.0";
    rdfs:label "SAVVI Concept Model"@en;
    rdfs:comment """[SAVVI](http://www.savviuk.org/), standing for ‘a **S**calable **A**pproach to **V**ulnerability **v**ia **I**nteroperability’, is a programme hosted by [Tameside Council](https://www.tameside.gov.uk/) on behalf of the local public sector, and funded by the Ministry of Housing, Communities and Local Government (MHCLG) Local Digital Fund.

SAVVI is proposing the [SAVVI Playbook,](https://coda.io/d/_d_6Lee77c0_/_suzWLz0I) to promote how data can be used to improve ***early identification*** and ***smarter interventions***, for vulnerable people, particularly where no single organisation has access to all the data and insight that can predict who may be at risk, and where no single organisation has all the support services.

SAVVI is proposing Data Standards towards achieving the [SAVVI ambition](https://coda.io/d/_d_6Lee77c0_/_su8rznXe) which includes

* avoid single-use databases that can only tackle one type of vulnerability in a fixed way;
* encourage technology and service suppliers to innovate with modular solutions that can be interconnected and reused;
* unlock access to data
* reuse investments in platforms, tools, processes, trust networks etc
* enable success to be repeated elsewhere without relying on the same products and partners

This Concept Model defines the key concepts that enable data to flow around [the SAVVI Process](https://coda.io/@savvi/welcome/the-savvi-process-192)"""^^<text/markdown> ;
    .                


:Action
    a owl:Class, rdfs:Class;
    rdfs:label "Action"@en;
    rdfs:comment """An action that has been carried out as a part of responding to a NEED."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Event ;
    .
  

:Assessment
    a owl:Class, rdfs:Class;
    rdfs:label "Assessment"@en;
    rdfs:comment """An understanding of NEEDs and circumstances."""^^<text/markdown> ;
    .
  

:Case
    a owl:Class, rdfs:Class;
    rdfs:label "Case"@en;
    rdfs:comment """A container for information established to manage one or more NEEDs for a PERSON or HOUSEHOLD, through which events, evidence, activities, and decisions are recorded and tracked over time in order to achieve an intended OUTCOME."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Case ;
    .
  

:Cohort
    a owl:Class, rdfs:Class;
    rdfs:label "Cohort"@en;
    rdfs:comment """An initial prioritised list of people and households that may have a risk of a VULNERABILITY."""^^<text/markdown> ;
    .
  

:Contact_Event
    a owl:Class, rdfs:Class;
    rdfs:label "Contact Event"@en;
    rdfs:comment """A record of an event in which the situation of a person or household was sought."""^^<text/markdown> ;
    .
  

:Data_Reuse_Proposition
    a owl:Class, rdfs:Class;
    rdfs:label "Data Reuse Proposition"@en;
    rdfs:comment """A proposition that sets out the foundation for how a group of RISK-FACTORs derived from an INFORMATION-TYPE can be reused for a specified PURPOSE, allowed by an ENABLER."""^^<text/markdown> ;
    .
  

:Delivery_Organisation
    a owl:Class, rdfs:Class;
    rdfs:label "Delivery Organisation"@en;
    rdfs:comment """A service provider who delivers actions that respond to a NEED."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Organization ;
    .
  

:Enabler
    a owl:Class, rdfs:Class;
    rdfs:label "Enabler"@en;
    rdfs:comment """A source of rules that allow data to be reused for a new PURPOSE"""^^<text/markdown> ;
    .
  

:Household
    a owl:Class, rdfs:Class;
    rdfs:label "Household"@en;
    rdfs:comment """A collection of PERSONs who live together at the same RESIDENCE."""^^<text/markdown> ;
    .
  

:Information_Type
    a owl:Class, rdfs:Class;
    rdfs:label "Information Type"@en;
    rdfs:comment """A generic description of a dataset that one or many organisations may hold, collected for a single PURPOSE."""^^<text/markdown> ;
    .
  

:Lead_Organisation
    a owl:Class, rdfs:Class;
    rdfs:label "Lead Organisation"@en;
    rdfs:comment """An organisation responsible for coordinating a vulnerability initiative, and with remit for the PURPOSE."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Organization ;
    .
  

:Metric
    a owl:Class, rdfs:Class;
    rdfs:label "Metric"@en;
    rdfs:comment """A statistic that evidences the imperative for a VULNERABILITY to be addressed."""^^<text/markdown> ;
    .
  

:Need
    a owl:Class, rdfs:Class;
    rdfs:label "Need"@en;
    rdfs:comment """An unmet requirement of a Person or Household that can be addressed."""^^<text/markdown> ;
    .
  

:Outcome
    a owl:Class, rdfs:Class;
    rdfs:label "Outcome"@en;
    rdfs:comment """A result that has been achieved by addressing the NEEDs of a Person or Household."""^^<text/markdown> ;
    .
  

:Person
    a owl:Class, rdfs:Class;
    rdfs:label "Person"@en;
    rdfs:comment """An Individual who may be vulnerable."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Person ;
    .
  

:Place
    a owl:Class, rdfs:Class;
    rdfs:label "Place"@en;
    rdfs:comment """A geographic area."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Place ;
    .
  

:Plan
    a owl:Class, rdfs:Class;
    rdfs:label "Plan"@en;
    rdfs:comment """A set of planned actions designed to respond to a NEED over a period."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Plan ;
    .
  

:Purpose
    a owl:Class, rdfs:Class;
    rdfs:label "Purpose"@en;
    rdfs:comment """The remit that an Organisation has to carry out an initiative covering one or more VULNERABILITYs."""^^<text/markdown> ;
    .
  

:Referral
    a owl:Class, rdfs:Class;
    rdfs:label "Referral"@en;
    rdfs:comment """A decision to direct a NEED to a support SERVICE."""^^<text/markdown> ;
    .
  

:Residence
    a owl:Class, rdfs:Class;
    rdfs:label "Residence"@en;
    rdfs:comment """A home of a PERSON"""^^<text/markdown> ;
    rdfs:subClassOf sccm:Building ;
    .
  

:Responsible_Organisation
    a owl:Class, rdfs:Class;
    rdfs:label "Responsible Organisation"@en;
    rdfs:comment """An organisation who is made responsible for a CASE."""^^<text/markdown> ;
    rdfs:subClassOf sccm:Organization ;
    .
  

:Risk_Factor
    a owl:Class, rdfs:Class;
    rdfs:label "Risk Factor"@en;
    rdfs:comment """A single fact about a Person or Household that can be combined with others to
categorise the risk of a VULNERABILITY , and predict NEEDs."""^^<text/markdown> ;
    rdfs:subClassOf istanduk:Attribute ;
    .
  

:Risk_Model
    a owl:Class, rdfs:Class;
    rdfs:label "Risk Model"@en;
    rdfs:comment """The rules by which RISK FACTORs will be used to prioritise VULNERABILITY risk, and predict NEEDs."""^^<text/markdown> ;
    .
  

:Service
    a owl:Class, rdfs:Class;
    rdfs:label "Service"@en;
    rdfs:comment """The ability for a Delivery Organisation to carry out one or more predetermined methods designed to deliver an OUTCOME."""^^<text/markdown> ;
    .
  

:Source_Organisation
    a owl:Class, rdfs:Class;
    rdfs:label "Source Organisation"@en;
    rdfs:comment """An Organisation that can provide data"""^^<text/markdown> ;
    rdfs:subClassOf sccm:Organization ;
    .
  

:Vulnerability
    a owl:Class, rdfs:Class;
    rdfs:label "Vulnerability"@en;
    rdfs:comment """The increased risk of a poor outcome."""^^<text/markdown> ;
    .
  

:ActionAddressesNeed
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "addresses"@en;
    owl:inverseOf [ rdfs:label "addressed by"@en ] ;
    rdfs:domain :Action;
    rdfs:range :Need ;
    .


:ActionPerformedByOrganisation
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "performed by"@en;
    owl:inverseOf [ rdfs:label "performs"@en ] ;
    rdfs:domain :Action;
    rdfs:range :Delivery_Organisation ;
    .


:AssessmentAssessesRiskOfVulnerability
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "assesses risk"@en;
    owl:inverseOf [ rdfs:label "assessed by"@en ] ;
    rdfs:domain :Assessment;
    rdfs:range :Vulnerability ;
    .


:AssessmentIdentifiesNeed
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "identifies"@en;
    owl:inverseOf [ rdfs:label "identified by"@en ] ;
    rdfs:domain :Assessment;
    rdfs:range :Need ;
    .


:CaseAboutVulnerability
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "about"@en;
    owl:inverseOf [ rdfs:label "case"@en ] ;
    rdfs:domain :Case;
    rdfs:range :Vulnerability ;
    .


:CaseContainsAssessment
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "contains"@en;
    owl:inverseOf [ rdfs:label "contained in"@en ] ;
    rdfs:domain :Case;
    rdfs:range :Assessment ;
    .


:CaseContainsEvent
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "contains"@en;
    owl:inverseOf [ rdfs:label "contained in"@en ] ;
    rdfs:domain :Case;
    rdfs:range :Contact_Event ;
    .


:CaseManagesNeed
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "manages"@en;
    owl:inverseOf [ rdfs:label "managed in"@en ] ;
    rdfs:domain :Case;
    rdfs:range :Need ;
    .


:CohortContainsVulnerability
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "contains"@en;
    owl:inverseOf [ rdfs:label "contained in"@en ] ;
    rdfs:domain :Cohort;
    rdfs:range :Vulnerability ;
    .


:DataProductDerivedFromInformationType
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "derived from"@en;
    owl:inverseOf [ rdfs:label "source of"@en ] ;
    rdfs:domain istanduk:Data_Product;
    rdfs:range :Information_Type ;
    .


:DataProductManagedBySourceOrganisation
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "managed by"@en;
    owl:inverseOf [ rdfs:label "manages"@en ] ;
    rdfs:domain istanduk:Data_Product;
    rdfs:range :Source_Organisation ;
    .


:DataProductProvidesAccessTo
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "provides"@en;
    owl:inverseOf [ rdfs:label "provided from"@en ] ;
    rdfs:domain istanduk:Data_Product;
    rdfs:range :Risk_Factor ;
    .


:EnabledBy
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "enabled by"@en;
    owl:inverseOf [ rdfs:label "enables"@en ] ;
    rdfs:domain :Data_Reuse_Proposition;
    rdfs:range :Enabler ;
    .


:HouseholdComposedFromPerson
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "composed from"@en;
    owl:inverseOf [ rdfs:label "part of"@en ] ;
    rdfs:domain :Household;
    rdfs:range :Person ;
    .


:HouseholdHasResidence
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "resides at"@en;
    owl:inverseOf [ rdfs:label "residence of"@en ] ;
    rdfs:domain :Household;
    rdfs:range :Residence ;
    .


:InformationTypeHasController
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "controlled by"@en;
    owl:inverseOf [ rdfs:label "controller of"@en ] ;
    rdfs:domain :Information_Type;
    rdfs:range :Source_Organisation ;
    .


:InformationTypeIsASourceOfRiskFactor
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "is a source of"@en;
    owl:inverseOf [ rdfs:label "can be found in"@en ] ;
    rdfs:domain :Information_Type;
    rdfs:range :Risk_Factor ;
    .


:MetricAboutSubject
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "about"@en;
    owl:inverseOf [ rdfs:label "described by"@en ] ;
    rdfs:domain :Metric;
    rdfs:range :Place ;
    .


:MetricInformsVulnerability
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "informs"@en;
    owl:inverseOf [ rdfs:label "informed by"@en ] ;
    rdfs:domain :Metric;
    rdfs:range :Vulnerability ;
    .


:NeedArisesFromVulnerability
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "arises from"@en;
    owl:inverseOf [ rdfs:label "gives rise to"@en ] ;
    rdfs:domain :Need;
    rdfs:range :Vulnerability ;
    .


:NeedHasReferral
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "has referral"@en;
    owl:inverseOf [ rdfs:label "referral of"@en ] ;
    rdfs:domain :Need;
    rdfs:range :Referral ;
    .


:NeedOfHousehold
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "of"@en;
    owl:inverseOf [ rdfs:label "has need"@en ] ;
    rdfs:domain :Need;
    rdfs:range :Household ;
    .


:NeedOfPerson
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "of"@en;
    owl:inverseOf [ rdfs:label "has need"@en ] ;
    rdfs:domain :Need;
    rdfs:range :Person ;
    .


:OrgamnisationMakesReferral
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "makes"@en;
    owl:inverseOf [ rdfs:label "by"@en ] ;
    rdfs:domain :Responsible_Organisation;
    rdfs:range :Referral ;
    .


:OrganisationDefinesRiskModel
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "defines"@en;
    owl:inverseOf [ rdfs:label "defined by"@en ] ;
    rdfs:domain :Lead_Organisation;
    rdfs:range :Risk_Model ;
    .


:OrganisationDeterminesPlan
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "determines"@en;
    owl:inverseOf [ rdfs:label "determined by"@en ] ;
    rdfs:domain :Delivery_Organisation;
    rdfs:range :Plan ;
    .


:OrganisationHasPurpose
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "has"@en;
    owl:inverseOf [ rdfs:label "of"@en ] ;
    rdfs:domain :Lead_Organisation;
    rdfs:range :Purpose ;
    .


:OrganisationMakesAssessment
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "makes"@en;
    owl:inverseOf [ rdfs:label "made by"@en ] ;
    rdfs:domain :Responsible_Organisation;
    rdfs:range :Assessment ;
    .


:OrganisationProvidesService
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "provides"@en;
    owl:inverseOf [ rdfs:label "provided by"@en ] ;
    rdfs:domain :Delivery_Organisation;
    rdfs:range :Service ;
    .


:OrganisationResponsibleForCase
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "responsible for"@en;
    owl:inverseOf [ rdfs:label "responsibility of"@en ] ;
    rdfs:domain :Responsible_Organisation;
    rdfs:range :Case ;
    .


:OrganisationServesPlace
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "serves"@en;
    owl:inverseOf [ rdfs:label "served by"@en ] ;
    rdfs:domain :Delivery_Organisation;
    rdfs:range :Place ;
    .


:OutcomeOfNeed
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "of"@en;
    owl:inverseOf [ rdfs:label "has"@en ] ;
    rdfs:domain :Outcome;
    rdfs:range :Need ;
    .


:PersonResidesAt
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "resides at"@en;
    owl:inverseOf [ rdfs:label "residence of"@en ] ;
    rdfs:domain :Person;
    rdfs:range :Residence ;
    .


:PlanAddressesNeed
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "addresses"@en;
    owl:inverseOf [ rdfs:label "addressed by"@en ] ;
    rdfs:domain :Plan;
    rdfs:range :Need ;
    .


:PredictsNeed
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "predicts"@en;
    owl:inverseOf [ rdfs:label "predicted by"@en ] ;
    rdfs:domain :Risk_Model;
    rdfs:range :Need ;
    .


:PredictsVulnerabilty
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "predicts"@en;
    owl:inverseOf [ rdfs:label "predicted by"@en ] ;
    rdfs:domain :Risk_Model;
    rdfs:range :Vulnerability ;
    .


:ProposesUseOfRiskFactor
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "proposes use of"@en;
    owl:inverseOf [ rdfs:label "reuse proposed in"@en ] ;
    rdfs:domain :Data_Reuse_Proposition;
    rdfs:range :Risk_Factor ;
    .


:PropositionAppliesToPurpose
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "applies to"@en;
    owl:inverseOf [ rdfs:label "proposed in"@en ] ;
    rdfs:domain :Data_Reuse_Proposition;
    rdfs:range :Purpose ;
    .


:PropositionForInformationType
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "for data from"@en;
    owl:inverseOf [ rdfs:label "reuse proposed by"@en ] ;
    rdfs:domain :Data_Reuse_Proposition;
    rdfs:range :Information_Type ;
    .


:PurposeFivesRemitForVulnerability
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "gives remit for"@en;
    owl:inverseOf [ rdfs:label "has remit from"@en ] ;
    rdfs:domain :Purpose;
    rdfs:range :Vulnerability ;
    .


:ReferralToService
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "referral to"@en;
    owl:inverseOf [ rdfs:label "referral from"@en ] ;
    rdfs:domain :Referral;
    rdfs:range :Service ;
    .


:ResidenceContainedInPlace
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "contained in"@en;
    owl:inverseOf [ rdfs:label "contains"@en ] ;
    rdfs:domain :Residence;
    rdfs:range :Place ;
    .


:RiskFactorDescribesHousehold
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "describes"@en;
    owl:inverseOf [ rdfs:label "described by"@en ] ;
    rdfs:domain :Risk_Factor;
    rdfs:range :Household ;
    .


:RiskFactorDescribesPerson
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "describes"@en;
    owl:inverseOf [ rdfs:label "described by"@en ] ;
    rdfs:domain :Risk_Factor;
    rdfs:range :Person ;
    .


:RiskModelUsesRiskFactor
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "uses"@en;
    owl:inverseOf [ rdfs:label "used by"@en ] ;
    rdfs:domain :Risk_Model;
    rdfs:range :Risk_Factor ;
    .


:VulnerabilityOfHousehold
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "of"@en;
    owl:inverseOf [ rdfs:label "has vulnerability"@en ] ;
    rdfs:domain :Vulnerability;
    rdfs:range :Household ;
    .


:VulnerabilityOfPerson
    a owl:ObjectProperty, rdf:Property;
    rdfs:label "of"@en;
    owl:inverseOf [ rdfs:label "has vulnerability"@en ] ;
    rdfs:domain :Vulnerability;
    rdfs:range :Person ;
    .


sccm:Event
    a owl:Class, rdfs:Class;
    rdfs:label "Event"@en;
    rdfs:comment """An occurrence that has or might happen."""^^<text/markdown> ;
    .
  

sccm:Case
    a owl:Class, rdfs:Class;
    rdfs:label "Case"@en;
    rdfs:comment """A container for information recording the history of EVENTS initiated by a SERVICE Demand."""^^<text/markdown> ;
    .
  

sccm:Organization
    a owl:Class, rdfs:Class;
    rdfs:label "Organization"@en;
    rdfs:comment """A group of PERSONs with a collective goal."""^^<text/markdown> ;
    .
  

sccm:Person
    a owl:Class, rdfs:Class;
    rdfs:label "Person"@en;
    rdfs:comment """An individual human being."""^^<text/markdown> ;
    .
  

sccm:Place
    a owl:Class, rdfs:Class;
    rdfs:label "Place"@en;
    rdfs:comment """A geographic or virtual part of space."""^^<text/markdown> ;
    .
  

sccm:Plan
    a owl:Class, rdfs:Class;
    rdfs:label "Plan"@en;
    rdfs:comment """A list of steps with times and RESOURCEs, used to achieve an OBJECTIVE."""^^<text/markdown> ;
    .
  

sccm:Building
    a owl:Class, rdfs:Class;
    rdfs:label "Building"@en;
    rdfs:comment """A man-made structure, at a fixed or temporary PLACE, intended for sheltering PERSONs or other OBJECTs."""^^<text/markdown> ;
    .
  

istanduk:Attribute
    a owl:Class, rdfs:Class;
    rdfs:label "Attribute"@en;
    rdfs:comment """A single fact about a Subject; preferably boolean"""^^<text/markdown> ;
    .
  

istanduk:Data_Product
    a owl:Class, rdfs:Class;
    rdfs:label "Data Product"@en;
    rdfs:comment """A facility that provides controlled access to one or more ATTRIBUTEs."""^^<text/markdown> ;
    .
  