Tea Blending Project / OE Spring 2016 - Additional Information

Research

Publications

Chastain, Katherine and Reedy, Cara. "Towards Semantic Tea Blend Recommendations." RPI Technical Report, Ontology Engineering 2016.

Download as a .docx:
"Paper as docx"
Or as a .pdf:
"Paper as pdf"


Presentations done for the Ontology Engineering class in spring 2016


Related Work and  References

Cutler, Karan Davis., Kathleen Fisher, and Suzanne DeJohn. Herb Gardening for Dummies. Hoboken, NJ: Wiley Pub., 2011. Print. 

Groth, Paul, Andrew Gibson, and Jan Velterop. "The anatomy of a nanopublication." Information Services and Use 30.1-2 (2010): 51-56.

L. C. Martin, Tea: The Drink that Changed the World. North Clarendon, VT: Tuttle Publishing, 2007

Nanopubs website

Page, Karen and Dornenberg, Andrew. The Flavor Bible. New York, NY: Little, Brown, and Co, 2008.

Patrick Golden and Ryan Shaw. 2015. Period Assertion as Nanopublication: The PeriodO Period Gazetteer. In Proceedings of the 24th International Conference on World Wide Web (WWW '15 Companion). ACM, New York, NY, USA, 1013-1018. DOI=http://dx.doi.org/10.1145/2740908.2742021

Design

Use Cases


Conceptual Model

Concept Maps

Here we present maps of the concepts in the tea ontology. These graphics were created using Cmap Tools. Click on any image to see it full-size.

Overall


full conceptual mapThis presents an overview of the full ontology. The three main entities are in bold: SteepedDrink, which is a metaclass encompassing both true teas and herbal tisanes; BrewingTemperature, an attribute of all SteepedDrinks that is currently simplified down to temperature ranges, to help pair teas based on this characteristic; and Flavor, a looser, less scientific attribute of all SteepedDrinks that allows us to suggest blends based on users' and chefs' subjective opinions.

Compatible Blend


compatible blend
A conceptual model of what makes a compatible blend. The two SteepedDrinks must first share a BrewingTemperature, which is a generally a fairly simple matching task (see below for when that is not the case). The more complex criteria is the presence of a shared FlavorCompatibility: these are subjective assertions defined in nanopublications. Because nanopublications also capture provenance information including the "who" and the "when", a front-end system can leverage this part of the ontology to allow filtering options, such as if a user wants to see only blends recommended by their friends, or only from a particular celebrity chef.

Property Chain for New Plants


property chain
Because of the wide variety of plants that can be utilized to prepare SteepedDrinks, we have set up this reasoning chain in the ontology to allow for tisanes that are not part of the knowledge base. In the event that a user has a tisane not in the system already, they can provide flavor information, and also select what part of the plant their tisane is made from. This property chain demonstrates how the ontology allows reasoning to determine the appropriate BrewingTemperature(s).
 

Flavorings


flavorings
Many types of tea consist of one SteepedDrink and one or more flavorings - ingredients that change the taste of the tea but are not SteepedDrinks themselves. One well-known example is Earl Grey tea, typically made with black tea of some variety as well as bergamot oil, which provides the characteristic citrusy taste.


Ontology


Terms List


Demonstration and Queries

Printer-friendly version

Example Queries

  1. ASK {

  2. t1 tea:hasFlavor ?flavorA ;

  3. tea:hasBrewingTemperature ?temp .

  4. t2 tea:hasFlavor ?flavorB ;

  5. tea:hasBrewingTemperature ?temp .

  6. ?flavorA tea:isCompatibleWith ?flavorB .

  7. }


Given the user's two teas t1 and t2, if they form a compatible blend, the ASK query will return TRUE.

  1. ASK{

  2. ?blend contains t1 ;

  3. contains t2 ;

  4. a DecaffeinatedBlend .

  5. }


Building on the above, if we know t1 and t2 form a compatible blend, we can also ASK if the blend is Decaffeinated.

  1. SELECT DISTINCT ?tealabel where {

  2. tea:snowBudWhiteTea tea:hasFlavor ?flavorA .

  3. tea:roseHipTea tea:hasBrewingTemperature ?temp .

  4. ?othertea tea:hasFlavor ?flavorA ;

  5. tea:hasBrewingTemperature ?temp .

  6. ?othertea rdfs:label ?tealabel .

  7. }


“I like the flavor of snow bud white tea and I want to blend it with rose hip tea, but their brewing temperatures are not compatible. What tastes like the snow buds, but will still make a compatible blend with the rose hips?”

  1. SELECT DISTINCT ?tealabel where {

  2. tea:exampleOolong tea:brewsAt ?temp ;

  3. tea:hasFlavor ?flavorA .

  4. ?othertea tea:hasBrewingTemperature ?temp ;

  5. tea:hasFlavor ?flavorB .

  6. ?flavorA tea:isCompatibleWith ?flavorB .

  7. ?othertea rdfs: label ?tealabel .

  8. }


“I have a little bit of fancy Oolong tea left. What are all the possible things that would taste good in a blend with it?”


Getting Involved 

Maintenance Policy

Anyone with feedback should email Katie (chastaka@eckerd.edu) or Cara (reedyc@rpi.edu). We also set up the property chain between plant parts and their corresponding brewing temperatures to help account for things that might not be in the ontology - in this way, if a user knows what part of a plant they want to blend, and can list one or more flavors for it, they can find blends even if their particular plant is not listed in the ontology yet. The ontology will likely remain in flux until the end of the Spring 2016 semester.

Static Demo

  • Tea mockup
    A demonstration of what a potential end application could look like.
  • Tea results 1
  • Tea results 2
    A simple example of what the resulting recommendations might look like.

Class Content