On Tue, Jun 7, 2011 at 7:18 PM, Owen Stephens <[log in to unmask]> 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