org.semanticdesktop.aperture.crawler.ical
Class IcalCrawler

java.lang.Object
  extended by org.semanticdesktop.aperture.crawler.base.CrawlerBase
      extended by org.semanticdesktop.aperture.crawler.ical.IcalCrawler
All Implemented Interfaces:
Crawler, SubCrawler

public class IcalCrawler
extends CrawlerBase
implements SubCrawler

A Crawler implementation for crawling ical files. The file to be crawled is configured with an instance of IcalDataSource. See the documentation of appropriate methods for details on the form of the generated RDF data. Note that the n3 examples in the documentation contain blank nodes for clarity purposes, the actual RDF data will use randomly generated resources created with the UriUtil#generateRandomResource(Model) method, which may or may not be blank nodes. See the documentation for UriUtil#generateRandomResource(Model) for more details.


Field Summary
static URI XSD_DAY_TIME_DURATION
          Deprecated.  
static URI XSD_YEAR_MONTH_DURATION
          Deprecated.  
 
Fields inherited from class org.semanticdesktop.aperture.crawler.base.CrawlerBase
accessData, accessorRegistry, crawlReportFile, source, stopRequested
 
Constructor Summary
IcalCrawler()
          Default constructor.
IcalCrawler(boolean attachmentsOnlyMode)
          A constructor
 
Method Summary
 String convertIcalDurationToXSDDayTimeDuration(String string)
          Converts the ICAL duration to XSD duration.
 void crawlActionProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the ACTION property.
 void crawlAlarmComponent(net.fortuna.ical4j.model.Component component, Resource parentNode, RDFContainer rdfContainer)
          Crawls a single VAlarm component.
 void crawlAltRepParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          The altrep parameter is ignored it should be represented as appropriate altRep properties
 void crawlAttachProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the ATTACH property.
 void crawlAttendeeProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the ATTENDEE property.
 void crawlCalScaleProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the CALSCALE property.
 void crawlCategoriesProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the CATEGORIES property.
 void crawlClassProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the CLASS property.
 void crawlCnParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          The CN parameter is ignored.
 void crawlCommentProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the COMMENT property.
 void crawlCompletedProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the COMPLETED property.
 void crawlContactProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the CONTACT property.
 void crawlCreatedProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the CREATED property.
 void crawlCuTypeParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the CUTYPE parameter.
 void crawlDaylightObservance(net.fortuna.ical4j.model.Component component, Resource parentNode, RDFContainer rdfContainer)
          Crawls a single daylight timezone observance component.
 void crawlDelegatedFromParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DELEGATED-FROM parameter ical: ATTENDEE;DELEGATED-FROM="MAILTO:jsmith@host.com":MAILTO: jdoe@host.com n3: _:veventNode ncal:attendee [ a ncal:Attendee ; ncal:delegatedFrom [ a nco:Contact ; nco:hasEmailAddress [ a nco:EmailAddress ; nco:emailAddress "jsmith@host.com" ] ]; ncal:involvedContact [ a nco:Contact ; nco:hasEmailAddress [ a nco:EmailAddress ; nco:emailAddress "jdoe@host.com" ] ] ] .
 void crawlDelegatedToParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DELEGATED-TO parameter ical: ATTENDEE;DELEGATED-TO="MAILTO:jdoe@host.com","MAILTO:jqpublic@ host.com":MAILTO:jsmith@host.com n3: _:veventNode ncal:attendee [ a ncal:Attendee ; ncal:delegatedTo [ a nco:Contact ; nco:hasEmailAddress [ a nco:EmailAddress ; nco:emailAddress "jdoe@host.com" ] ]; ncal:delegatedTo [ a nco:Contact ; nco:hasEmailAddress [ a nco:EmailAddress ; nco:emailAddress "jqpublic@host.com" ] ]; ncal:involvedContact [ a nco:Contact ; nco:hasEmailAddress [ a nco:EmailAddress ; nco:emailAddress "jsmith@host.com" ] ] ] .
 void crawlDescriptionProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DESCRIPTION property.
 void crawlDirParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DIR parameter ical: ORGANIZER;DIR="ldap://host.com:6666/o=eDABC%20Industries,c=3DUS??
 void crawlDtEndProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DTEND property.
 void crawlDtStampProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DTSTAMP property.
 void crawlDtStartProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DTSTART property.
 void crawlDueProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DTSTART property.
 void crawlDurationProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the DURATION property.
 void crawlEncodingParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the ENCODING parameter.
 void crawlEventComponent(net.fortuna.ical4j.model.Component component, Resource parentNode)
          Crawls the vevent component.
 void crawlExDateProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the EXDATE property.
 void crawlExperimentalComponent(net.fortuna.ical4j.model.Component component, Resource parentNode)
          Experimental components are unsupported at the moment.
 void crawlExRuleProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the EXRULE property.
 void crawlFbTypeParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the FBTYPE parameter.
 void crawlFreebusyComponent(net.fortuna.ical4j.model.Component component, Resource parentNode)
          Crawls a single VFreebusy component.
 void crawlFreeBusyProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the FREEBUSY property.
 void crawlGeoProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the GEO property.
 void crawlJournalComponent(net.fortuna.ical4j.model.Component component, Resource parentNode)
          Crawls a single VJournal component.
 void crawlLanguageParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          The language parameter is ignored.
 void crawlLastModifiedProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the LAST-MODIFIED property.
 void crawlLocationProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the LOCATION property.
 void crawlMemberParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the MEMBER parameter ical: ATTENDEE;MEMBER="MAILTO:projectA@host.com","MAILTO:projectB@host.
 void crawlMethodProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the METHOD property.
protected  ExitCode crawlObjects()
          The main method that performs the actual crawl.
 void crawlOrganizerProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the ORGANIZER property.
 void crawlPartStatParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the PARTSTAT parameter.
 void crawlPercentCompleteProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the PERCENT-COMPLETE property.
 void crawlPriorityProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the PRIORITY property.
 void crawlProdIdProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the PRODID property.
 void crawlRangeParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RANGE parameter.
 void crawlRDateProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RDATE property.
 void crawlRecurrenceIdProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RECURRENCE-ID property.
 void crawlRelatedParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RELATED parameter.
 void crawlRelatedToProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RELATED-TO property.
 void crawlRelTypeParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          The reltype parameter is ignored, it should be covered by the relatedTo property.
 void crawlRepeatProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the REPEAT property.
 void crawlRequestStatusProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the REQUEST-STATUS property.
 void crawlResourcesProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RESOURCES property.
 void crawlRoleParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the ROLE parameter.
 void crawlRRuleProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RRULE property.
 void crawlRsvpParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the RSVP parameter.
 void crawlSentByParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Crawls the SENT-BY parameter.
 void crawlSequenceProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the SEQUENCE property.
 void crawlStandardObservance(net.fortuna.ical4j.model.Component component, Resource parentNode, RDFContainer rdfContainer)
          Crawls a single Standard timezone observance component.
 void crawlStatusProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer, net.fortuna.ical4j.model.Component component)
          Crawls the STATUS property.
 void crawlSummaryProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the SUMMARY property.
 void crawlTimezoneComponent(net.fortuna.ical4j.model.Component component, Resource parentNode)
          Crawls a single VTimezone component.
 void crawlTodoComponent(net.fortuna.ical4j.model.Component component, Resource parentNode)
          Crawls a single VTodo component.
 void crawlTranspProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the TRANSP property.
 void crawlTriggerProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the TRIGGER property.
 void crawlTzidParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Note that this parameter is ignored in the NCAL ontology.
 void crawlTzidProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the TZID property.
 void crawlTzNameProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the TZNAME property.
 void crawlTzOffsetFromProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the TZOFFSETFROM property.
 void crawlTzOffsetToProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the TZOFFSETTO property.
 void crawlTzUrlProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the TZURL property.
 void crawlUidProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the UID property.
 void crawlUrlProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the URL property.
 void crawlValueParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          This parameter is ignored.
 void crawlVersionProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Crawls the VERSION property.
 void crawlXParameter(net.fortuna.ical4j.model.Parameter parameter, Resource parentNode, RDFContainer rdfContainer)
          Extended parameters are disregarded at the moment.
 void crawlXtendedProperty(net.fortuna.ical4j.model.Property property, Resource parentNode, RDFContainer rdfContainer)
          Extended properties are disregarded at the moment.
 DataObject getDataObject(URI parentUri, String path, InputStream stream, DataSource dataSource, Charset charset, String mimeType, RDFContainerFactory factory)
          Get a DataObject from the specified stream with the given path.
