Re: [CODE4LIB] RDF for opening times/hours?

2011-06-09 Thread Cary Gordon
Having spent the last few weeks creating a Drupal module that give
users a tool to add events to their personal calendars, the challenges
inherent in moving date information are definitely in my mind.

First off, your tool needs to be aware of your date handling system.
In Drupal, you can base on UTC or a local time zone, and you can
choose to allow individual users to set their date handling --
generally a bad idea. To make our tool work, we had to be aware of
this, and it was tricky, as the tool had to work across sites with
different settings.

We built the tool to support five calendars -- iCal, Outlook, Google,
Windows Live, and Yahoo. They divided into three pretty distinct
methodologies. One of them based on start time and duration, so after
a false start, we used this as our baseline. I think that this
provides the most flexible handling and covers date spanning.

While library hours present a different set of needs, I think that the
challenges inherent in sharing them are similar. Fundamentally, I
think that in order to provide an open service, you should consider
providing opening day and hour in a durable format like ISO 8601,
providing time zone offsets, and duration.

Thanks,

Cary

On Wed, Jun 8, 2011 at 11:45 AM, Brice Stacey brice.sta...@umb.edu wrote:
 You can't necessarily say We 8:00-2:00 because your closing hour could be 
 after your opening hour on the next day and it would be ambiguous. E.g. 
 Opening at 2am and closing the next day at 4am. I know that's absurd for most 
 libraries but it may happen. A better example is when a library stays open 
 overnight just one day a week.

 Ideally, if working with times with date granularity you should honor that 
 choice and say We 8:00-24:00 and Th 0:00-2:00. Then, when creating human 
 readable formats you always check tomorrow in the event today's closing time 
 is midnight.

 Brice
 —
 Sent from my iPhone

 On Jun 8, 2011, at 1:00 PM, Nate Vack njv...@wisc.edu wrote:

 On Wed, Jun 8, 2011 at 11:45 AM, Kevin S. Clarke kscla...@gmail.com wrote:

 time itemprop=openingHours datetime=Mo,We,Fri 17:00-21:00Mondays, 
 Wednesdays, and Fridays 5-9pm/time

 Or, if you just want to talk about
 http://library.example.com/hours/today, (which I think is what the OP
 was about?) you could do:

 time itemprop=openingHours datetime=We 8:00-21:00Open today
 (Wednesday, June 8) from 8:00 am to 5:00 pm/time

 Note that if you're open from, say, 8:00 AM to 2:00 AM, it raises some
 interesting discussions about what exactly goes in those time ranges,
 and when today should change. I'd vote datetime=We 8:00-2:00 and
 changing today shortly after 2am, but there are valid arguments that
 that's a dumb vote.

 The easy solution: change policy to never be open past midnight ;-)

 Cheers,
 -Nate




-- 
Cary Gordon
The Cherry Hill Company
http://chillco.com


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Carol Bean
I would definitely look into using Google calendars. This is Drupal-specific, 
but perhaps could be easily translated for other purposes?

I have used both G-Cal Events and (more recently) Agenda modules, which pull 
information from Google calendars.  I originally used it (g-cal events) to set 
up a site for a library that would display the events/meetings in its different 
meeting rooms (some of which were repeating events).  The google calendars were 
maintained by the different departments (Children's, Reference, 
Administration, etc.), and all tied to one main calendar from which the module 
pulled the data for display.  They both are configurable (through the gui, and 
fairly easily within the code if you know a little php) to set how, when, and 
how long to display the calendar item.

The only drawbacks are the limitations to Google Calendars itself, which may 
not work for you, but I find it flexible enough for the sites I've used it for. 
 I also like how you can link and control different calendars and set 
visibility, so the relevant library or department can manage its own calendar.

Carol

