PREFIX ns: <http://purl.org/innovation/ns#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>

ns:Improvement a rdfs:Class ;
  rdfs:label "Improvement"@en ;
  rdfs:comment """The class of things that are improvements to something i.e making something better than it was.

Specific improvements include those that provide improved efficiency, effectiveness, value or quality."""@en .

ns:improvesEfficiencyOf a rdf:Property ;
  rdfs:label "improvesEfficiencyOf"@en ;
  rdfs:comment """An improvement to the efficiency of the of the object. i.e reducing the cost, waste, time or skill required to produce the desired (same) results

e.g

Compared to other modes of transportation, a bicycle is efficient because it enables people to get to their destination with less effort."""@en ;
  rdfs:domain ns:Improvement ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf ns:improves .

ns:improves a rdf:Property ;
  rdfs:label "improves"@en ;
  rdfs:comment "Links an improvement to something it improves."@en ;
  rdfs:domain ns:Improvement ;
  rdfs:range <https://w3id.org/linkml/Any> .

ns:improvesValueOf a rdf:Property ;
  rdfs:label "improvesValueOf"@en ;
  rdfs:comment """An improvement to the worth or value of the object i.e as a result of the improvement something becomes more valuable or worthwhile. 
e.g:

Nuclear Fission improves the value of Uranium.
HTTP improves the value of the internet."""@en ;
  rdfs:domain ns:Improvement ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf ns:improves .

ns:improvesEffectivenessOf a rdf:Property ;
  rdfs:label "improvesEffectivenessOf"@en ;
  rdfs:comment """An improvement to the effectiveness of the object i.e effectuates an increase in the desired result.

e.g the combustion engine improves the effectiveness of a vehicle.

Without consideration for cost of increase i.e does not necessitate an improvement in efficiciency."""@en ;
  rdfs:domain ns:Improvement ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf ns:improves .

ns:improvesQualityOf a rdf:Property ;
  rdfs:label "improvesQualityOf"@en ;
  rdfs:comment "An improvement to the reliability, durability, accessibility, usability or some other non-functional aspect of the object."@en ;
  rdfs:domain ns:Improvement ;
  rdfs:range <https://w3id.org/linkml/Any> ;
  rdfs:subPropertyOf ns:improves .

ns:DevelopmentStage a rdfs:Class ;
  rdfs:label "DevelopmentStage"@en ;
  rdfs:comment """A stage of development. An example set of development stages, but equally those used to describe software lifecylces, music production lifecylces or anything creative can be used.

e.g

Define a need, 
Design a solution, 
Develop the opportunity, 
Demonstrate the benefits, 
Distribute the product.

(taken from the 5 D's defined by the National Innovation Centre, 2011)"""@en ;
  rdfs:subClassOf <http://www.w3.org/2004/02/skos/core#Concept> .

ns:Innovator a rdfs:Class ;
  rdfs:label "Innovator"@en ;
  rdfs:comment "A person, groups or organisation that can think out of the box, show great expertise or most importantly can find solutions to problems and meet the wants and needs of others."@en ;
  rdfs:subClassOf <http://xmlns.com/foaf/0.1/Agent> .

ns:hasDeveloped a rdf:Property ;
  rdfs:label "hasDeveloped"@en ;
  rdfs:comment """Relates innovator to the innovations they have developed.

Innovators can be groups, organisations or people."""@en ;
  rdfs:domain ns:Innovator ;
  rdfs:range ns:Innovation ;
  rdfs:subPropertyOf <http://xmlns.com/foaf/0.1/made> .

ns:fulfils a rdf:Property ;
  rdfs:label "fulfils"@en ;
  rdfs:comment "The applicabiity of an idea can be tested by its ability to fulfil a need. This property therefore links an innovation to a need."@en ;
  rdfs:domain ns:Innovator ;
  rdfs:range ns:Need .

ns:isDeveloping a rdf:Property ;
  rdfs:label "isDeveloping"@en ;
  rdfs:comment "Relates an innovator to a current innovation that they are developing."@en ;
  rdfs:domain ns:Innovator ;
  rdfs:range ns:Innovation .

ns:Embodiment a rdfs:Class ;
  rdfs:label "Embodiment"@en ;
  rdfs:comment """The physical or tangible manfestiation of some idea, invention or innovation.
A device, process, service, or product that emobodies some idea, invention or innovation.

e.g The Firefox web browser is an embodiment of the innovation HTTP
e.g Amoxicillin is an embodiment of the innovation Anibiotic"""@en .

ns:embodies a rdf:Property ;
  rdfs:label "embodies"@en ;
  rdfs:comment """Relates a device, process, product, or service (make, model or brand) to an innovation that it embodies

e.g The Firefox web browser embodies the innovation HTTP
e.g Amoxicillin embodies the innovation Anibiotic"""@en ;
  rdfs:domain ns:Embodiment ;
  rdfs:range ns:Innovation .

ns:hasUsage a rdf:Property ;
  rdfs:label "hasUsage"@en ;
  rdfs:comment "The problem or need of some individual, group or organisation."@en ;
  rdfs:domain ns:Embodiment ;
  rdfs:range ns:Usage .

ns:Problem a rdfs:Class ;
  rdfs:label "Problem"@en ;
  rdfs:comment "The manifestation of a need. This is represented by a set of symptoms (general phenoma) affecting groups of things."@en .

ns:manifests a rdf:Property ;
  rdfs:label "manifests"@en ;
  rdfs:comment "The problem that manifests a need. The problem defines the characteristics of the need."@en ;
  rdfs:domain ns:Problem ;
  rdfs:range ns:Need .

