Q: how to relate an individual with a combination of individuals? I have an ontology that contains plants and diseases and a property treat (a plant treats diseases). I have a lot of plants and diseases, but now I want to add a disease that is treatable by a combination of two or more plants.  For instance, how can I represent the following sentence?

Disease X is treatable by the combination of plant A and plant B, but not by plant A or plant B alone.

I've been thinking to obtain this using a reasoner, but I have no idea how.

A: It sounds like you have, at the moment, an ontology with a classes Disease and Plant, and a property treats with domain Plant and range Disease.  As I understand it, the problem is that what should treat some Diseases are not individual Plants, but rather combinations of them.  In these cases, we might say that a plant is used in the treatment of a disease, but does not, itself, treat the disease.  It is probably reasonable to say, too, that if a plant, by itself, treats a disease, then it also is used in the treatment of a disease.
So, you have a class of individuals that you haven't considered before, that is combinations of plants, so why not introduce a class PlantCombination and a property hasComponent that relates PlantCombinations to the plants in the combination?  You can also add a restriction that says that each plant combination has at least two plants, if you like, by saying PlantCombination SubClassOf hasComponent min 2 Plant.  Since both Plants and PlantCombinations can treat Diseases, you'll want to change the domain of treats to be Plant or PlantCombination.  To ensure that a reasoner can infer that if plant82 treats disease92 then plant82 isUsedToTreat disease92, you can assert that treats SubPropertyOf isUsedToTreat.  (This will also mean that a plant combination that treats a disease is also used to treat that disease.)  To ensure that when a combination with a component plant23 treats a disease, that plant23 is used to treat the disease, you can add the assertion that inverse(hasComponent) o treats SubPropertyOf isUsedToTreat. Here's an ontology that does just that:
N3 Format
@prefix :        <http://www.example.org/plantsAndDiseases#> .
@prefix rdfs:    <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl:     <http://www.w3.org/2002/07/owl#> .
@prefix xsd:     <http://www.w3.org/2001/XMLSchema#> .
@prefix rdf:     <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .

<http://www.example.org/plantsAndDiseases>
      a       owl:Ontology .

:Plant
      a       owl:Class .

:Disease
      a       owl:Class .

:PlantCombination
      a       owl:Class ;
      rdfs:subClassOf
              [ a       owl:Restriction ;
                owl:minQualifiedCardinality
                        "2"^^xsd:nonNegativeInteger ;
                owl:onClass :Plant ;
                owl:onProperty :hasComponent
              ] .

:hasComponent
      a       owl:ObjectProperty ;
      rdfs:domain :PlantCombination ;
      rdfs:range :Plant .

:isUsedToTreat
      a       owl:ObjectProperty ;
      rdfs:comment "X isUsedToTreat Y means that X is used in the treatment of Y.  X may either treat Y, or may be a component of a combination that treats Y." ;
      rdfs:domain
              [ a       owl:Class ;
                owl:unionOf (:Plant :PlantCombination)
              ] ;
      rdfs:range :Disease ;
      owl:propertyChainAxiom
              ([ owl:inverseOf :hasComponent
                ] :treats) .

:treats
      a       owl:ObjectProperty ;
      rdfs:comment "X treats Y means that X is a sufficient treatment for Y." ;
      rdfs:domain
              [ a       owl:Class ;
                owl:unionOf (:Plant :PlantCombination)
              ] ;
      rdfs:range :Disease ;
      rdfs:subPropertyOf :isUsedToTreat .