On Jun 7, 2011, at 11:33 PM, Jonathan Rochkind wrote:

 I wonder if you could get by using Google Calendar as the 'interface', 
 consumed via client and then published in whatever human-readable and 
 semantic formats you wanted.  I _think_ Google Calendar lets you create 
 repeating events, which should then be exposed by it's iCal API. 
 
 I think of this because there was in fact a Code4Lib Journal article about 
 that, although I forget the details:
 
 http://journal.code4lib.org/articles/46
 
 From: Code for Libraries [CODE4LIB@LISTSERV.ND.EDU] on behalf of Brice Stacey 
 [brice.sta...@umb.edu]
 Sent: Tuesday, June 07, 2011 11:27 PM
 To: CODE4LIB@LISTSERV.ND.EDU
 Subject: Re: [CODE4LIB] RDF for opening times/hours?
 
 Honestly, the API and schema are second to UX to manage the hours. The actual 
 API to the web service is trivial and just a matter of deciding on an 
 interface and schema that you like and that most future-proofs your work. 
 Personally, I would probably disregard it unless it has a JSONP format so 
 that I can easily include it on pages using JavaScript. If it was some overly 
 complex RDF thing I'd only consider it if it had amazing management of the 
 hours. Which brings me to my main point...
 
 It needs to be simple and flexible such that a layman can manage it. 
 Currently tools are designed for easy data transfer to databases, e.g. a list 
 of defaults for a given date range and then dozens of exceptions for specific 
 dates. Most people are overwhelmed that. Consequently, changing hours often 
 involves not only administrative changes but also assistance from technical 
 people. It needs to be simple for admin assistants to refactor the hours.
 
 Lastly, from my experience the biggest problem is propagating changes 
 throughout multiple systems. Yes, not all changes can be done by 
 administrative assistants from some single management tool (e.g. systems 
 staff may have to modify the ILS calendar) but there needs to be an easy way 
 to determine the specific changes between each change... Like a diff, so that 
 changes are easy to delegate to appropriate staff.
 
 Looking over my email, such features would be incredibly difficult to 
 implement well, but at least from my experience they're the actual problems 
 that plague libraries. Honestly, we'll conform to whatever technical 
 implementation you choose (hell, I'd accept some bizarre MARC-encoded hours) 
 so long as you actually tackle the real problems. Otherwise, it's just some 
 web service that can be easily implemented in an hour and is useless.
 
 Brice Stacey
 UMass Boston
 
 Sent from my iPad
 
 On Jun 7, 2011, at 5:28 PM, Doran, Michael D do...@uta.edu wrote:
 
 I am building a little web service that spits out info on when the libraries 
 (a central library and two branches) are open and what the hours are for 
 that day.  As those who work in academic libraries know, it's not the 
 *regular* hours, but all the exception dates/hours that are important 
 (Spring break, Maymester, intersession, Christmas holidays, yadda, yadda).  
 This app knows all the exceptions.
 
 The basic idea is that it provides real-time, is it open right now info 
 for *today* (as well as today's hours).  If this sounds mobile-y, it's 
 because it was originally conceived as an addition to our Library's mobile 
 website.
 
 I'm trying to figure out the most flexible output markup (RDF schema?), one 
 that would allow the widest use of the web service in addition to outputting 
 HTML markup for a mobile site page.
 
 I've googled and found a few things, but nothing that really seems to fit.  
 Most of them (e.g. the RDF OpeningHoursUseCase on W3C [1]) are more about 
 rules for recurring intervals.  My interest is not in representing the 
 totality of the schedule (again, because of all the exception

Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Nate Vack
On Tue, Jun 7, 2011 at 4:28 PM, Doran, Michael D do...@uta.edu wrote:

 I'm trying to figure out the most flexible output markup (RDF schema?), one 
 that would allow the widest use of the web service in addition to outputting 
 HTML markup for a mobile site page.

Not to start an RDF -vs- Microformats -vs- schema.org flamewar (how
has there not been one on this list yet?)... but: you might consider
the schema.org openingHours property, detailed in:

http://schema.org/LocalBusiness

It'd be pretty trivial to make a version that just returned today's
hours, or (probably better) used some CSS to display them more
prominently to visual clients.

The nice thing about the microdata / microformat (or RDFa) approach is
that you can just serve (x)?HTML, letting machines grab the data they
want and humans see the content they want.

Cheers,
-Nate


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Simon Spero
On Tue, Jun 7, 2011 at 7:18 PM, Owen Stephens o...@ostephens.com wrote:

 I'd suggest having a look at the Goid Relations ontology
 http://wiki.goodrelations-vocabulary.org/Quickstart - it's aimed at
 businesses but the OpeningHours specification might do what you need
 http://www.heppnetz.de/ontologies/goodrelations/v1.html#OpeningHoursSpecification

 While handling public holidays etc is not immediately obvious it is covered
 in this mail
 http://ebusiness-unibw.org/pipermail/goodrelations/2010-October/000261.html

 Picking up on the previous comment Good Relations in RDFa is one of the
 formats Google use for Rich Snippets and it is also picked up by Yahoo


[Goid Relations will be an awesome name for a mobile app that processes GR]

I would second Owen's recommendation to look at Good Relations as an output
format. However, as an ontology, it's not fully capturing the semantics of
what opening hours mean.

The problem is that RDF(S)+OWL are limited in expressiveness.  They're a
huge improvement over XSD/Relax, but they don't support
exceptions/overriding (non-monotonic reasoning in KR speak).

 Thus, you can't give a general rule, like all libraries open at 8am on
weekdays, except during intersession, when they open at 10am, except for the
underwater basket weaving special collection, which is open 24hrs a day
during Discovery Channel Shark Week.

You can capture most of these cases by extending RDF(S)+OWL using  RIF (
http://www.w3.org/standards/techs/rif#w3c_all ) or SPIN,  (
http://spinrdf.org/), or by using a more expressive/powerful system (e.g.
Cyc http://www.opencyc.org/ and  LARKC - http://www.larkc.eu/ ).

These more powerful systems can infer the correct GR
OpeningHoursSpecification[s].

You could expose the result directly, using a SPARQL endpoint, but given
that most consumers are likely to have questionable commitment to SPARQL
motion, they would probably be happier with a couple of restful services.

The first one should   the  hours  for a specified branch/library relative
to a specific date and time (defaulting to #$Now), a boolean value for
openness, and possibly a time interval indicating how long till the doors
are locked or unlocked;

The second one should expose the entire calendar in a few different formats
based on accept - probably at minimum, json, iCalendar, and RDFA HTML, and
(of not offering a  SPARQL endpoint), in RDF turtle.

The  point of using semantic technologies is to be able to express
meanings more precisely. There is a difference between creating an
ontology and creating a record schema or class hierarchy; just shattering a
record into a plethora of individual statements that are only really
understandable in the context of that record will not greatly increase the
reusability of data.

 For example, FAST (and more generally, any post-coordinated system) becomes
especially problematic when used in  linked data environments (since the
subject of a work is indeterminate, there can be multiple equally correct
assertions of aboutness ; however, the combination of these different
viewpoints with FAST style post-coordination is especially likely to result
in implied assertions of aboutness that are false, and which none of the
utters believes or would assent to.

[cue edsu ]

Simon


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Ed Summers
On Wed, Jun 8, 2011 at 10:00 AM, Simon Spero s...@unc.edu wrote:
 [cue edsu ]

And people wonder why Google/Yahoo/Bing chose to favor html5 microdata
on schema.org :-)

//Ed


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Simon Spero
On Wed, Jun 8, 2011 at 10:23 AM, Ed Summers e...@pobox.com wrote:

 On Wed, Jun 8, 2011 at 10:00 AM, Simon Spero s...@unc.edu wrote:
  [cue edsu ]

 And people wonder why Google/Yahoo/Bing chose to favor html5 microdata
 on schema.org :-)


HTML is an output format;

BTW, if you didn't see it, the folks at DERI created http://schema.rdfs.org/


(https://github.com/mhausenblas/schema-org-rdf)


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Nate Vack
On Wed, Jun 8, 2011 at 9:39 AM, Simon Spero s...@unc.edu wrote:

 HTML is an output format;

Everyone's output format is someone else's input format.

-Nate


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Roy Tennant
In the end, it is only the output format that matters to anyone except
the data producer/holder. You can have whatever you want in your
system and I could not care less -- I only care when I need to process
data you provide, and at that moment I cared deeply how you provide
it. What I care deeply about is that it be provided in as simple a
format as possible while not losing any of the granularity, semantics,
etc. that my application requires. Given that, if Schema.org works for
me I won't go any farther, and I happen to hold the view that I am
more like the rest of the planet than not.
Roy

On Wed, Jun 8, 2011 at 7:39 AM, Simon Spero s...@unc.edu wrote:
 On Wed, Jun 8, 2011 at 10:23 AM, Ed Summers e...@pobox.com wrote:

 On Wed, Jun 8, 2011 at 10:00 AM, Simon Spero s...@unc.edu wrote:
  [cue edsu ]

 And people wonder why Google/Yahoo/Bing chose to favor html5 microdata
 on schema.org :-)


 HTML is an output format;

 BTW, if you didn't see it, the folks at DERI created http://schema.rdfs.org/


 (https://github.com/mhausenblas/schema-org-rdf)



Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Keith Jenkins
schema.org may have some potential, but it's not clear to me how the
LocalBusiness/openingHours is supposed to work with anything but
regular hours...

Here's how openingHours are described at http://schema.org/LocalBusiness


The opening hours for a business. Opening hours can be specified as a
weekly time range, starting with days, then times per day. Multiple
days can be listed with commas ',' separating each day. Day or time
ranges are specified using a hyphen '-'.
- Days are specified using the following two-letter combinations: Mo,
Tu, We, Th, Fr, Sa, Su.
- Times are specified using 24:00 time. For example, 3pm is specified as 15:00.
Here is an example: time itemprop=openingHours datetime=Tu,Th
16:00-20:00Tuesdays and Thursdays 4-8pm/time


So how would one indicate different hours on different days?  Is there
more documentation that I'm missing?

If I wanted to create a service to take this data an calculate whether
the business is open right now, I'm still stuck having to parse and
interpret a text string, which defeats the purpose of having this
information encoded as data.

Keith


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Kevin S. Clarke
On Wed, Jun 8, 2011 at 12:28 PM, Keith Jenkins k...@cornell.edu wrote:

 - Days are specified using the following two-letter combinations: Mo,
 Tu, We, Th, Fr, Sa, Su.
 - Times are specified using 24:00 time. For example, 3pm is specified as 
 15:00.
 Here is an example: time itemprop=openingHours datetime=Tu,Th
 16:00-20:00Tuesdays and Thursdays 4-8pm/time
 

 So how would one indicate different hours on different days?  Is there
 more documentation that I'm missing?

Maybe I'm missing the point completely (I haven't looked at this at
all) but wouldn't that just be:

time itemprop=openingHours datetime=Mo,We,Fri
 17:00-21:00Mondays, Wednesdays, and Fridays 5-9pm/time
time itemprop=openingHours datetime=Tu,Th
 16:00-20:00Tuesdays and Thursdays 4-8pm/time

Kevin


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Nate Vack
On Wed, Jun 8, 2011 at 11:45 AM, Kevin S. Clarke kscla...@gmail.com wrote:

 time itemprop=openingHours datetime=Mo,We,Fri 17:00-21:00Mondays, 
 Wednesdays, and Fridays 5-9pm/time

Or, if you just want to talk about
http://library.example.com/hours/today, (which I think is what the OP
was about?) you could do:

time itemprop=openingHours datetime=We 8:00-21:00Open today
(Wednesday, June 8) from 8:00 am to 5:00 pm/time

Note that if you're open from, say, 8:00 AM to 2:00 AM, it raises some
interesting discussions about what exactly goes in those time ranges,
and when today should change. I'd vote datetime=We 8:00-2:00 and
changing today shortly after 2am, but there are valid arguments that
that's a dumb vote.

The easy solution: change policy to never be open past midnight ;-)

Cheers,
-Nate


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Brice Stacey
You can't necessarily say We 8:00-2:00 because your closing hour could be 
after your opening hour on the next day and it would be ambiguous. E.g. Opening 
at 2am and closing the next day at 4am. I know that's absurd for most libraries 
but it may happen. A better example is when a library stays open overnight just 
one day a week. 

Ideally, if working with times with date granularity you should honor that 
choice and say We 8:00-24:00 and Th 0:00-2:00. Then, when creating human 
readable formats you always check tomorrow in the event today's closing time is 
midnight.

Brice
—
Sent from my iPhone

On Jun 8, 2011, at 1:00 PM, Nate Vack njv...@wisc.edu wrote:

 On Wed, Jun 8, 2011 at 11:45 AM, Kevin S. Clarke kscla...@gmail.com wrote:
 
 time itemprop=openingHours datetime=Mo,We,Fri 17:00-21:00Mondays, 
 Wednesdays, and Fridays 5-9pm/time
 
 Or, if you just want to talk about
 http://library.example.com/hours/today, (which I think is what the OP
 was about?) you could do:
 
 time itemprop=openingHours datetime=We 8:00-21:00Open today
 (Wednesday, June 8) from 8:00 am to 5:00 pm/time
 
 Note that if you're open from, say, 8:00 AM to 2:00 AM, it raises some
 interesting discussions about what exactly goes in those time ranges,
 and when today should change. I'd vote datetime=We 8:00-2:00 and
 changing today shortly after 2am, but there are valid arguments that
 that's a dumb vote.
 
 The easy solution: change policy to never be open past midnight ;-)
 
 Cheers,
 -Nate


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Nate Vack
On Wed, Jun 8, 2011 at 1:45 PM, Brice Stacey brice.sta...@umb.edu wrote:
 You can't necessarily say We 8:00-2:00 because your closing hour could be 
 after your opening hour on the next day and it would be ambiguous. E.g. 
 Opening at 2am and closing the next day at 4am.

