iCalendar Vocabulary (iCalendar)¶
iCalendar is an Internet standard and RDF vocabulary for exchanging calendar and scheduling data across applications using standardized representations such as iCalendar files and RDF views [1] [3]. It models core scheduling concepts such as events, to-dos, recurrence rules, attendees, time zones, and alarms, enabling interoperable representation of meetings, recurring appointments, and calendar invitations [1] [3]. While the original iCalendar format is a text-based standard widely implemented in calendar clients, the iCalendar vocabulary expresses these concepts in RDF to support Semantic Web integration, richer linking, and machine-processable event data [1] [2]. Key characteristics include explicit recurrence modeling, timezone-aware date and time representation, and support for invitations and participation roles [1] [3]. By providing a shared semantic framework for calendar and scheduling data, the vocabulary supports calendar synchronization, meeting scheduling services, automated reminders, and semantic linking of event metadata with external datasets [1] [2].
Example Usage: Represent a weekly team meeting as an event with a recurrence rule for weekly repetition, linked attendee agents with roles such as organizer and participant, and timezone-aware start and end datetimes. The vocabulary can also be combined with other ontologies, such as FOAF for people, to enrich event descriptions and support advanced calendar automation [1] [3].
Metrics & Statistics¶
Total Nodes |
496 |
Total Edges |
1271 |
Root Nodes |
4 |
Leaf Nodes |
93 |
Classes |
54 |
Individuals |
0 |
Properties |
49 |
Maximum Depth |
1 |
Minimum Depth |
0 |
Average Depth |
0.60 |
Depth Variance |
0.24 |
Maximum Breadth |
6 |
Minimum Breadth |
4 |
Average Breadth |
5.00 |
Breadth Variance |
1.00 |
Term Types |
0 |
Taxonomic Relations |
0 |
Non-taxonomic Relations |
0 |
Average Terms per Type |
0.00 |
Usage Example¶
Use the following code to import this ontology programmatically:
from ontolearner.ontology import iCalendar
ontology = iCalendar()
ontology.load("path/to/iCalendar-ontology.rdf")
# Extract datasets
data = ontology.extract()
# Access specific relations
term_types = data.term_typings
taxonomic_relations = data.type_taxonomies
non_taxonomic_relations = data.type_non_taxonomic_relations