protected  void reportModifiedDataObject(DataObject object)
           
protected  void reportNewDataObject(DataObject object)
           
protected  void reportUnmodifiedDataObject(String url)
           
 void stopSubCrawler()
          Stops a running crawl as fast as possible.
 void subCrawl(URI id, InputStream stream, SubCrawlerHandler handler, DataSource dataSource, AccessData accessData, Charset charset, String mimeType, RDFContainer parentMetadata)
          Starts crawling the given stream and to report the encountered DataObjects to the given SubCrawlerHandler.
 
Methods inherited from class org.semanticdesktop.aperture.crawler.base.CrawlerBase
clear, clear, crawl, getAccessData, getCrawlerHandler, getCrawlReport, getCrawlReportFile, getDataAccessorRegistry, getDataSource, getRDFContainerFactory, inDomain, isStopRequested, reportAccessingObject, reportDeletedDataObject, reportFatalErrorCause, reportFatalErrorCause, reportFatalErrorCause, reportUntouched, runSubCrawler, setAccessData, setCrawlerHandler, setCrawlReportFile, setDataAccessorRegistry, setDataSource, stop, storeCrawlReport, touchObject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

XSD_YEAR_MONTH_DURATION

public static final URI XSD_YEAR_MONTH_DURATION
Deprecated. 
URI of the xsd:yearMonthDuration datatype. This constant will be removed when an appropriate constant appears in the XSD class from RDF2Go.


XSD_DAY_TIME_DURATION

public static final URI XSD_DAY_TIME_DURATION
Deprecated. 
URI of the xsd:dayTimeDuration datatype. This constant will be removed when an appropriate constant appears in the XSD class from RDF2Go.

Constructor Detail

IcalCrawler

public IcalCrawler()
Default constructor.


IcalCrawler

public IcalCrawler(boolean attachmentsOnlyMode)
A constructor

Parameters:
attachmentsOnlyMode - if true - the crawler will return attachments, and all normal calendar components will be disregarded.
Method Detail

crawlObjects

protected ExitCode crawlObjects()
The main method that performs the actual crawl. Reads the file path from the data source configuration.

Specified by:
crawlObjects in class CrawlerBase
Returns:
The ExitCode

subCrawl

public void subCrawl(URI id,
                     InputStream stream,
                     SubCrawlerHandler handler,
                     DataSource dataSource,
                     AccessData accessData,
                     Charset charset,
                     String mimeType,
                     RDFContainer parentMetadata)
              throws SubCrawlerException
Description copied from interface: SubCrawler
Starts crawling the given stream and to report the encountered DataObjects to the given SubCrawlerHandler. If an AccessData instance is passed, it is used to check if the data objects are to be reported as new, modified, or unmodified. Note that the SubCrawler will not report deleted objects.

Specified by:
subCrawl in interface SubCrawler
Parameters:
id - the URI identifying the object (e.g. a file or web page) from which the stream was obtained. This URI is treated as the URI of the parent object, all objects encountered in the stream are considered to be contained within the parent object. (optional, the implementation may use this uri or the one returned from the RDFContainer.getDescribedUri() method of the parentMetadata)
stream - the stream to be crawled. (obligatory)
handler - The crawler handler that is to receive the notifications from the SubCrawler (obligatory)
dataSource - the data source that will be returned by the DataObject.getDataSource() method of the returned data objects. Some implementations may require that this reference is not null and that it contains some particular information
accessData - the AccessData used to determine if the encountered objects are to be returned as new, modified, unmodified or deleted. Information about new or modified objects is stored within for use in future crawls. This parameter may be null if this functionality is not desired, in which case all DataObjects will be reported as new. (optional)
charset - the charset in which the input stream is encoded (optional).
mimeType - the MIME type of the passed stream (optional).
parentMetadata - The 'parent' RDFContainer, that will contain the metadata about the top-level entity in the stream. A SubCrawler may (in some cases) limit itself to augmenting the metadata in this RDFContainer without delivering any additional DataObjects. (obligatory)
Throws:
SubCrawlerException - if any of the obligatory parameters is null or if any error during the crawling process occured

getDataObject

public DataObject getDataObject(URI parentUri,
                                String path,
                                InputStream stream,
                                DataSource dataSource,
                                Charset charset,
                                String mimeType,
                                RDFContainerFactory factory)
                         throws SubCrawlerException,
                                PathNotFoundException
Description copied from interface: SubCrawler
Get a DataObject from the specified stream with the given path.

Specified by:
getDataObject in interface SubCrawler
Parameters:
parentUri - the URI of the parent object where the path will be looked for
path - the path of the requested resource
stream - the stream that contains the resource
dataSource - data source that will be returned by the DataObject.getDataSource() method of the returned data object. Some implementations may require that this reference is not null and that it contains some particular information
charset - the charset in which the input stream is encoded (optional).
mimeType - the MIME type of the passed stream (optional).
factory - An RDFContainerFactory that delivers the RDFContainer to which the metadata of the DataObject should be added. The provided RDFContainer can later be retrieved as the DataObject's metadata container.
Returns:
The DataObject extracted from the given stream with the given path
Throws:
SubCrawlerException - if any I/O error occurs
PathNotFoundException - if the requested path is not found

stopSubCrawler

public void stopSubCrawler()
Description copied from interface: SubCrawler
Stops a running crawl as fast as possible. This method may return before the crawling has actually stopped.

Specified by:
stopSubCrawler in interface SubCrawler

crawlAlarmComponent