Hm, good point.

 Ideally, if working with times with date granularity you should honor that 
 choice and say We 8:00-24:00 and Th 0:00-2:00. Then, when creating human 
 readable formats you always check tomorrow in the event today's closing time 
 is midnight.

And there's nothing in the spec, as far as I can tell, that says you
can't do something like:

time itemprop=openingHours datetime=Th 0:00-2:00Thursday: Open
until 2:00 AM/time
time itemprop=openingHours datetime=Th 8:00-20:00Reopens from
8:00 AM until 8:00 PM/time

In practice, as long as what you do makes sense to human readers and
machines, you're probably doing fine.

-n


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-08 Thread Simon Spero
On Wed, Jun 8, 2011 at 3:08 PM, Nate Vack njv...@wisc.edu wrote:

 On Wed, Jun 8, 2011 at 1:45 PM, Brice Stacey brice.sta...@umb.edu wrote:
  You can't necessarily say We 8:00-2:00 because your closing hour could
 be after your opening hour on the next day and it would be ambiguous. E.g.
 Opening at 2am and closing the next day at 4am.

 Hm, good point.

  Ideally, if working with times with date granularity you should honor
 that choice and say We 8:00-24:00 and Th 0:00-2:00. Then, when creating
 human readable formats you always check tomorrow in the event today's
 closing time is midnight.

 And there's nothing in the spec, as far as I can tell, that says you can't
 do something like:

 time itemprop=openingHours datetime=Th 0:00-2:00Thursday: Open until
 2:00 AM/time
 time itemprop=openingHours datetime=Th 8:00-20:00Reopens from 8:00 AM
 until 8:00 PM/time


