OpeningHoursUseCase

We should be able to use the (Semantic) Web to find out when businesses are open for business.

This is part of a bigger picture: we probably also want to know about their Web site(s), product lines, physical locations, contact details etc. Using RDF, we can tackle the problem in separate chunks, which loosly correspond to RDF vocabularies or 'ontologies'.

Our scenario here is a desire to represent information about local businesses, in particular their opening hours. To illustrate the broader potential we can add in a bit more information, perhaps geo markup for location, or a photo of their physical premises.

This writeup began life as a thread in the RdfCalendar discussions, and has been
migrated to the Wiki for collaborative development.

Scenario

Restaurant opening hours.

This particular example stems from buying food from Urban Gourmet, via
from a restaurant info aggregator in Somerville, MA, USA. This site lists the menus and other info for local restaurants. The menus are currently images of paper menus, so there is scope for progress there. See also chefmoz for more RDF/food work.

The bit of the restaurant listing that relates to RdfCalendar concerns is where it says, "Currently [OPEN]", based on info about opening hours. Their summary for the 'Urban Gourmet' restaurant is:

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

Sunday

So longwinded question unpacked: how do we express this in RDF? Can we
use recurrence rules expressed over ical in RDF as the basis? Is extra
vocabulary needed?

Editorial Notes and Scribbles

I migrated this to Wiki in hope that others might flesh out the example(s). I also need some meta-help, ie. finding out how best to quote markup examples in the moinmoin wiki syntax. --DanBri

I added the XMl... initially pretty rough, i got muddled about which example

whether to stick with the restaurant in Boston, or do a local shop from Bristol, for which i can get photo, gps'd location etc more easily. --DanBri

Wishlist

Flesh out example, stabilise on a shop, its location, photo etc.

Add contact info

Look at restaurant markup from dmoz

wine markup from OWL

some other Wine RDF thing I vaguely remember being announced

if we had several nearby shops, how to deal w/ GPS granularity issues (spacenamespace?)

Some shops have different opening hours on holidays. How can you specify this via RDF? --AndreasHochsteger

The "what does this gain us" section is a little weak.

Let's beef it up a little, in order to understand the nature, and extent, of RDF's cool-ness.

"the RDF/XML syntax allows us to use off the shelf parsers (many RDF and XML free tools)"

Okay: What kind of free tools? Specificly? How do they help us understand / communicate / whatever the business hours use case?

"the use of XML namespaces gives us a syntax writing down a mix of calendar and other kinds of information"

"RDF's graph data model provides principles for mixing data together"

The further example of data mixing is good, but this should be explained up above as well. You want to say: "For example, you could automatically overlap the business hours with the business hours in your daily planner. This works, because there's an OWL description on the Internet that tells how to automatically translate this business hours language into the sort of business hours that your daily planner can understand."

So we want to explain that: "We can use the description of hours given by the business, and reuse the concept in our own documents."

Question: Why is this true here, but not elsewhere? What's so special about RDF that makes it so we can do this, where elsewhere we don't get to?

Outsider Comments

I'm looking for exactly this xml, but this seems to be very complex, and going off in different tangents. Here are my use cases:

I wish to go to a shop or restaurant, and I wish to know if it's open for the next few hours.

It's late at night, and I need to go to the drug store or a small market. I wish to be able to search for a business that is open right now. The search should happen on a mapping site, or a web search site.

I have business with a microbusiness that's open only a few days a week. It's important enough for me to bring their schedule into my calendar, temporarily, so I can get there when they're open.

I want to coordinate a trip and run a few errands. I would like to get all the hours for relevant businesses on a specific day. I can sort through the hours myself.