public void crawlAlarmComponent(net.fortuna.ical4j.model.Component component,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls a single VAlarm component. Attaches it to the parent vevent or vtodo with a ncal:hasAlarm link.
  ical:
  BEGIN:VALARM
  TRIGGER;RELATED=START:-PT30M
  ACTION:DISPLAY
  DESCRIPTION:Federal Reserve Board Meeting
  END:VALARM
  
  n3:
  _:EventNode  ncal:hasAlarm [ 
        a ncal:Alarm ;
        ncal:action ncal:displayAction ;
        ncal:description "Federal Reserve Board Meeting" ;
        ncal:trigger [
            a ncal:Trigger ;
            ncal:related ncal:startTriggerRelation ;
            ncal:triggerDuration "-PT30M"^^xsd:duration 
        ] 
 ].
 

Parameters:
parentNode - the node of the parent component, the hasAlarm link will be attached to this node
component - The Valarm to be crawled.
rdfContainer - The container to store the generated statements in.

crawlEventComponent

public void crawlEventComponent(net.fortuna.ical4j.model.Component component,
                                Resource parentNode)
Crawls the vevent component. Attaches it to the given parent node with an ncal:component link.
  ical:
  BEGIN:VEVENT
  UID:20020630T230353Z-3895-69-1-0@jammer
  DTSTAMP:20020630T230353Z
  DTSTART;TZID=/softwarestudio.org/Olson_20011030_5/America/New_York:
   20020630T090000
  DTEND;TZID=/softwarestudio.org/Olson_20011030_5/America/New_York:
   20020630T103000  
  TRANSP:OPAQUE
  SEQUENCE:2
  SUMMARY:Church
  CLASS:PRIVATE
  RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=SU
  END:VEVENT
  
  n3:
  _:eventNode a ncal:Event ;
      ncal:uid "20020630T230353Z-3895-69-1-0@jammer" ;
      ncal:dtstamp "2002-06-30T23:03:53Z"ˆˆxsd:dateTime ;
      ncal:dtstart [
          a ncal:NcalDateTime ;
          ncal:dateTime "2002-06-30T09:00:00"ˆˆxsd:dateTime ;
          ncal:ncalTimezone <file://path/to/file.ics/America/New_York> 
      ] ;
      ncal:dtend [
          a ncal:NcalDateTime ;
          ncal:dateTime "2002-06-30T10:30:00"ˆˆxsd:dateTime ;
          ncal:ncalTimezone <file://path/to/file.ics/America/New_York>
      ] ;
      ncal:transp ncal:OpaqueTransparency ;
      ncal:sequence "2"ˆˆxsd:integer ;
      ncal:summary "Church" ;
      ncal:class ncal:PrivateClassification ;
      ncal:rrule [
          a ncal:RecurrenceRule ;
          ncal:freq ncal:weekly ;
          ncal:interval "1"ˆˆxsd:integer ;
          ncal:byday [
              a ncal:BydayRulePart ;
              ncal:bydayWeekday ncal:Sunday
          ]
      ] .
 

Parameters:
parentNode - the node of the parent component, the ncal:component link will be attached to this node
component - the component to be crawled

crawlFreebusyComponent

public void crawlFreebusyComponent(net.fortuna.ical4j.model.Component component,
                                   Resource parentNode)
Crawls a single VFreebusy component.
  ical:
  BEGIN:VFREEBUSY
  ORGANIZER:MAILTO:jane_doe@host1.com
  ATTENDEE:MAILTO:john_public@host2.com
  DTSTAMP:19970901T100000Z
  FREEBUSY;VALUE=PERIOD:19971015T050000Z/PT8H30M,
   19971015T160000Z/PT5H30M,19971015T223000Z/PT6H30M
  URL:http://host2.com/pub/busy/jpublic-01.ifb
  COMMENT:This iCalendar file contains busy time information for
   the next three months.
  END:VFREEBUSY
  
  n3:
  _:freebusyNode a ncal:Freebusy ;
      ncal:organizer [
          a ncal:Organizer ;
          ncal:involvedContact [
              a nco:PersonContact ;
              nco:hasEmailAddress [
                  a nco:EmailAddress ;
                  nco:emailAddress "jane_doe@host1.com"
              ]
          ]
      ] ;
      ncal:attendee [
          a ncal:Attendee ;
          ncal:involvedContact [
              a nco:PersonContact ;
              nco:hasEmailAddress [
                  a nco:EmailAddress ;
                  nco:emailAddress "john_public@host2.com"
              ]
          ]
      ];
      ncal:dtstamp "1997-09-01T10:00:00Z"^^xsd:dateTime;
      ncal:freebusy [
          a ncal:FreebusyPeriod ;
          ncal:periodBegin "1997-10-15T05:00:00Z"^^xsd:dateTime ;
          ncal:periodDuration "PT8H30M"^^xsd:dayTimeDuration 
      ] ;
      ncal:freebusy [
          a ncal:FreebusyPeriod ;
          ncal:periodBegin "1997-10-15T16:00:00Z"^^xsd:dateTime ;
          ncal:periodDuration "PT5H30M"^^xsd:dayTimeDuration 
      ] ;
      ncal:freebusy [
          a ncal:FreebusyPeriod ;
          ncal:periodBegin "1997-10-15T23:00:00Z"^^xsd:dateTime ;
          ncal:periodDuration "PT6H30M"^^xsd:dayTimeDuration 
      ] ;
      ncal:url  ;
      ncal:comment """This iCalendar file contains busy time information for the next three months.""" .
 <http://host2.com/pub/busy/jpublic-01.ifb> a rdfs:Resource
 
 

Parameters:
parentNode - the node of the parent component, the ncal:component link will be attached to this node
component - the component to be crawled
See Also:
generateComponentUri(Component)

crawlJournalComponent

public void crawlJournalComponent(net.fortuna.ical4j.model.Component component,
                                  Resource parentNode)
Crawls a single VJournal component.
  ical:
  BEGIN:VJOURNAL
  CREATED:20030227T110715Z
  UID:KOrganizer-948365006.348
  SEQUENCE:0
  LAST-MODIFIED:20030227T110715Z
  DTSTAMP:20030227T110715Z
  ORGANIZER:MAILTO:nobody@nowhere
  DESCRIPTION:journal\n
  CLASS:PUBLIC
  PRIORITY:3
  DTSTART;VALUE=DATE:20030224
  END:VJOURNAL
  
  n3:
  _:journalNode a ncal:Journal ;
      ncal:created "2003-02-27T11:07:15Z"^^xsd:dateTime ;
      ncal:uid "KOrganizer-948365006.348" ;
      ncal:sequence "0"^^xsd:integer ;
      ncal:lastModified "2003-02-27T11:07:15Z"^^xsd:dateTime ; 
      ncal:dtstamp "2003-02-27T11:07:15Z"^^xsd:dateTime ;
      ncal:organizer [
          a ncal:Organizer ;
          ncal:involvedContact [
              a nco:PersonContact ;
              nco:hasEmailAddress [
                  a nco:EmailAddress ;
                  nco:emailAddress "nobody@nowhere"
              ]
          ]
      ] ;
      ncal:description "journal" ;
      ncal:class ncal:PublicClassification ;
      ncal:priority "3"^^xsd:integer ;
      ncal:dtstart [
          a ncal:NcalDateTime ;
          ncal:date "2003-02-24"^^xsd:date
      ] .
 

Parameters:
parentNode - the node of the parent component, the ncal:component link will be attached to this node
component - the component to be crawled
See Also:
generateComponentUri(Component)

crawlTimezoneComponent

public void crawlTimezoneComponent(net.fortuna.ical4j.model.Component component,
                                   Resource parentNode)
Crawls a single VTimezone component.
  ical:
  BEGIN:VTIMEZONE
  TZID:/softwarestudio.org/Olson_20011030_5/America/New_York
  TZURL:http://timezones.r.us.net/tz/US-California-Los_Angeles
  BEGIN:STANDARD
  TZOFFSETFROM:-0400
  TZOFFSETTO:-0500
  TZNAME:EST
  DTSTART:19701025T020000
  RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=10
  END:STANDARD
  BEGIN:DAYLIGHT
  TZOFFSETFROM:-0500
  TZOFFSETTO:-0400
  TZNAME:EDT
  DTSTART:19700405T020000
  RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=1SU;BYMONTH=4
  END:DAYLIGHT
  END:VTIMEZONE
  
  n3:
  _:timezoneNode a ncal:Timezone ;
      ncal:tzid "/softwarestudio.org/Olson_20011030_5/America/New_York" ;
      ncal:tzurl  ;
      ncal:standard [
          a ncal:TimezoneObservance ;
          ncal:tzoffsetfrom "-0400" ;
          ncal:tzoffsetto "-0500" ;
          ncal:tzname "EST" ;
          ncal:dtstart [
              a ncal:NcalDateTime ;
              ncal:dateTime "1970-10-25T02:00:00"^^xsd:dateTime 
          ] ;
          ncal:rrule [
              a ncal:RecurrenceRule ;
              ncal:freq ncal:yearly ;
              ncal:interval "1"^^xsd:integer ;
              ncal:byday [
                  a ncal:BydayRulePart ;
                  ncal:bydayWeekday ncal:Sunday ;
                  ncal:bydayModifier "-1"^^xsd:integer
              ];
              ncal:bymonth "10"^^xsd:integer
          ]
      ] ;
      ncal:daylight [
          a ncal:TimezoneObservance ;
          ncal:tzoffsetfrom "-0500" ;
          ncal:tzoffsetto "-0400" ;
          ncal:tzname "EDT" ;
          ncal:dtstart [
              a ncal:NcalDateTime ;
              ncal:dateTime "1970-04-05T02:00:00"^^xsd:dateTime 
          ] ;
          ncal:rrule [
              a ncal:RecurrenceRule ;
              ncal:freq ncal:yearly ;
              ncal:interval "1"^^xsd:integer ;
              ncal:byday [
                  a ncal:BydayRulePart ;
                  ncal:bydayWeekday ncal:Sunday ;
                  ncal:bydayModifier "1"^^xsd:integer
              ];
              ncal:bymonth "4"^^xsd:integer
          ]
      ] .
      
 <http://timezones.r.us.net/tz/US-California-Los_Angeles> a rdfs:Resource .      
 

Parameters:
parentNode - the node of the parent component, the ncal:component link will be attached to this node
component - the component to be crawled
See Also:
generateComponentUri(Component)

crawlTodoComponent

public void crawlTodoComponent(net.fortuna.ical4j.model.Component component,
                               Resource parentNode)
Crawls a single VTodo component.
  ical:
  BEGIN:VTODO
  PRIORITY:1
  DTSTAMP:20040130T152344Z
  UID:7611710A-5338-11D8-A876-000A958826AA
  SEQUENCE:3
  URL;VALUE=URI:http://www.w3.org/2004/01/ideas/
  STATUS:COMPLETED
  DTSTART;TZID=Europe/Rome:20031217T133610
  SUMMARY:project page
  COMPLETED:20040129T230000Z
  DUE:20031216T000000Z
  END:VTODO
  
  n3:
  _:vtodoNode a ncal:Todo ;
      ncal:priority "1"^^xsd:integer ;
      ncal:dtstamp "2004-01-30T15:23:44Z"^^xsd:dateTime ;
      ncal:uid "7611710A-5338-11D8-A876-000A958826AA" ;
      ncal:sequence "3"^^xsd:integer ;
      ncal:url <http://www.w3.org/2004/01/ideas/> ;
      ncal:status ncal:completedStatus ;
      ncal:dtstart [
          a ncal:NcalDateTime ;
          ncal:dateTime "2003-12-17T13:36:10"^^xsd:dateTime ;
          ncal:ncalTimezone <http://path/to/file.ics/Europe/Rome>
      ];
      ncal:summary "project page" ;
      ncal:completed "2004-01-29T23:00:00Z"^^xsd:dateTime ;
      ncal:due "2003-12-16T00-00-00Z"^^xsd:dateTime .
      
 <http://www.w3.org/2004/01/ideas/> a rdfs:Resource .
 

Parameters:
parentNode - the node of the parent component, the ncal:component link will be attached to this node
component - the component to be crawled
See Also:
generateComponentUri(Component)

crawlExperimentalComponent

public void crawlExperimentalComponent(net.fortuna.ical4j.model.Component component,
                                       Resource parentNode)
Experimental components are unsupported at the moment.

Parameters:
parentNode -
component -

crawlStandardObservance

public void crawlStandardObservance(net.fortuna.ical4j.model.Component component,
                                    Resource parentNode,
                                    RDFContainer rdfContainer)
Crawls a single Standard timezone observance component.

Parameters:
parentNode - the node of the parent component, the ncal:standard link will be attached to this node
component - the component to be crawled
rdfContainer - the container to store the generated statements in
See Also:
crawlTimezoneComponent(Component, Resource)

crawlDaylightObservance

public void crawlDaylightObservance(net.fortuna.ical4j.model.Component component,
                                    Resource parentNode,
                                    RDFContainer rdfContainer)
Crawls a single daylight timezone observance component.

Parameters:
parentNode - the node of the parent component, the ncal:daylight link will be attached to this node
component - the component to be crawled
rdfContainer - the container to store the generated statements in
See Also:
crawlTimezoneComponent(Component, Resource)

crawlActionProperty

public void crawlActionProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the ACTION property.
   ical:
   ACTION:AUDIO
   
   n3:
   _:ValarmNode ncal:action ncal:AudioAction .
   
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlAttachProperty

public void crawlAttachProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the ATTACH property.
 ical:
 ATTACH;VALUE=URI:http://www.w3.org/index.html
   
 n3:
 _:VeventNode ncal:attach [
    a ncal:Attachment ;
    ncal:attachmentUri <http://www.w3.org/index.html>
 ] .
 <http://www.w3.org/index.html> a rdfs:Resource .
   
 ical:
 ATTACH;FMTYPE=IMAGE/JPEG;ENCODING=BASE64;VALUE=BINARY:MIICajC
  CAdOgAwIBAgICBEUwDQYJKoZIhvcNAQEEBQAwdzELMAkGA1UEBhMCVVMxLDA
  qBgNVBAoTI05ldHNjYXBlIENvbW11bmljYXRpb25zIENvcnBvcmF0aW9uMRw
  <...remainder of "BASE64" encoded binary data...>
  
 n3:
 _:veventNode ncal:attach [
      a ncal:Attachment ;
      ncal:fmttype "image/jpeg" ;
      ncal:encoding ncal:base64Encoding ;
      # The attachment content is usually not expressed in the RDF.
      # It is converted to a separate DataObject and can be processed with 
      # with a MimeTypeIdentifier and an extractor.
      # The same node can be interpreted as an appropriate subclass of 
      # nie:InformationElement and be annotated all kinds of other properties
      # characteristic to that particular kind of InformationElement.
 ] .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlAttendeeProperty

public void crawlAttendeeProperty(net.fortuna.ical4j.model.Property property,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the ATTENDEE property.
   ical:
   ATTENDEE;CN=John Smith;RSVP=TRUE;ROLE=REQ-PARTICIPANT:MAILTO:jsmith@host.com
   
   n3:
   _:eventNode ncal:attendee [
      a ncal:Attendee ;
      ncal:involvedContact [
          a nco:PersonContact ;
          nco:fullname "John Smith" ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jsmith@host.com"
          ]
      ]
      ncal:rsvp "true" ;
      ncal:role ncal:reqParticipantRole 
   ] .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlCalScaleProperty

public void crawlCalScaleProperty(net.fortuna.ical4j.model.Property property,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the CALSCALE property.
   ical:
   CALSCALE:GREGORIAN
   
   n3:
   _:CalendarNode ncal:calscale ncal:GregorianCalendarScale .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlCategoriesProperty

public void crawlCategoriesProperty(net.fortuna.ical4j.model.Property property,
                                    Resource parentNode,
                                    RDFContainer rdfContainer)
Crawls the CATEGORIES property.
   ical:
   CATEGORIES:APPOINTMENT,EDUCATION
   
   n3:
   _:VeventNode ncal:categories "APPOINTMENT,EDUCATION" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlClassProperty

public void crawlClassProperty(net.fortuna.ical4j.model.Property property,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Crawls the CLASS property.
   ical:
   CLASS:PUBLIC
   
   n3:
   _:VcalendarNode ncal:class ncal:PublicClassification .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlCommentProperty

public void crawlCommentProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the COMMENT property.
   ical:
   COMMENT:The meeting really needs to include both ourselves
     and the customer. We can't hold this  meeting without them.
     As a matter of fact\, the venue for the meeting ought to be at
     their site. - - John
   
   n3:
   _:VeventNode ncal:comment 
     """The meeting really needs to include both ourselves
     and the customer. We can't hold this  meeting without them.
     As a matter of fact\, the venue for the meeting ought to be at
     their site. - - John""" . 
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlCompletedProperty

public void crawlCompletedProperty(net.fortuna.ical4j.model.Property property,
                                   Resource parentNode,
                                   RDFContainer rdfContainer)
Crawls the COMPLETED property.
   ical:
   COMPLETED:19971210T080000Z
   
   n3:
   _:VTodoNode ncal:completed "1997-12-10T08:00:00Z"ˆˆxsd:dateTime .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlContactProperty

public void crawlContactProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the CONTACT property.
   ical:
   CONTACT:Jim Dolittle\, ABC Industries\, +1-919-555-1234
   
   n3:
   _:VeventNode ncal:contact 
     """Jim Dolittle\, ABC Industries\, +1-919-555-1234""" . 
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlCreatedProperty

public void crawlCreatedProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the CREATED property.
Note the conversion to the XSD time format
   ical:
   CREATED:19971210T080000
   
   n3:
   _:VeventNode icaltzd:created "1997-12-10T08:00:00"ˆˆxsd:dateTime .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlDescriptionProperty

public void crawlDescriptionProperty(net.fortuna.ical4j.model.Property property,
                                     Resource parentNode,
                                     RDFContainer rdfContainer)
Crawls the DESCRIPTION property.
   ical:
   DESCRIPTION:Meeting to provide technical review for "Phoenix"
    design.\n Happy Face Conference Room. Phoenix design team
    MUST attend this meeting.\n RSVP to team leader.
   
   n3:
   _:VeventNode ncal:description 
     """Meeting to provide technical review for "Phoenix"
    design.\n Happy Face Conference Room. Phoenix design team
    MUST attend this meeting.\n RSVP to team leader.""" . 
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlDtEndProperty

public void crawlDtEndProperty(net.fortuna.ical4j.model.Property property,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Crawls the DTEND property.
The dates and date-times are converted to xmlschema form.
    ical:
    DTEND:19980118T073000Z
    
    n3:
    _:VeventNode ncal:dtend [
         a ncal:NcalDateTime ;
         ncal:dateTime "1998-01-18T07:30:00Z"ˆˆxsd:dateTime 
    ] .
    
    ical:
    DTEND:VALUE=DATE;20020703
    
    n3:
    _:VeventNode ncal:dtend [
         a ncal:NcalDateTime ;
         ncal:date "2002-07-03"ˆˆxsd:date 
    ] .
    
    ical:
    DTEND;TZID=/softwarestudio.org/Olson_20011030_5/America/New_York:
     20020630T090000
     
    n3:
    _:VeventNode ncal:dtend [
         "2002-06-30T09:00:00"ˆˆxsd:dateTime ;
         ncal:ncalTimezone 
           <this-calendar-baseuri/softwarestudio.org/Olson_20011030_5/America/New_York>
    ] .
    

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlDtStampProperty

public void crawlDtStampProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the DTSTAMP property.
   ical:
   DTSTAMP:19971210T080000Z
   
   n3:
   _:VeventNode ncal:dtstamp "1997-12-10T08:00:00Z"ˆˆxsd:dateTime .
 
Note the conversion to the XSD time format

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlDtStartProperty

public void crawlDtStartProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the DTSTART property.
The dates and date-times are converted to xmlschema form.
    ical:
    DTSTART:19980118T073000Z
    
    n3:
    _:VeventNode ncal:dtstart [
         a ncal:NcalDateTime ;
         ncal:dateTime "1998-01-18T07:30:00Z"ˆˆxsd:dateTime 
    ] .
    
    ical:
    DTSTART:VALUE=DATE;20020703
    
    n3:
    _:VeventNode ncal:dtend [
         a ncal:NcalDateTime ;
         ncal:date "2002-07-03"ˆˆxsd:date 
    ] .
    
    ical:
    DTSTART;TZID=/softwarestudio.org/Olson_20011030_5/America/New_York:
     20020630T090000
     
    n3:
    _:VeventNode ncal:dtend [
         "2002-06-30T09:00:00"ˆˆxsd:dateTime ;
         ncal:ncalTimezone 
           <this-calendar-baseuri/softwarestudio.org/Olson_20011030_5/America/New_York>
    ] .
    

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlDueProperty

public void crawlDueProperty(net.fortuna.ical4j.model.Property property,
                             Resource parentNode,
                             RDFContainer rdfContainer)
Crawls the DTSTART property.
The dates and date-times are converted to xmlschema form.
    ical:
    DTSTART:19980118T073000Z
    
    n3:
    _:VeventNode ncal:dtstart [
         a ncal:NcalDateTime ;
         ncal:dateTime "1998-01-18T07:30:00Z"ˆˆxsd:dateTime 
    ] .
    
    ical:
    DTSTART:VALUE=DATE;20020703
    
    n3:
    _:VeventNode ncal:dtstart [
         a ncal:NcalDateTime ;
         ncal:date "2002-07-03"ˆˆxsd:date 
    ] .
    
    ical:
    DTSTART;TZID=/softwarestudio.org/Olson_20011030_5/America/New_York:
     20020630T090000
     
    n3:
    _:VeventNode ncal:dtstart [
         "2002-06-30T09:00:00"ˆˆxsd:dateTime ;
         ncal:ncalTimezone 
           <this-calendar-baseuri/softwarestudio.org/Olson_20011030_5/America/New_York>
    ] .
    

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlDurationProperty

public void crawlDurationProperty(net.fortuna.ical4j.model.Property property,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the DURATION property.
   ical:
   DURATION:PT1H0M0S
   
   n3:
   _:VeventNode ncal:duration "PT1H0M0S"ˆˆxsd:duration .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlExDateProperty

public void crawlExDateProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the EXDATE property.
The dates and date-times are converted to xmlschema form.
    ical:
    EXDATE:19980118T073000Z
    
    n3:
    _:VeventNode ncal:exdate [
         a ncal:NcalDateTime ;
         ncal:dateTime "1998-01-18T07:30:00Z"ˆˆxsd:dateTime 
    ] .
    
    ical:
    EXDATE:VALUE=DATE;20020703
    
    n3:
    _:VeventNode ncal:exdate [
         a ncal:NcalDateTime ;
         ncal:date "2002-07-03"ˆˆxsd:date 
    ] .
    
    ical:
    EXDATE;TZID=/softwarestudio.org/Olson_20011030_5/America/New_York:
     20020630T090000
     
    n3:
    _:VeventNode ncal:exdate [
         "2002-06-30T09:00:00"ˆˆxsd:dateTime ;
         ncal:ncalTimezone 
           <this-calendar-baseuri/softwarestudio.org/Olson_20011030_5/America/New_York>
    ] .
    

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlExRuleProperty

public void crawlExRuleProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the EXRULE property.

This property has RECUR value type. This necessitates an introduction of an intermediate node. The recurrence parameters are attached to this intermediate node (as literals with appropriate datatypes)

   ical:
   EXRULE:FREQ=YEARLY;INTERVAL=5;BYDAY=-1SU;BYMONTH=10
   
   n3:
   _:VeventNode ncal:exrule [
         a ncal:RecurrenceRule ;
         ncal:freq ncal:yearly ;
         ncal:interval "5"^^xsd:integer ;
         ncal:byday [
             a ncal:BydayRulePart ;
             ncal:bydayWeekday ncal:sunday ;
             ncal:bydayModifier "-1"^^xsd:integer 
         ] ;
         ncal:bymonth "10"^^xsd:integer ;
  ].
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in
See Also:
crawlRecur(String, Resource, RDFContainer)

crawlFreeBusyProperty

public void crawlFreeBusyProperty(net.fortuna.ical4j.model.Property property,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the FREEBUSY property.

Note that this property supports multiple values.

   ical:
   FREEBUSY;VALUE=PERIOD:19971015T050000Z/PT8H30M,
    19971015T160000Z/PT5H30M,19971015T223000Z/PT6H30M
   
   n3:
   _:VFreebusyComponentNode ncal:freebusy [
         a ncal:FreebusyPeriod ;
         ncal:periodBegin "1997-10-15T05:00:00Z"^^xsd:dateTime;
         ncal:periodDuration "PT8H30M"^^xsd:dayTimeDuration
   ] .
   _:VFreebusyComponentNode ncal:freebusy [
         a ncal:FreebusyPeriod ;
         ncal:periodBegin "1997-10-15T16:00:00Z"^^xsd:dateTime;
         ncal:periodDuration "PT5H30M"^^xsd:dayTimeDuration
   ] .
   _:VFreebusyComponentNode ncal:freebusy [
         a ncal:FreebusyPeriod ;
         ncal:periodBegin "1997-10-15T22:30:00Z"^^xsd:dateTime;
         ncal:periodDuration "PT6H30M"^^xsd:dayTimeDuration
   ] .
   
   
   ical:
   FREEBUSY;FBTYPE=BUSY:19980415T133000Z/19980415T170000Z
   
   n3:
   _:VFreebusyComponentNode ncal:freebusy [
         a ncal:FreebusyPeriod ;
         ncal:fbtype ncal:busyFreebusyType ;
         ncal:periodBegin "1998-04-15T13:30:00Z"^^xsd:dateTime;
         ncal:periodEnd "1998-04-15T17:00:00Z"^^xsd:dateTime
   ] .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlGeoProperty

public void crawlGeoProperty(net.fortuna.ical4j.model.Property property,
                             Resource parentNode,
                             RDFContainer rdfContainer)
Crawls the GEO property.
Note that the geo prefix refers to the http://www.w3.org/2003/01/geo/wgs84_pos# namespace
   ical:
   GEO:40.442673;-79.945815
   
   n3:
   _:VEventNode ncal:geo [
         a geo:Point ;
         geo:lat "40.442673"^^xsd:decimal ;
         geo:long "-79.945815"^^xsd:decimal
   ] .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlLastModifiedProperty

public void crawlLastModifiedProperty(net.fortuna.ical4j.model.Property property,
                                      Resource parentNode,
                                      RDFContainer rdfContainer)
Crawls the LAST-MODIFIED property.
   ical:
   LAST-MODIFIED:20041223T151752
   
   n3:
   _:VeventNode ncal:lastModified "2004-12-23T15:17:52"ˆˆxsd:dateTime .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlLocationProperty

public void crawlLocationProperty(net.fortuna.ical4j.model.Property property,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the LOCATION property.
   ical:
   LOCATION:San Francisco
      
   n3:
   _:VeventNode ncal:location "San Francisco" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlMethodProperty

public void crawlMethodProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the METHOD property.
   ical:
   METHOD:PUBLISH
   
   n3:
   _:VcalendarNode ncal:method "PUBLISH" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlOrganizerProperty

public void crawlOrganizerProperty(net.fortuna.ical4j.model.Property property,
                                   Resource parentNode,
                                   RDFContainer rdfContainer)
Crawls the ORGANIZER property.
   ical:
   ORGANIZER;CN=JohnSmith:MAILTO:jsmith@host1.com
   
   n3:
   _:VeventNode ncal:organizer [
         a ncal:Organizer ;
             ncal:involvedContact [
             a nco:Contact ;
             nco:fullname "JohnSmith" ;
             nco:hasEmailAddress [
                 a nco:EmailAddress ;
                 nco:emailAddress "jsmith@host1.com"
             ]
         ] 
   ] . 
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlPercentCompleteProperty

public void crawlPercentCompleteProperty(net.fortuna.ical4j.model.Property property,
                                         Resource parentNode,
                                         RDFContainer rdfContainer)
Crawls the PERCENT-COMPLETE property.
   ical:
   PERCENT-COMPLETE:39
   
   n3:
   _:VtodoNode ncal:percentComplete "39"ˆˆxsd:integer .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlPriorityProperty

public void crawlPriorityProperty(net.fortuna.ical4j.model.Property property,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the PRIORITY property.
   ical:
   PRIORITY:2
   
   n3:
   _:VtodoNode ncal:priority "2"ˆˆxsd:integer .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlProdIdProperty

public void crawlProdIdProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the PRODID property.
   ical:
   PRODID:-//Apple Computer\, Inc//iCal 1.5//EN
   
   n3:
   _:VcalendarNode ncal:prodid "-//Apple Computer\, Inc//iCal 1.5//EN" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlRDateProperty

public void crawlRDateProperty(net.fortuna.ical4j.model.Property property,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Crawls the RDATE property.

The dates and date-times are converted to xmlschema form.

   ical:
   RDATE:19980118T073000Z
   
   n3:
   _:VEventNode ncal:rdate [
         a ncal:NcalDateTime ;
         "1998-01-18T07:30:00Z"ˆˆxsd:datetime
   ] .
   
   ical:
   RDATE:VALUE=DATE;20020703
   
   n3:
   _:VEventNode ncal:rdate [
         a ncal:NcalDateTime ;
         ncal:date "2007-07-03ˆˆxsd:date
   ] .
   
   ical:
   RDATE;TZID=/softwarestudio.org/Olson_20011030_5/America/New_York:
    20020630T090000
        
   n3:
    _:VeventNode ncal:rdate [
         "2002-06-30T09:00:00"ˆˆxsd:dateTime ;
         ncal:ncalTimezone 
           <this-calendar-baseuri/softwarestudio.org/Olson_20011030_5/America/New_York>
    ] . 
    
    
   ical: 
   RDATE;VALUE=DATE:19970304,19970504,19970704,19970904
   
   n3:
   _:VEventNode 
         ncal:rdate [
              a ncal:NcalDateTime ;
              ncal:date "1997-03-04ˆˆxsd:date
          ] ;
          ncal:rdate [
              a ncal:NcalDateTime ;
              ncal:date "1997-05-04ˆˆxsd:date
          ] ;
          ncal:rdate [
              a ncal:NcalDateTime ;
              ncal:date "1997-07-04ˆˆxsd:date
          ] ;
          ncal:rdate [
              a ncal:NcalDateTime ;
              ncal:date "1997-09-04ˆˆxsd:date
          ] .
   

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlRecurrenceIdProperty

public void crawlRecurrenceIdProperty(net.fortuna.ical4j.model.Property property,
                                      Resource parentNode,
                                      RDFContainer rdfContainer)
Crawls the RECURRENCE-ID property.

The dates and date-times are converted to xmlschema form. The timezones are expressed in datatypes.

   ical:
   RECURRENCE-ID;VALUE=DATE:19960401
   
   n3:
   _:VEventNode ncal:recurrenceId [
         a ncal:RecurrenceIdentifier ;
         ncal:recurrenceIdDateTime [
             a ncal:NcalDateTime ;
             ncal:date "1998-04-01"^^xsd:date
         ]
   ] .
  
  
   ical:
   RECURRENCE-ID;RANGE=THISANDFUTURE:19960120T120000Z
   
   n3:
   _VEventNode ncal:recurrenceId [
         a ncal:RecurrenceIdentifier ;
         ncal:range ncal:thisAndFutureRange ;
         ncal:recurrenceIdDateTime [
             a ncal:NcalDateTime ;
             ncal:dateTime "1996-01-20T12:00:00Z"^xsd:dateTime
         ]
   ] .
  

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlRelatedToProperty

public void crawlRelatedToProperty(net.fortuna.ical4j.model.Property property,
                                   Resource parentNode,
                                   RDFContainer rdfContainer)
Crawls the RELATED-TO property.
   ical:
   RELATED-TO:<19960401-080045-4000F192713-0052@host1.com>
   
   n3:
   _:VEventNode ncal:relatedToParent 
        "<19960401-080045-4000F192713-0052@host1.com>" .
  
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlRepeatProperty

public void crawlRepeatProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the REPEAT property.
   ical:
   REPEAT:3
   
   n3:
   _:VEventNode ncal:repeat 3ˆˆxsd:integer .
  
   

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlRequestStatusProperty

public void crawlRequestStatusProperty(net.fortuna.ical4j.model.Property property,
                                       Resource parentNode,
                                       RDFContainer rdfContainer)
Crawls the REQUEST-STATUS property.
   ical:
   REQUEST-STATUS:4.1;Event conflict. Date/time is busy.
   
   n3:
   _:VEventNode ncal:requestStatus [
         a ncal:RequestStatus;
         ncal:returnStatus "4.1" ;
         ncal:statusDescription "Event conflict. Date/time is busy."
   ]
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlResourcesProperty

public void crawlResourcesProperty(net.fortuna.ical4j.model.Property property,
                                   Resource parentNode,
                                   RDFContainer rdfContainer)
Crawls the RESOURCES property.
Note that this property allows for multiple comma-separated values
   ical:
   RESOURCES:EASEL,PROJECTOR,VCR
   
   n3:
   _:VEventNode ncal:resources "EASEL", "PROJECTOR", "VCR" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlRRuleProperty

public void crawlRRuleProperty(net.fortuna.ical4j.model.Property property,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Crawls the RRULE property.

This property has RECUR value type. This neccessitates an introduction of an intermediate node. The reccurrence parameters are attached to this intermediate node (as literals with appropriate datatypes)

   
   ical:
   RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=10
   
   n3:
   _:VeventNode ncal:rrule [
         a ncal:RecurrenceRule ;
         ncal:freq ncal:yearly ;
         ncal:interval "5"^^xsd:integer ;
         ncal:byday [
             a ncal:BydayRulePart ;
             ncal:bydayWeekday ncal:sunday ;
             ncal:bydayModifier "-1"^^xsd:integer 
         ] ;
         ncal:bymonth "10"^^xsd:integer ;
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in
See Also:
crawlRecur(String, Resource, RDFContainer)

crawlSequenceProperty

public void crawlSequenceProperty(net.fortuna.ical4j.model.Property property,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the SEQUENCE property.
   ical:
   SEQUENCE:20
   
   n3:
   _:VEventNode ncal:sequence 20ˆˆxsd:integer .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlStatusProperty

public void crawlStatusProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer,
                                net.fortuna.ical4j.model.Component component)
Crawls the STATUS property.
Note that this property has different sets of possible values depending on the component it is attached to. This is modelled as three different RDF properties (ncal:eventStatus, ncal:journalStatus and ncal:todoStatus). Each of them has a different domain and range. Consult the NCAL documentation for more details.
   ical:
   STATUS:COMPLETED
   
   n3:
   _:VEventNode ncal:eventStatus ncal:completedStatus .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in
component - the component this property is attached to

crawlSummaryProperty

public void crawlSummaryProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the SUMMARY property.
   ical:
   SUMMARY:Department Party
   
   n3:
   _:VEventNode ncal:summary "Department Party" .
   

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlTranspProperty

public void crawlTranspProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the TRANSP property.
   ical:
   TRANSP:OPAQUE
   
   n3:
   _:VEventNode ncal:transp ncal:OpaqueTransparency .
   

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlTriggerProperty

public void crawlTriggerProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the TRIGGER property.
   ical:
   TRIGGER;RELATED=START:-PT30M
   
   n3:
   _:ValarmNode ncal:trigger [
         a ncal:Trigger ;
         ncal:related ncal:startTriggerRelation ;
         ncal:triggerDuration "-PT30M"^^xsd:dayTimeDuration 
   ] .
   
   ical:
   TRIGGER;VALUE=DATE-TIME:20060412T230000Z
   
   n3:
   _:ValarmNode ncal:trigger [
         a ncal:Trigger ;
         ncal:triggerDateTime "2006-04-12T23:00:00Z"^^xsd:dateTime
   ] .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlTzidProperty

public void crawlTzidProperty(net.fortuna.ical4j.model.Property property,
                              Resource parentNode,
                              RDFContainer rdfContainer)
Crawls the TZID property.

Note that this is a property, that occurs within the VTIMEZONE component. It is something completely different from the TZID parameter.

   ical:
   TZID:/softwarestudio.org/Olson_20011030_5/America/New_York
   
   n3:
   _:VTimezoneNode ncal:tzid 
        "/softwarestudio.org/Olson_20011030_5/America/New_York" .
   

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlTzNameProperty

public void crawlTzNameProperty(net.fortuna.ical4j.model.Property property,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the TZNAME property.
   ical:
   TZNAME:EDT
   
   n3:
   _:VTimezoneNode ncal:tzname 
        "/softwarestudio.org/Olson_20011030_5/America/New_York" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlTzOffsetFromProperty

public void crawlTzOffsetFromProperty(net.fortuna.ical4j.model.Property property,
                                      Resource parentNode,
                                      RDFContainer rdfContainer)
Crawls the TZOFFSETFROM property.
   ical:
   TZOFFSETFROM:-0500
   
   n3:
   _:VTimezoneNode ncal:tzoffsetfrom "-0500" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlTzOffsetToProperty

public void crawlTzOffsetToProperty(net.fortuna.ical4j.model.Property property,
                                    Resource parentNode,
                                    RDFContainer rdfContainer)
Crawls the TZOFFSETTO property.
   ical:
   TZOFFSETTO:+1000
   
   n3:
   _:VTimezoneNode ncal:tzoffsetto "+1000" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlTzUrlProperty

public void crawlTzUrlProperty(net.fortuna.ical4j.model.Property property,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Crawls the TZURL property.

Note that the value of this property is an URI:

   ical:
   TZURL:http://timezones.r.us.net/tz/US-California-Los_Angeles
   
   n3:
   _:VTimezoneNode ncal:tzurl 
        <http://timezones.r.us.net/tz/US-California-Los_Angeles> .
   <http://timezones.r.us.net/tz/US-California-Los_Angeles> a rdfs:Resource .
   

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlUidProperty

public void crawlUidProperty(net.fortuna.ical4j.model.Property property,
                             Resource parentNode,
                             RDFContainer rdfContainer)
Crawls the UID property.
   ical:
   UID:20020630T230445Z-3895-69-1-7@jammer
   
   n3:
   _:VTimezoneNode ncal:uid "20020630T230445Z-3895-69-1-7@jammer" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlUrlProperty

public void crawlUrlProperty(net.fortuna.ical4j.model.Property property,
                             Resource parentNode,
                             RDFContainer rdfContainer)
Crawls the URL property.
   ical:
   URL:http://abc.com/pub/calendars/jsmith/mytime.ics
   
   n3:
   _:VTimezoneNode ncal:url 
        <http://abc.com/pub/calendars/jsmith/mytime.ics> .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlVersionProperty

public void crawlVersionProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the VERSION property.
   ical:
   VERSION:2.0
   
   n3:
   _:VCalendarNode ncal:version "2.0" .
 

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlXtendedProperty

public void crawlXtendedProperty(net.fortuna.ical4j.model.Property property,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Extended properties are disregarded at the moment.

Parameters:
property - the Property instance to be crawled
parentNode - the parent component node
rdfContainer - the container to store the generated statements in

crawlAltRepParameter

public void crawlAltRepParameter(net.fortuna.ical4j.model.Parameter parameter,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
The altrep parameter is ignored it should be represented as appropriate altRep properties

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlCnParameter

public void crawlCnParameter(net.fortuna.ical4j.model.Parameter parameter,
                             Resource parentNode,
                             RDFContainer rdfContainer)
The CN parameter is ignored. It is covered by nco:fullname property of the nco:Contact instance referenced by the appropriate ncal:Organizer or ncal:Attendee instance with a ncal:involvedContact link

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
crawlOrganizerProperty(Property, Resource, RDFContainer), crawlAttendeeProperty(Property, Resource, RDFContainer)

crawlCuTypeParameter

public void crawlCuTypeParameter(net.fortuna.ical4j.model.Parameter parameter,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the CUTYPE parameter.
   ical:
   ATTENDEE;CUTYPE=GROUP:MAILTO:ietf-calsch@imc.org
   
   n3:
   _:VeventNode ncal:attendee [
         a ncal:Attendee ;
         ncal:cutype ncal:groupUserType ;
         ncal:involvedContact [
             a nco:Contact ;
             nco:hasEmailAddress [
                 a nco:EmailAddress ;
                 nco:emailAddress "ietf-calsch@imc.org"
             ]
         ]
   ] . 
 

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlDelegatedToParameter

public void crawlDelegatedToParameter(net.fortuna.ical4j.model.Parameter parameter,
                                      Resource parentNode,
                                      RDFContainer rdfContainer)
Crawls the DELEGATED-TO parameter
 ical:
 ATTENDEE;DELEGATED-TO="MAILTO:jdoe@host.com","MAILTO:jqpublic@
  host.com":MAILTO:jsmith@host.com
  
 n3:
 _:veventNode ncal:attendee [
      a ncal:Attendee ;
      ncal:delegatedTo [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jdoe@host.com"
          ] 
      ];
      ncal:delegatedTo [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jqpublic@host.com"
          ] 
      ];
      ncal:involvedContact [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jsmith@host.com"
          ]
      ]
 ] .
 

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlDelegatedFromParameter

public void crawlDelegatedFromParameter(net.fortuna.ical4j.model.Parameter parameter,
                                        Resource parentNode,
                                        RDFContainer rdfContainer)
Crawls the DELEGATED-FROM parameter
 ical:
 ATTENDEE;DELEGATED-FROM="MAILTO:jsmith@host.com":MAILTO:
  jdoe@host.com
  
 n3:
 _:veventNode ncal:attendee [
      a ncal:Attendee ;
      ncal:delegatedFrom [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jsmith@host.com"
          ] 
      ];
      ncal:involvedContact [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jdoe@host.com"
          ]
      ]
 ] .
 

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlDirParameter

public void crawlDirParameter(net.fortuna.ical4j.model.Parameter parameter,
                              Resource parentNode,
                              RDFContainer rdfContainer)
Crawls the DIR parameter
 ical:
 ORGANIZER;DIR="ldap://host.com:6666/o=eDABC%20Industries,c=3DUS??
  (cn=3DBJim%20Dolittle)":MAILTO:jimdo@host1.com
  
 n3:
 _:veventNode ncal:organizer [
      a ncal:Organizer ;
      ncal:dir <ldap://host.com:6666/o=eDABC%20Industries,c=3DUS??(cn=3DBJim%20Dolittle)> ;
      ncal:involvedContact [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jimdo@host1.com"
          ]
      ]
 ] .
 

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlEncodingParameter

public void crawlEncodingParameter(net.fortuna.ical4j.model.Parameter parameter,
                                   Resource parentNode,
                                   RDFContainer rdfContainer)
Crawls the ENCODING parameter.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
for examples

crawlFbTypeParameter

public void crawlFbTypeParameter(net.fortuna.ical4j.model.Parameter parameter,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the FBTYPE parameter.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
for examples

crawlLanguageParameter

public void crawlLanguageParameter(net.fortuna.ical4j.model.Parameter parameter,
                                   Resource parentNode,
                                   RDFContainer rdfContainer)
The language parameter is ignored. It should be expressed as a language tag in a literal

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlMemberParameter

public void crawlMemberParameter(net.fortuna.ical4j.model.Parameter parameter,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the MEMBER parameter
 ical:
 ATTENDEE;MEMBER="MAILTO:projectA@host.com","MAILTO:projectB@host.
  com":MAILTO:janedoe@host.com
  
 n3:
 _:veventNode ncal:attendee [
      a ncal:Attendee ;
      ncal:member [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "projectA@host.com"
          ] 
      ];
      ncal:member [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "projectB@host.com"
          ] 
      ];
      ncal:involvedContact [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "janedoe@host.com"
          ]
      ]
 ] .
 

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlPartStatParameter

public void crawlPartStatParameter(net.fortuna.ical4j.model.Parameter parameter,
                                   Resource parentNode,
                                   RDFContainer rdfContainer)
Crawls the PARTSTAT parameter.
 ical:
 ATTENDEE;PARTSTAT=DECLINED:MAILTO:jsmith@host.com
 
 n3:
 _:veventNode ncal:attendee [
      a ncal:Attendee ;
      ncal:partstat ncal:declinedParticipationStatus ;
      ncal:involvedContact [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jsmith@host.com"
          ]
      ]
 ] .
 

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlRangeParameter

public void crawlRangeParameter(net.fortuna.ical4j.model.Parameter parameter,
                                Resource parentNode,
                                RDFContainer rdfContainer)
Crawls the RANGE parameter.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
for examples

crawlRelatedParameter

public void crawlRelatedParameter(net.fortuna.ical4j.model.Parameter parameter,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
Crawls the RELATED parameter.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
for examples

crawlRelTypeParameter

public void crawlRelTypeParameter(net.fortuna.ical4j.model.Parameter parameter,
                                  Resource parentNode,
                                  RDFContainer rdfContainer)
The reltype parameter is ignored, it should be covered by the relatedTo property. Three possible values of the RELTYPE parameter are expressed as three different properties: ncal:relatedToParent ncal:relatedToSibling and ncal:relatedToChild.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlRoleParameter

public void crawlRoleParameter(net.fortuna.ical4j.model.Parameter parameter,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Crawls the ROLE parameter.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
for examples

crawlRsvpParameter

public void crawlRsvpParameter(net.fortuna.ical4j.model.Parameter parameter,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Crawls the RSVP parameter.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
for examples

crawlSentByParameter

public void crawlSentByParameter(net.fortuna.ical4j.model.Parameter parameter,
                                 Resource parentNode,
                                 RDFContainer rdfContainer)
Crawls the SENT-BY parameter.
 ical:
 ORGANIZER;SENT-BY:"MAILTO:sray@host.com":MAILTO:jsmith@host.com
 
 n3:
 _:veventNode ncal:organizer [
      a ncal:Organizer;
      ncal:sentBy [
          a nco:Contact;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "sray@host.com"  
          ]
      ] ;
      ncal:involvedContact [
          a nco:Contact ;
          nco:hasEmailAddress [
              a nco:EmailAddress ;
              nco:emailAddress "jsmith@host.com" 
          ]
      ]
 ] .
 

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlTzidParameter

public void crawlTzidParameter(net.fortuna.ical4j.model.Parameter parameter,
                               Resource parentNode,
                               RDFContainer rdfContainer)
Note that this parameter is ignored in the NCAL ontology. It is treated differently. If a value of a property that has TZID parameter is expressed as an instance of the NcalDateTime with the appropriate ncalTimezone property.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

crawlValueParameter

public void crawlValueParameter(net.fortuna.ical4j.model.Parameter parameter,
                                Resource parentNode,
                                RDFContainer rdfContainer)
This parameter is ignored. Each property that accepts VALUE parameter is expressed as an instance of an appropriate class. See the

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in
See Also:
getRdfPropertyValue(RDFContainer, Property, String)

crawlXParameter

public void crawlXParameter(net.fortuna.ical4j.model.Parameter parameter,
                            Resource parentNode,
                            RDFContainer rdfContainer)
Extended parameters are disregarded at the moment.

Parameters:
parameter - the Parameter instance to be crawled
parentNode - the parent node
rdfContainer - the container to store the generated statements in

reportModifiedDataObject

protected void reportModifiedDataObject(DataObject object)
Overrides:
reportModifiedDataObject in class CrawlerBase

reportNewDataObject

protected void reportNewDataObject(DataObject object)
Overrides:
reportNewDataObject in class CrawlerBase

reportUnmodifiedDataObject

protected void reportUnmodifiedDataObject(String url)
Overrides:
reportUnmodifiedDataObject in class CrawlerBase

convertIcalDurationToXSDDayTimeDuration

public String convertIcalDurationToXSDDayTimeDuration(String string)
Converts the ICAL duration to XSD duration. Ical supports week-based durations, xsd doesn't.

Parameters:
string - the ical duration
Returns:
the xsd duration


Copyright © 2010 Aperture Development Team. All Rights Reserved.