ns:affects a rdf:Property ;
  rdfs:label "affects"@en ;
  rdfs:comment "The group of things affected by a problem. Again it is recommended that a SKOS model is used for such instances."@en ;
  rdfs:domain ns:Problem ;
  rdfs:range <https://w3id.org/linkml/Any> .

ns:hasSympton a rdf:Property ;
  rdfs:label "hasSympton"@en ;
  rdfs:comment "A symptom of a problem. It is recommended that Symptoms follow a SKOS hierarchy."@en ;
  rdfs:domain ns:Problem ;
  rdfs:range ns:Sympton .

ns:Benefit a rdfs:Class ;
  rdfs:label "Benefit"@en ;
  rdfs:comment "A benefit to something or someone."@en ;
  rdfs:subClassOf <http://www.w3.org/2004/02/skos/core#Concept> .

ns:Usage a rdfs:Class ;
  rdfs:label "Usage"@en ;
  rdfs:comment """The application or usage of a device or process.

Typically this is described using the properties usedBy, usedOn and usedWith"""@en .

ns:usedWith a rdf:Property ;
  rdfs:label "usedWith"@en ;
  rdfs:comment "Where something is used in conjunction with something else."@en ;
  rdfs:domain ns:Usage ;
  rdfs:range <https://w3id.org/linkml/Any> .

ns:usedBy a rdf:Property ;
  rdfs:label "usedBy"@en ;
  rdfs:comment "Relates a usage node to the thing that makes use of the device or process i.e the activator or implementor."@en ;
  rdfs:domain ns:Usage ;
  rdfs:range <https://w3id.org/linkml/Any> .

ns:usedOn a rdf:Property ;
  rdfs:label "usedOn"@en ;
  rdfs:comment "Defines the recipient use."@en ;
  rdfs:domain ns:Usage ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://xmlns.com/foaf/0.1/Agent> a rdfs:Class .

ns:Sympton a rdfs:Class .

<http://www.w3.org/2004/02/skos/core#ConceptScheme> a rdfs:Class .

<https://w3id.org/linkml/Any> a rdfs:Class ;
  rdfs:comment "An unconstrained type or object"@en .

ns:Symptom a rdfs:Class ;
  rdfs:label "Symptom"@en ;
  rdfs:comment "A symptom of a problem. This class is intended to comprise of SKOS concepts belonging to different schemes."@en ;
  rdfs:subClassOf <http://www.w3.org/2004/02/skos/core#Concept> .

ns:Innovation a rdfs:Class ;
  rdfs:label "Innovation"@en ;
  rdfs:comment "The innovation is a conceptual entity, concerned with the idea. Its application comes in the form of benefits and improvements and the things that embody it."@en .

ns:hasImprovement a rdf:Property ;
  rdfs:label "hasImprovement"@en ;
  rdfs:comment "Links an innovation to some improvement or improvements it provides."@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Improvement .

ns:expectedMarketEntry a rdf:Property ;
  rdfs:label "expectedMarketEntry"@en ;
  rdfs:comment "The expected date of introduction into the market. Mass production, commoditisation or  availability for sale."@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range xsd:dateTime .

ns:enabledBy a rdf:Property ;
  rdfs:label "enabledBy"@en ;
  rdfs:comment "Where one innovation is enabled by another innovation or innovations. It is common for innovators to have a solution to a problem that is dependent on something else not yet known, discovered, invented or innovated."@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Innovation .

ns:solves a rdf:Property ;
  rdfs:label "solves"@en ;
  rdfs:comment "Connects an innovation to the problems it solves. Generally speaking, innovations that solve a need do so by solving similar problems associated with the need."@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Problem .

ns:enables a rdf:Property ;
  rdfs:label "enables"@en ;
  rdfs:comment "Where one innovation enables a different innovation or innovations."@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Innovation .

ns:embodiedBy a rdf:Property ;
  rdfs:label "embodiedBy"@en ;
  rdfs:comment """Relates an innovation to a device, process, product, or service (make, model or brand) that embodies the innovation

e.g The innovation HTTP is emobdied by the browser Firefox
e.g The innovation anibiotic is embodied by Amoxicillin"""@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Embodiment .

ns:buildsOn a rdf:Property ;
  rdfs:label "buildsOn"@en ;
  rdfs:comment "It is common for one innovation to build upon others. It doesn't neccessarily denote or infer that the subject has improvements on the object or is enabled by the object."@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Innovation .

ns:hasBenefit a rdf:Property ;
  rdfs:label "hasBenefit"@en ;
  rdfs:comment "Relates an innovation to some benefit or benefts of that innovation."@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Benefit .

ns:developedBy a rdf:Property ;
  rdfs:label "developedBy"@en ;
  rdfs:comment """Relates an innovation to the innovator or innovators who developed it.

Innovators are generally groups, organisations or people"""@en ;
  rdfs:domain ns:Innovation ;
  rdfs:range ns:Innovator ;
  rdfs:subPropertyOf <http://xmlns.com/foaf/0.1/maker> .

ns:Need a rdfs:Class ;
  rdfs:label "Need"@en ;
  rdfs:comment "A need of a particular group or indivual of or for something that is lacking or requires improvement or problem solving."@en .

ns:manifestedBy a rdf:Property ;
  rdfs:label "manifestedBy"@en ;
  rdfs:comment "The problems that manifest a particular need. A need is generally described by its problems."@en ;
  rdfs:domain ns:Need ;
  rdfs:range ns:Problem .

<http://www.w3.org/2004/02/skos/core#Concept> a rdfs:Class .

<http://www.w3.org/2004/02/skos/core#inScheme> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://www.w3.org/2004/02/skos/core#prefLabel> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://xmlns.com/foaf/0.1/made> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .

<http://xmlns.com/foaf/0.1/maker> a rdf:Property ;
  rdfs:range <https://w3id.org/linkml/Any> .