Good Relations explicitly allows (and requires) multiple openingHours
entities in this situation.


There are some important potential semantic differences  between two
contiguous  time intervals, and a single temporally continuous time
interval.  If there are semantics attached to  Closing, then even though
there may be no point of time in between the Closing and the Opening, there
has none-the-less been a ClosingEvent.

This may affect statistics, fines, or even more significantly wages (when I
worked at the Technion, the union contract had overtime rates kick in after
8hrs worked on a given workday.  Since as  a systems programmer I would
often get stuck working past midnight, this would  show as up as clocking
out at 26:00 hrs)

Male, Female, or
Mulehttp://ontolog.cim3.net/forum/ontology-summit/2011-01/msg00060.html
?

Simon


[CODE4LIB] RDF for opening times/hours?

2011-06-07 Thread Doran, Michael D
I am building a little web service that spits out info on when the libraries (a 
central library and two branches) are open and what the hours are for that day. 
 As those who work in academic libraries know, it's not the *regular* hours, 
but all the exception dates/hours that are important (Spring break, Maymester, 
intersession, Christmas holidays, yadda, yadda).  This app knows all the 
exceptions.

The basic idea is that it provides real-time, is it open right now info for 
*today* (as well as today's hours).  If this sounds mobile-y, it's because it 
was originally conceived as an addition to our Library's mobile website.

I'm trying to figure out the most flexible output markup (RDF schema?), one 
that would allow the widest use of the web service in addition to outputting 
HTML markup for a mobile site page.

I've googled and found a few things, but nothing that really seems to fit.  
Most of them (e.g. the RDF OpeningHoursUseCase on W3C [1]) are more about 
rules for recurring intervals.  My interest is not in representing the totality 
of the schedule (again, because of all the exception dates/times) but in 
representing one day (i.e. today).  So I don't care about representing 
recurring intervals.

And actually, the Outsider Comments use cases at the bottom of the 
OpeningHoursUseCase site mentioned above are almost exactly what I'm trying 
to satisfy (just substitute library where you see shop or restaurant):

quote
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. 
/quote

I also saw that opening times in RDF was listed as a use case in the Code4Lib 
wiki Library Ontology page [2].  However in the Relevant formats and models 
section the links just complete the loop back to things like the 
OpeningHoursUseCase previously mentioned.

Anyone done anything like this?  Any ideas?  Suggestions?  (This is my first 
baby-step into RDF, so don't assume any prior knowledge on my part.)

-- Michael

[1] http://www.w3.org/wiki/OpeningHoursUseCase

[2] http://wiki.code4lib.org/index.php/Library_Ontology

# Michael Doran, Systems Librarian
# University of Texas at Arlington
# 817-272-5326 office
# 817-688-1926 mobile
# do...@uta.edu
# http://rocky.uta.edu/doran/


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-07 Thread Tom Keays
There was a time, about 5 years ago, when I assumed that microformats
were the way to go and spent a bit of time looking at hCalendar for
representing iCalendar-formatted event information.

http://microformats.org/wiki/hcalendar

Not long after that, there was a lot of talk about RDF and RDFa for
this same purpose. Now I was confused as to whether to change my
strategy or not, but RDF Calendar seemed to be a good idea. The latter
also was nice because it could be used to syndicate event information
via RSS.

http://pemberton-vandf.blogspot.com/2008/06/how-to-do-hcalendar-in-rdfa.html
http://www.w3.org/TR/rdfcal/

These days it seems to be all about HTML5 microdata, especially
because of Rich Snippets and Google's support for this approach.

http://html5doctor.com/microdata/#microdata-action

All three approaches allow you to embed iCalendar formatted event
information on a web page. All three of them do it differently. I'm
even more confused now than I was 5 years ago. This should not be this
hard, yet there is still no definitive way to deploy this information
and preserve the semantics of the event information. Part of this may
be because the iCalendar format, although widely used, is itself
insufficient.

Tom


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-07 Thread Owen Stephens
I'd suggest having a look at the Goid Relations ontology 
http://wiki.goodrelations-vocabulary.org/Quickstart - it's aimed at businesses 
but the OpeningHours specification might do what you need 
http://www.heppnetz.de/ontologies/goodrelations/v1.html#OpeningHoursSpecification

While handling public holidays etc is not immediately obvious it is covered in 
this mail 
http://ebusiness-unibw.org/pipermail/goodrelations/2010-October/000261.html

Picking up on the previous comment Good Relations in RDFa is one of the formats 
Google use for Rich Snippets and it is also picked up by Yahoo

Owen

On 7 Jun 2011, at 23:05, Tom Keays tomke...@gmail.com wrote:

 There was a time, about 5 years ago, when I assumed that microformats
 were the way to go and spent a bit of time looking at hCalendar for
 representing iCalendar-formatted event information.
 
 http://microformats.org/wiki/hcalendar
 
 Not long after that, there was a lot of talk about RDF and RDFa for
 this same purpose. Now I was confused as to whether to change my
 strategy or not, but RDF Calendar seemed to be a good idea. The latter
 also was nice because it could be used to syndicate event information
 via RSS.
 
 http://pemberton-vandf.blogspot.com/2008/06/how-to-do-hcalendar-in-rdfa.html
 http://www.w3.org/TR/rdfcal/
 
 These days it seems to be all about HTML5 microdata, especially
 because of Rich Snippets and Google's support for this approach.
 
 http://html5doctor.com/microdata/#microdata-action
 
 All three approaches allow you to embed iCalendar formatted event
 information on a web page. All three of them do it differently. I'm
 even more confused now than I was 5 years ago. This should not be this
 hard, yet there is still no definitive way to deploy this information
 and preserve the semantics of the event information. Part of this may
 be because the iCalendar format, although widely used, is itself
 insufficient.
 
 Tom


Re: [CODE4LIB] RDF for opening times/hours?

2011-06-07 Thread Brice Stacey
Honestly, the API and schema are second to UX to manage the hours. The actual 
API to the web service is trivial and just a matter of deciding on an interface 
and schema that you like and that most future-proofs your work. Personally, I 
would probably disregard it unless it has a JSONP format so that I can easily 
include it on pages using JavaScript. If it was some overly complex RDF thing 
I'd only consider it if it had amazing management of the hours. Which brings me 
to my main point...

It needs to be simple and flexible such that a layman can manage it. Currently 
tools are designed for easy data transfer to databases, e.g. a list of defaults 
for a given date range and then dozens of exceptions for specific dates. Most 
people are overwhelmed that. Consequently, changing hours often involves not 
only administrative changes but also assistance from technical people. It needs 
to be simple for admin assistants to refactor the hours.

Lastly, from my experience the biggest problem is propagating changes 
throughout multiple systems. Yes, not all changes can be done by administrative 
assistants from some single management tool (e.g. systems staff may have to 
modify the ILS calendar) but there needs to be an easy way to determine the 
specific changes between each change... Like a diff, so that changes are easy 
to delegate to appropriate staff. 

Looking over my email, such features would be incredibly difficult to implement 
well, but at least from my experience they're the actual problems that plague 
libraries. Honestly, we'll conform to whatever technical implementation you 
choose (hell, I'd accept some bizarre MARC-encoded hours) so long as you 
actually tackle the real problems. Otherwise, it's just some web service that 
can be easily implemented in an hour and is useless. 

Brice Stacey
UMass Boston

Sent from my iPad

On Jun 7, 2011, at 5:28 PM, Doran, Michael D do...@uta.edu wrote:

 I am building a little web service that spits out info on when the libraries 
 (a central library and two branches) are open and what the hours are for that 
 day.  As those who work in academic libraries know, it's not the *regular* 
 hours, but all the exception dates/hours that are important (Spring break, 
 Maymester, intersession, Christmas holidays, yadda, yadda).  This app knows 
 all the exceptions.
 
 The basic idea is that it provides real-time, is it open right now info for 
 *today* (as well as today's hours).  If this sounds mobile-y, it's because 
 it was originally conceived as an addition to our Library's mobile website.
 
 I'm trying to figure out the most flexible output markup (RDF schema?), one 
 that would allow the widest use of the web service in addition to outputting 
 HTML markup for a mobile site page.
 
 I've googled and found a few things, but nothing that really seems to fit.  
 Most of them (e.g. the RDF OpeningHoursUseCase on W3C [1]) are more about 
 rules for recurring intervals.  My interest is not in representing the 
 totality of the schedule (again, because of all the exception dates/times) 
 but in representing one day (i.e. today).  So I don't care about representing 
 recurring intervals.
 
 And actually, the Outsider Comments use cases at the bottom of the 
 OpeningHoursUseCase site mentioned above are almost exactly what I'm trying 
 to satisfy (just substitute library where you see shop or restaurant):
 
quote
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. 
/quote
 
 I also saw that opening times in RDF was listed as a use case in the 
 Code4Lib wiki Library Ontology page [2].  However in the Relevant formats 
 and models section the links just complete the loop back to things like the 
 OpeningHoursUseCase previously mentioned.
 
 Anyone done anything like this?  Any ideas?  Suggestions?  (This is my first 
 baby-step into RDF, so don't assume any prior knowledge on my part.)
 
 -- Michael
 
 [1] http://www.w3.org/wiki/OpeningHoursUseCase
 
 [2] http://wiki.code4lib.org/index.php/Library_Ontology
 
 # Michael Doran, Systems Librarian
 # University of Texas at Arlington
 # 817-272-5326 office
 # 817-688-1926 mobile
 # 

Re: [CODE4LIB] RDF for opening times/hours?

2011-06-07 Thread Jonathan Rochkind
I wonder if you could get by using Google Calendar as the 'interface', consumed 
via client and then published in whatever human-readable and semantic formats 
you wanted.  I _think_ Google Calendar lets you create repeating events, which 
should then be exposed by it's iCal API. 

I think of this because there was in fact a Code4Lib Journal article about 
that, although I forget the details:

http://journal.code4lib.org/articles/46

From: Code for Libraries [CODE4LIB@LISTSERV.ND.EDU] on behalf of Brice Stacey 
[brice.sta...@umb.edu]
Sent: Tuesday, June 07, 2011 11:27 PM
To: CODE4LIB@LISTSERV.ND.EDU
Subject: Re: [CODE4LIB] RDF for opening times/hours?

Honestly, the API and schema are second to UX to manage the hours. The actual 
API to the web service is trivial and just a matter of deciding on an interface 
and schema that you like and that most future-proofs your work. Personally, I 
would probably disregard it unless it has a JSONP format so that I can easily 
include it on pages using JavaScript. If it was some overly complex RDF thing 
I'd only consider it if it had amazing management of the hours. Which brings me 
to my main point...

It needs to be simple and flexible such that a layman can manage it. Currently 
tools are designed for easy data transfer to databases, e.g. a list of defaults 
for a given date range and then dozens of exceptions for specific dates. Most 
people are overwhelmed that. Consequently, changing hours often involves not 
only administrative changes but also assistance from technical people. It needs 
to be simple for admin assistants to refactor the hours.

Lastly, from my experience the biggest problem is propagating changes 
throughout multiple systems. Yes, not all changes can be done by administrative 
assistants from some single management tool (e.g. systems staff may have to 
modify the ILS calendar) but there needs to be an easy way to determine the 
specific changes between each change... Like a diff, so that changes are easy 
to delegate to appropriate staff.

Looking over my email, such features would be incredibly difficult to implement 
well, but at least from my experience they're the actual problems that plague 
libraries. Honestly, we'll conform to whatever technical implementation you 
choose (hell, I'd accept some bizarre MARC-encoded hours) so long as you 
actually tackle the real problems. Otherwise, it's just some web service that 
can be easily implemented in an hour and is useless.

Brice Stacey
UMass Boston

Sent from my iPad

On Jun 7, 2011, at 5:28 PM, Doran, Michael D do...@uta.edu wrote:

 I am building a little web service that spits out info on when the libraries 
 (a central library and two branches) are open and what the hours are for that 
 day.  As those who work in academic libraries know, it's not the *regular* 
 hours, but all the exception dates/hours that are important (Spring break, 
 Maymester, intersession, Christmas holidays, yadda, yadda).  This app knows 
 all the exceptions.

 The basic idea is that it provides real-time, is it open right now info for 
 *today* (as well as today's hours).  If this sounds mobile-y, it's because 
 it was originally conceived as an addition to our Library's mobile website.

 I'm trying to figure out the most flexible output markup (RDF schema?), one 
 that would allow the widest use of the web service in addition to outputting 
 HTML markup for a mobile site page.

 I've googled and found a few things, but nothing that really seems to fit.  
 Most of them (e.g. the RDF OpeningHoursUseCase on W3C [1]) are more about 
 rules for recurring intervals.  My interest is not in representing the 
 totality of the schedule (again, because of all the exception dates/times) 
 but in representing one day (i.e. today).  So I don't care about representing 
 recurring intervals.

 And actually, the Outsider Comments use cases at the bottom of the 
 OpeningHoursUseCase site mentioned above are almost exactly what I'm trying 
 to satisfy (just substitute library where you see shop or restaurant):

quote
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