OWL Functional Syntax
Prefix(xsd:=<http://www.w3.org/2001/XMLSchema#>)
Prefix(owl:=<http://www.w3.org/2002/07/owl#>)
Prefix(xml:=<http://www.w3.org/XML/1998/namespace>)
Prefix(rdf:=<http://www.w3.org/1999/02/22-rdf-syntax-ns#>)
Prefix(rdfs:=<http://www.w3.org/2000/01/rdf-schema#>)

Ontology(<http://www.example.org/plantsAndDiseases>

Declaration(Class(<http://www.example.org/plantsAndDiseases#Disease>))
Declaration(Class(<http://www.example.org/plantsAndDiseases#Plant>))
Declaration(Class(<http://www.example.org/plantsAndDiseases#PlantCombination>))
SubClassOf(<http://www.example.org/plantsAndDiseases#PlantCombination> ObjectMinCardinality(2 <http://www.example.org/plantsAndDiseases#hasComponent> <http://www.example.org/plantsAndDiseases#Plant>))
Declaration(ObjectProperty(<http://www.example.org/plantsAndDiseases#hasComponent>))
ObjectPropertyDomain(<http://www.example.org/plantsAndDiseases#hasComponent> <http://www.example.org/plantsAndDiseases#PlantCombination>)
ObjectPropertyRange(<http://www.example.org/plantsAndDiseases#hasComponent> <http://www.example.org/plantsAndDiseases#Plant>)
Declaration(ObjectProperty(<http://www.example.org/plantsAndDiseases#isUsedToTreat>))
AnnotationAssertion(rdfs:comment <http://www.example.org/plantsAndDiseases#isUsedToTreat> "X isUsedToTreat Y means that X is used in the treatment of Y.  X may either treat Y, or may be a component of a combination that treats Y.")
ObjectPropertyDomain(<http://www.example.org/plantsAndDiseases#isUsedToTreat> ObjectUnionOf(<http://www.example.org/plantsAndDiseases#PlantCombination> <http://www.example.org/plantsAndDiseases#Plant>))
ObjectPropertyRange(<http://www.example.org/plantsAndDiseases#isUsedToTreat> <http://www.example.org/plantsAndDiseases#Disease>)
Declaration(ObjectProperty(<http://www.example.org/plantsAndDiseases#treats>))
AnnotationAssertion(rdfs:comment <http://www.example.org/plantsAndDiseases#treats> "X treats Y means that X is a sufficient treatment for Y.")
SubObjectPropertyOf(<http://www.example.org/plantsAndDiseases#treats> <http://www.example.org/plantsAndDiseases#isUsedToTreat>)
ObjectPropertyDomain(<http://www.example.org/plantsAndDiseases#treats> ObjectUnionOf(<http://www.example.org/plantsAndDiseases#PlantCombination> <http://www.example.org/plantsAndDiseases#Plant>))
ObjectPropertyRange(<http://www.example.org/plantsAndDiseases#treats> <http://www.example.org/plantsAndDiseases#Disease>)
SubObjectPropertyOf(ObjectPropertyChain(ObjectInverseOf(<http://www.example.org/plantsAndDiseases#hasComponent>) <http://www.example.org/plantsAndDiseases#treats>) <http://www.example.org/plantsAndDiseases#isUsedToTreat>)
)


A: Alternative to Joshua's answer: You can represent diseases and plants as OWL classes, as here you refer to sets of plants (not particular instances, which you would find in the nature). You can then link classes with existential restrictions (some - common pattern in biology).
You need also to introduce a supplementary step in your modelling, as mentioned: Plants can be for example ingredients of treatments, diseases being treatable by treatments.
Then if you consider the following commented (#) ontology (Manchester syntax), I describe the axioms for the modelling. You can save the file and open it with Protege.
Prefix: xsd: <http://www.w3.org/2001/XMLSchema#>
Prefix: owl: <http://www.w3.org/2002/07/owl#>
Prefix: : <http://www.example.org/demo.owl#>
Prefix: xml: <http://www.w3.org/XML/1998/namespace>
Prefix: rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
Prefix: rdfs: <http://www.w3.org/2000/01/rdf-schema#>

Ontology: <http://www.example.org/demo.owl>

ObjectProperty: has-ingredient

ObjectProperty: treatableBy

Class: owl:Thing

Class: PlantA
  SubClassOf: 
    Plant

Class: Treatment

#Your treatment obtained by mixing some 
#of the plant B and some of the plant A
Class: TreatmentAB
  SubClassOf: 
    Treatment,
    (has-ingredient some PlantA)
     and (has-ingredient some PlantB)

Class: PlantB
  SubClassOf: 
    Plant

#This treatment has ingredient the plant A
Class: TreatmentA
  SubClassOf: 
    has-ingredient some PlantA,
    Treatment

#This treatment is made from plant B (among other things) 
Class: TreatmentB
  SubClassOf: 
    Treatment,
    has-ingredient some PlantB

Class: Disease

Class: Plant

# This disease is treatable by the TreatmentAB
Class: DiseaseA
  SubClassOf: 
    treatableBy some TreatmentAB,
    Disease

Class: DiseaseB
  SubClassOf: 
    treatableBy some TreatmentB,
    Disease

Now if we were reasoning over the ontology and ask for the subclasses of treatableBy some TreatmentA we wouldn't get any class. The expression treatableBy some TreatmentAB returns DiseaseA as expected.
