How to connect one individual to multiple classes

Hi,

Recently I am trying to build an OWL model for touring/entertainment related businesses. I have categorized these businesses into one category hierarchy like the following:

Site(Root)
+---WaterPark
+---Resort
.......
+---AgriculturalField
    +---Orchard
+---CollectionExhibition
    +---ExhibitionHall
    +---Memorial
    +---Museum
+---SportsField
    +---Playground
    +---Stadium
.......

The goal is, given any category in the hierarchy, we can return all related businesses back. For example, given "Museum" as the category, we are supposed to return all museums; given "CollectionExhibition", all museums, memorials and exbitionHalls are returned.

One thing is one business might have more than one services to offer. Here is an example: a resort has hotels, bars and some other regular facilities, it also has one indoor water park because of its hot spring water resource.. So this resort should be categorized into 2 different categories: "Resort" and "WaterPark". Given either "Resort" or "WaterPark" is chosen as the category, this resort should be returned as a match.

The another one is that one business may fall into non-leaf categories, like "AgriculturalField" instead of "Orchard".

Technically I would prefer:

1 Businesses are individuals of an owl:Class. Categories could be antything, if it supports reasoning. This is different from the Protege Pizza sample, while pizza are classes.

2 When adding new businesses, we only need to add new business individual(maybe we need to add more categories), and connect the new individuals to the categories.

I have been trying different ways, but still no success. 

Any help would be highly appreciated.

Ningfeng

Received on Wednesday, 13 May 2009 14:40:50 UTC