You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@marmotta.apache.org by ja...@apache.org on 2014/01/08 16:25:53 UTC
[37/51] [abbrv] [partial] MARMOTTA-397: Reorganized and renamed
Marmotta Sesame Tools
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/HasLocation.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/HasLocation.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/HasLocation.java
new file mode 100644
index 0000000..2ec3ec8
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/HasLocation.java
@@ -0,0 +1,89 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+import org.rometools.feed.module.georss.GeoRSSModule;
+import org.rometools.feed.module.portablecontacts.ContactModule;
+
+/**
+ * <p>Location is a concept which can be used inside the atom:entry
+ * level, atom:author and activity:object. Location can be specified
+ * via geographic coordinates, a street address, a free-form location
+ * name or a combination of these. Geographic coordinates should be
+ * included as a geo:point element as described by the GeoRSS
+ * specification. Addresses should be included using a poco:address
+ * element defined at Portable Contacts specification. The entry level
+ * location represents the location of the author at the time the
+ * activity was performed. The author level location represents the
+ * primary location of the author. Finally, the location within other
+ * objects represents the physical location of those objects. All
+ * location fields are optional. For free form addresses use the
+ * poco:formatted field.
+ *</p>
+ *<p><a class='info' href='#location-poco'>Figure 1<span> (</span><span class='info'>Location Example</span><span>)</span></a>
+ *</p>
+ *<p><br /><hr class="insert" />
+ *<a name="location-poco"></a>
+ *</p>
+ *<div style='display: table; width: 0; margin-left: 3em; margin-right: auto'><pre><entry>
+ * <id>tag:world:activity:1212121212121</id>
+ * <title>Rob liked Goldeberg's Deli</title>
+ * <author>
+ * <name>Rob Dolin</name>
+ * <id>tag:world:person:1212121212121</id>
+ * <link rel="alternate" type="text/html" href="http://robdolin.com" />
+ * <poco:address>
+ * <poco:locality>Marina del Rey</poco:locality>
+ * <poco:region>CA</poco:region>
+ * <poco:postalCode>90292</poco:postalCode>
+ * <poco:country>US</poco:country>
+ * </poco:address>
+ * </author>
+ * <activity:object>
+ * <activity:object-type>http://activitystrea.ms/schema/1.0/place</object-type>
+ * <id>tag:world:place:1212121212121</id>
+ * <title>Goldberg's Deli</title>
+ * <link rel="alternate" type="text/html" href="http://www.deli.com" />
+ * <geo:point>33.9777 -118.4351</geo:point>
+ * <poco:address>
+ * <poco:streetAddress>14016 Bora Bora Way</poco:streetAddress>
+ * <poco:locality>Marina del Rey</poco:locality>
+ * <poco:region>CA</poco:region>
+ * <poco:postalCode>90292</poco:postalCode>
+ * <poco:country>US</poco:country>
+ * </poco:address>
+ * </activity:object>
+ * <geo:point>33.9777 -119.4351</geo:point>
+ * <activity:verb>http://activitystrea.ms/schema/1.0/like</activity:verb>
+ *</entry></pre></div><p>
+ *<table border="0" cellpadding="0" cellspacing="2" align="center"><tr><td align="center"><font face="monaco, MS Sans Serif" size="1"><b> Figure 1: Location Example </b></font><br /></td></tr></table><hr class="insert" />
+ *
+ *</p>
+ * @author robert.cooper
+ */
+public interface HasLocation {
+
+
+ public GeoRSSModule getLocation();
+
+ public void setLocation(GeoRSSModule location);
+
+ public ContactModule getAddress();
+
+ public void setAddress(ContactModule address);
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/List.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/List.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/List.java
new file mode 100644
index 0000000..8a79ac7
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/List.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ *<p>The "list" object type represents a collection of related
+ * objects.
+ *</p>
+ *<p>The "list" object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/list</tt>.
+ *</p>
+ *<p>A list has no additional components.
+ *</p>
+
+ * @author robert.cooper
+ */
+public class List extends ActivityObject
+{
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/list";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Mood.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Mood.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Mood.java
new file mode 100644
index 0000000..ba37cb4
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Mood.java
@@ -0,0 +1,79 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+package org.rometools.feed.module.activitystreams.types;
+
+
+/**
+ *
+ *<p>Mood describes the mood of the user when the activity was
+ * performed. This is usually collected via an extra field in the user
+ * interface used to perform the activity. For the purpose of this
+ * schema, a mood is a freeform, short mood keyword or phrase along
+ * with an optional mood icon image.
+ *</p>
+ *<p>Moods are included via a mood element in the namespace <tt>http://activitystrea.ms/context/</tt>.
+ *</p>
+ *<p>The content of the mood element is the mood keyword or
+ * phrase.
+ *</p>
+ *<p>The mood element may have an optional <tt>icon</tt>
+ * attribute which contains the URL of a mood icon image. The mood icon
+ * image SHOULD be small and appropriate to be displayed alongside the
+ * mood keyword at a normal text size.
+ *</p>
+ * @author robert.cooper
+ */
+public class Mood {
+ private String iconUrl;
+ private String text;
+
+ /**
+ * Set the value of iconUrl
+ *
+ * @param newiconUrl new value of iconUrl
+ */
+ public void setIconUrl(String newiconUrl) {
+ this.iconUrl = newiconUrl;
+ }
+
+ /**
+ * Get the value of iconUrl
+ *
+ * @return the value of iconUrl
+ */
+ public String getIconUrl() {
+ return this.iconUrl;
+ }
+
+ /**
+ * Set the value of text
+ *
+ * @param newtext new value of text
+ */
+ public void setText(String newtext) {
+ this.text = newtext;
+ }
+
+ /**
+ * Get the value of text
+ *
+ * @return the value of text
+ */
+ public String getText() {
+ return this.text;
+ }
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Note.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Note.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Note.java
new file mode 100644
index 0000000..63b20c5
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Note.java
@@ -0,0 +1,59 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ *<p>The "note" Object type represents short-form text messages. This
+ * Object type is intended for use in "micro-blogging" and in systems
+ * where users are invited to publish short, often plain-text messages
+ * whose useful lifespan is generally shorter than that of an article
+ * or weblog entry.
+ *</p>
+ *<p>A note is similar in structure to an article, but it does not
+ * have a title and its body tends to be shorter. Applications will
+ * often display the entire content of a note in an activity stream UI,
+ * whereas they MAY display only the title or the title and summary for
+ * a weblog entry.
+ *</p>
+ *<p>The "note" Object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/note</tt>.
+ *</p>
+ *<p>A note has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Content</dt>
+ *<dd>The content of the comment. Represented in
+ * JSON as a property called <tt>content</tt>
+ * whose value is a JSON string containing a fragment of HTML that
+ * represents the content. Publishers SHOULD include any markup
+ * necessary to achieve a similar presentation to that on the
+ * publisher's own HTML pages, including any links that the service
+ * automatically adds. Processors MAY remove all HTML markup and
+ * consider the comment to be plain text.
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class Note extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/note";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Person.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Person.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Person.java
new file mode 100644
index 0000000..e2009a8
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Person.java
@@ -0,0 +1,84 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+import com.sun.syndication.feed.atom.Link;
+
+/**
+ * <p>The "person" Object type represents a user account. This is often
+ represents a person, but might also be a company or fictitious
+ * character that is being represented by a user account.
+ *</p>
+ *<p>The "person" Object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/person</tt>.
+ *</p>
+ *<p>A person has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Display Name</dt>
+ *<dd>A name that can be used for the
+ * person in the user interface. This is often a name by which the
+ * individual is known in a given context; no restriction is placed
+ * on what kind of name may be used here. Represented by the Name
+ * component of the base Object Construct.
+ *</dd>
+ *<dt>Avatar</dt>
+ *<dd>A link to an "avatar" or "userpic" image
+ * for the user. Represented by the Representative Image component
+ * of the base Object Construct.
+ *</dd>
+ *</dl></blockquote>
+ @author robert.cooper
+ */
+public class Person extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/person";
+ }
+
+
+
+ /**
+ * Get the value of avatar
+ *
+ * @return the value of avatar
+ */
+ public Link getAvatar() {
+ Link result = this.findRelatedLink("avatar");
+ if(result != null){
+ return result;
+ }
+ return this.findRelatedLink("userpic");
+ }
+
+ /**
+ * Set the value of avatar
+ *
+ * @param newavatar new value of avatar
+ */
+ public void setAvatar(Link newavatar) {
+ Link old = this.getAvatar();
+ if(old != null){
+ this.getOtherLinks().remove(old);
+ }
+ newavatar.setRel("avatar");
+ this.getOtherLinks().add(newavatar);
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Photo.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Photo.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Photo.java
new file mode 100644
index 0000000..6f57edb
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Photo.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "photo" object type represents a graphical still image.
+ *</p>
+ *<p>The "photo" Object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/photo</tt>.
+ *</p>
+ *<p>A photo has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Thumbnail</dt>
+ *<dd>A link to a thumbnail version of the
+ * image. Represented by the Representative Image component of the
+ * base Object Construct. Processors MAY ignore thumbnails that are
+ * of an inappropriate size for their user interface.
+ *</dd>
+ *<dt>Larger Image</dt>
+ *<dd>A Media Link Construct linking to a
+ * larger -- ideally, full-size -- version of the photo intended
+ * for standalone viewing. Represented in JSON as a property named
+ * <tt>fullImage</tt> whose value is a JSON
+ * object with properties as defined in [TODO: xref the JSON
+ * serialization of a Media Link Construct].
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class Photo extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/photo";
+ }
+
+
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/PhotoAlbum.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/PhotoAlbum.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/PhotoAlbum.java
new file mode 100644
index 0000000..2e4e2a1
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/PhotoAlbum.java
@@ -0,0 +1,47 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "photo album" object type represents a collection of
+ * images.
+ *</p>
+ *<p>The "photo album" object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/photo-album</tt>.
+ *</p>
+ *<p>The photo album has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Preview Image Link</dt>
+ *<dd>A Media Link Construct
+ * describing an image file that can be used as a preview image for
+ * the album. Represented by the Representative Image component of
+ * the base Object Construct. Processors MAY ignore thumbnails that
+ * are of an inappropriate size for their user interface.
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class PhotoAlbum extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/photo-album";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Place.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Place.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Place.java
new file mode 100644
index 0000000..4d650b0
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Place.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "place" object type represents a location on Earth.
+ *</p>
+ *<p>The "place" object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/place</tt>.
+ *</p>
+ *<p>A place has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Latitude</dt>
+ *<dd>The latitude of the place as a point on
+ * Earth. Represented in JSON as a property named <tt>latitude</tt> whose value is a JSON number
+ * containing a decimal representation of the latitude in
+ * degrees.
+ *</dd>
+ *<dt>Longitude</dt>
+ *<dd>The longitude of the place as a point on
+ * Earth. Represented in JSON as a property named <tt>longitude</tt> whose value is a JSON number
+ * containing a decimal representation of the longitude in
+ * degrees.
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class Place extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/place";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Playlist.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Playlist.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Playlist.java
new file mode 100644
index 0000000..dfea5e8
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Playlist.java
@@ -0,0 +1,38 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ *
+ *<p>The "playlist" object type represents an ordered list of
+ * time-based media items, such as video and audio objects.
+ *</p>
+ *<p>The "playlist" object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/playlist</tt>.
+ *</p>
+ *<p>A playlist has no additional components.
+ *</p>
+ * @author robert.cooper
+ */
+public class Playlist extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/playlist";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Product.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Product.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Product.java
new file mode 100644
index 0000000..efee22d
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Product.java
@@ -0,0 +1,54 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "product" object type represents a commercial good or
+ * service.
+ *</p>
+ *<p>The "product" object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/product</tt>.
+ *</p>
+ *<p>A product has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Thumbnail</dt>
+ *<dd>A link to a thumbnail-sized image that
+ * contains a photo of the product. Represented by the
+ * Representative Image component of the base Object Construct.
+ * Processors MAY ignore thumbnails that are of an inappropriate
+ * size for their user interface.
+ *</dd>
+ *<dt>Larger Image</dt>
+ *<dd>A Media Link Construct linking to a
+ * larger -- ideally, full-size -- version of the photo of the
+ * product. Represented in JSON as a property named <tt>fullImage</tt> whose value is a JSON object with
+ * properties as defined in [TODO: xref the JSON serialization of a
+ * Media Link Construct].
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class Product extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/product";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Review.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Review.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Review.java
new file mode 100644
index 0000000..06df4b8
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Review.java
@@ -0,0 +1,69 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "review" object type represents a primarily prose-based
+ * commentary on another object.
+ *</p>
+ *<p>The "review" object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/review</tt>.
+ *</p>
+ *<p>A review has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Title</dt>
+ *<dd>The title of the review. Represented by the
+ * Name component of the base Object Construct. Many systems do not
+ * have the concept of a title for a review; such systems MUST omit
+ * the Name component. Processors SHOULD refer to such reviews as
+ * simply being "a review", with appropriate localization, if they
+ * are to be described in a sentence.
+ *</dd>
+ *<dt>Content</dt>
+ *<dd>The content of the comment. Represented in
+ * JSON as a property called <tt>content</tt>
+ * whose value is a JSON string containing a fragment of HTML that
+ * represents the content. Publishers SHOULD include any markup
+ * necessary to achieve a similar presentation to that on the
+ * publisher's own HTML pages, including any links that the service
+ * automatically adds. Processors MAY remove all HTML markup and
+ * consider the comment to be plain text.
+ *</dd>
+ *<dt>Reviewed Object</dt>
+ *<dd>The Object Construct representing
+ * the item that this review applies to. Represented as the In
+ * Reply To Object component of the base Object Construct.
+ *</dd>
+ *<dt>Rating</dt>
+ *<dd>A rating for the item, given as a number
+ * between 1.0 and 5.0 inclusive with one decimal place of
+ * precision. Represented in JSON as a property called <tt>rating</tt> whose value is a JSON number giving
+ * the rating.
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class Review extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/review";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Service.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Service.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Service.java
new file mode 100644
index 0000000..b7d5584
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Service.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "service" Object type represents a website, personal website
+ * or blog, business, brand, or other entity that performs some kind of
+ * work for other entities, people, or services, or acts as kind of
+ * container for other objects.
+ *</p>
+ *<p>The "service" Object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/service</tt>.
+ *</p>
+ *<p>A service has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>icon</dt>
+ *<dd>A Media Link Construct representing a link to
+ * a small image representing the service. Represented in JSON as a
+ * property named <tt>icon</tt> whose value is a
+ * JSON object with properties as defined in [TODO: xref the JSON
+ * serialization of a Media Link Construct]. The linked image MUST
+ * have an aspect ratio of one (horizontal) to one (vertical) and
+ * SHOULD be suitable for presentation at a small size.
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class Service extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/service";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Song.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Song.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Song.java
new file mode 100644
index 0000000..d6be3ef
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Song.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+package org.rometools.feed.module.activitystreams.types;
+
+
+/**
+ * <p>The "song" Object type represents a song or a recording of a
+ * song.
+ *</p>
+ *<p>Objects of type Song might contain information about the song or
+ * recording, or they might contain some representation of the
+ * recording itself. In the latter case, the song SHOULD also be
+ * annotated with the "audio" object type as described in <a class='info' href='#audio'>Section 3.2.2<span> (</span><span class='info'>Audio</span><span>)</span></a> and use its properties. This type should only
+ * be used when the publisher can guarantee that the object is a song
+ * rather than merely a generic audio stream.
+ *</p>
+ *<p>The Object type URL for the "song" Object type is <tt>http://activitystrea.ms/schema/1.0/song</tt>.
+ *</p>
+ *<p>A song has no additional components.
+ *</p>
+ * @author robert.cooper
+ */
+public class Song extends ActivityObject {
+ private Audio audio;
+
+ /**
+ * Set the value of audio
+ *
+ * @param newaudio new value of audio
+ */
+ public void setAudio(Audio newaudio) {
+ this.audio = newaudio;
+ }
+
+ /**
+ * Get the value of audio
+ *
+ * @return the value of audio
+ */
+ public Audio getAudio() {
+ return this.audio;
+ }
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/song";
+ }
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Status.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Status.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Status.java
new file mode 100644
index 0000000..7636474
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Status.java
@@ -0,0 +1,46 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "status" Object type represents a human-readable update of
+ * the author's situation, mood, location or other status.
+ *</p>
+ *<p>A status is similar in structure to a note, but carries the
+ * additional meaning that the content is primarily describing
+ * something its author is doing, feeling or experiencing.
+ *</p>
+ *<p>A consumers MAY consider the content of the most recent status
+ * object it encountered to be the user's current status, unless the
+ * most recent status update is old. When a status becomes too old is
+ * not defined by this specification.
+ *</p>
+ *<p>The "status" object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/status</tt>.
+ *</p>
+ *<p>A status has the same components as a note.
+ *</p>
+ * @author robert.cooper
+ */
+public class Status extends ActivityObject {
+
+ @Override
+ public String getTypeIRI() {
+ return "http://activitystrea.ms/schema/1.0/status";
+ }
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Verb.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Verb.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Verb.java
new file mode 100644
index 0000000..9f2b0f3
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Verb.java
@@ -0,0 +1,205 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the icense for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+package org.rometools.feed.module.activitystreams.types;
+
+
+/**
+ *
+ * @author robert.cooper
+ */
+public enum Verb {
+ /**
+ * The "mark as favorite" Verb indicates that the Subject marked the Object as an item of
+ * special interest. Objects so marked often appear in a collection of such Objects which
+ * MAY be published as a feed of entries annotated with this Verb.
+ * If a particular service uses favorites as a mechanism by which a user can recall
+ * items that were earlier marked, it MAY be appropriate to also mark activities of
+ * this type with the "save" Verb as described in Section 3.1.8.
+ * The verb URI for the "mark as favorite" Verb is http://activitystrea.ms/schema/1.0/favorite.
+ */
+ MARK_AS_FAVORITE("http://activitystrea.ms/schema/1.0/favorite"),
+ /**
+ * The "start following" Verb indicates that the Subject began following the activity
+ * of the Object. In most cases, the Object of this Verb will be a user, but it can
+ * potentially be of any type that can sensibly generate activity.
+ *
+ * The verb URI for the "start following" Verb is http://activitystrea.ms/schema/1.0/follow.
+ *
+ * Processors MAY ignore (silently drop) successive identical "start following" activities
+ * regardless of whether they maintain state sufficient to determine (A), (B), or (C) above.
+ */
+ START_FOLLOWING("http://activitystrea.ms/schema/1.0/follow"),
+ /**
+ * The "mark as liked" verb indicates that the actor indicated that it likes the object.
+ *
+ * The verb URI for the "mark as liked" Verb is http://activitystrea.ms/schema/1.0/like.
+ */
+ MARK_AS_LIKED("http://activitystrea.ms/schema/1.0/like"),
+ /**
+ * The "make friend" Verb indicates the creation of a friendship that is reciprocated by the object.
+ *
+ * Since this verb implies an activity on the part of its object, processors MUST NOT accept
+ * activities with this Verb unless they are able to verify through some external means that
+ * there is in fact a reciprocated connection. For example, a processor MAY have received a
+ * guarantee from a particular publisher that the publisher will only use this Verb in cases
+ * where a reciprocal relationship exists.
+ *
+ * The verb URI for the "make friend" Verb is http://activitystrea.ms/schema/1.0/make-friend.
+ */
+ MAKE_FRIEND("http://activitystrea.ms/schema/1.0/make-friend"),
+ /**
+ * The "join" Verb indicates that the actor has become a member of the Object.
+ * This specification only defines the meaning of this Verb when its Object is a Group,
+ * though implementors SHOULD be prepared to handle other Object types as meaning
+ * MAY be provided by extension specifications.
+ *
+ * Processors MAY ignore (silently drop) successive identical "join" activities
+ * regardless of whether they maintain state sufficient to determine (A) or (B) above.
+ *
+ * The "join" Verb is identified by the URI http://activitystrea.ms/schema/1.0/join.
+ */
+ JOIN("http://activitystrea.ms/schema/1.0/join"),
+ /**
+ * The "play" verb indicates that the subject spent some time enjoying the object.
+ * For example, if the object is a video this indicates that the subject watched all or part of the video.
+ *
+ * The "play" Verb is identified by the URI http://activitystrea.ms/schema/1.0/play.
+ */
+ PLAY("http://activitystrea.ms/schema/1.0/play"),
+ /**
+ * The "Post" Verb is described in section 8 of the AtomActivity specification.
+ * It is only referenced here for completeness.
+ *
+ * http://activitystrea.ms/schema/1.0/post
+ */
+ POST("http://activitystrea.ms/schema/1.0/post"),
+ /**
+ * The "save" Verb indicates that the Subject has called out the Object as being of
+ * interest primarily to him- or herself. Though this action MAY be shared publicly,
+ * the implication is that the Object has been saved primarily for the actor's own
+ * benefit rather than to show it to others as would be indicated by the "share"
+ * Verb (Section 3.1.9).
+ *
+ * The "save" Verb is identified by the URI http://activitystrea.ms/schema/1.0/save.
+ */
+ SAVE("http://activitystrea.ms/schema/1.0/save"),
+ /**
+ * The "share" Verb indicates that the Subject has called out the Object to readers.
+ * In most cases, the actor did not create the Object being shared, but is instead
+ * drawing attention to it.
+ *
+ * The "share" Verb is identified by the URI http://activitystrea.ms/schema/1.0/share.
+ */
+ SHARE("http://activitystrea.ms/schema/1.0/share"),
+ /**
+ * The "tag" verb indicates that the actor has identified the presence of a target
+ * inside another object. For example, the actor may have specified that a particular
+ * user appears in a photo.
+ *
+ * The "tag" verb is identified by the URI http://activitystrea.ms/schema/1.0/tag.
+ *
+ * The target of the "tag" verb gives the object in which the tag has been added.
+ * For example, if a user appears in a photo, the activity:object is the user and
+ * the activity:target is the photo.
+ */
+ TAG("http://activitystrea.ms/schema/1.0/tag"),
+ /**
+ * The "update" Verb indicates that the Subject has modified the referenced Object.
+ *
+ * Implementors SHOULD use verbs such as Section 3.1.7 where the Subject is adding
+ * new items to a Section 3.2.8 or similar. Update is reserved for modifications
+ * to existing Objects or data such as changing a user's profile information.
+ *
+ * The "update" Verb is identified by the URI http://activitystrea.ms/schema/1.0/update.
+ */
+ UPDATE("http://activitystrea.ms/schema/1.0/update"),
+ /**
+ *
+ *<p>The "positive RSVP" verb indicates that the actor has made a
+ * positive RSVP for the object. This specification only defines the
+ * meaning of this verb when its object is an event (see <a class='info' href='#event'>Section 4.2.1<span> (</span><span class='info'>Event</span><span>)</span></a>), though implementors SHOULD be prepared to
+ * handle other object types as meaning MAY be provided by extension
+ * specifications.
+ *</p>
+ *<p>The use of this Verb is only appropriate when the RSVP was
+ * created by an explicit action by the actor. It is not appropriate to
+ * use this verb when a user has been added as an attendee by an event
+ * organiser or administrator.
+ *</p>
+ *<p>The verb URI for the "positive RSVP" Verb is <tt>http://activitystrea.ms/schema/1.0/rsvp-yes</tt>.
+ *</p>
+ */
+ RSVP_YES("http://activitystrea.ms/schema/1.0/rsvp-yes"),
+ /**
+ * <p>The "possible RSVP" verb indicates that the actor has made a
+ * possible RSVP for the object. This specification only defines the
+ * meaning of this verb when its object is an event (see <a class='info' href='#event'>Section 4.2.1<span> (</span><span class='info'>Event</span><span>)</span></a>), though implementors SHOULD be prepared to
+ * handle other object types as meaning MAY be provided by extension
+ * specifications.
+ *</p>
+ *<p>The use of this Verb is only appropriate when the RSVP was
+ * created by an explicit action by the actor. It is not appropriate to
+ * use this verb when a user has been added as an attendee by an event
+ * organiser or administrator.
+ *</p>
+ *<p>The verb URI for the "possible RSVP" Verb is <tt>http://activitystrea.ms/schema/1.0/rsvp-maybe</tt>.
+ *</p>
+ */
+ RSVP_MAYBE("http://activitystrea.ms/schema/1.0/rsvp-maybe"),
+ /**
+ * <p>The "negative RSVP" verb indicates that the actor has made a
+ * negative RSVP for the object. This specification only defines the
+ * meaning of this verb when its object is an event (see <a class='info' href='#event'>Section 4.2.1<span> (</span><span class='info'>Event</span><span>)</span></a>), though implementors SHOULD be prepared to
+ * handle other object types as meaning MAY be provided by extension
+ * specifications.
+ *</p>
+ *<p>The use of this Verb is only appropriate when the RSVP was
+ * created by an explicit action by the actor. It is not appropriate to
+ * use this verb when a user has been added as an attendee by an event
+ * organiser or administrator.
+ *</p>
+ *<p>The verb URI for the "negative RSVP" Verb is <tt>http://activitystrea.ms/schema/1.0/rsvp-no</tt>.
+ *</p>
+ */
+ RSVP_NO("http://activitystrea.ms/schema/1.0/rsvp-no");
+ private final String iri;
+
+ /**
+ * @param iri
+ */
+ Verb(final String iri){
+ this.iri = iri;
+ }
+
+ @Override
+ public String toString(){
+ return iri;
+ }
+ /**
+ *
+ * @param iri
+ * @return
+ */
+ public static Verb fromIRI(String iri){
+ for(Verb v: Verb.values()){
+ if(v.toString().equals(iri)){
+ return v;
+ }
+ }
+ return null;
+ }
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Video.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Video.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Video.java
new file mode 100644
index 0000000..4044c86
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/activitystreams/types/Video.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.activitystreams.types;
+
+/**
+ * <p>The "video" Object type represents video content, which usually
+ * consists of a motion picture track and an audio track.
+ *</p>
+ *<p>The "video" Object type is identified by the URI <tt>http://activitystrea.ms/schema/1.0/video</tt>.
+ *</p>
+ *<p>A video has the following additional components:
+ *</p>
+ *<p></p>
+ *<blockquote class="text"><dl>
+ *<dt>Video Stream Link</dt>
+ *<dd>A Media Link Construct linking
+ * to the video content itself. Represented in JSON as a property
+ * called <tt>stream</tt> whose value is a JSON
+ * object with properties as defined in [TODO: xref the JSON
+ * serialization of a Media Link Construct]
+ *</dd>
+ *<dt>Embed Code</dt>
+ *<dd>An HTML fragment that, when embedded in
+ * an HTML page, will provide an interactive player UI for the
+ * video stream. Represented in JSON as a property called <tt>embedCode</tt> whose value is a JSON string
+ * containing the fragment of HTML.
+ *</dd>
+ *</dl></blockquote>
+ * @author robert.cooper
+ */
+public class Video {
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/ThreadModule.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/ThreadModule.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/ThreadModule.java
new file mode 100644
index 0000000..37ef9d3
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/ThreadModule.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2011 robert.cooper.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * under the License.
+ */
+
+package org.rometools.feed.module.atomthread;
+
+/**
+ *
+ * @author robert.cooper
+ */
+public interface ThreadModule {
+
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/package.html
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/package.html b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/package.html
new file mode 100644
index 0000000..9d854f2
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/atomthread/package.html
@@ -0,0 +1,3 @@
+<html><body>
+http://www.ietf.org/rfc/rfc4685.txt
+</body></html>
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Article.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Article.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Article.java
new file mode 100644
index 0000000..0c7dafc
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Article.java
@@ -0,0 +1,396 @@
+/*
+ * Article.java
+ *
+ * Created on November 16, 2005, 1:01 PM
+ *
+ * This library is provided under dual licenses.
+ * You may choose the terms of the Lesser General Public License or the Apache
+ * License at your discretion.
+ *
+ * Copyright (C) 2005 Robert Cooper, Temple of the Screaming Penguin
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.rometools.feed.module.base;
+
+import java.util.Date;
+
+
+/**
+ * This is an interface for the GoogleBase plug in that exposes methods used for
+ * Article or News entry types.
+ * @author <a href="mailto:cooper@screaming-penguin.com">Robert "kebernet" Cooper</a>
+ * @version $Revision: 1.2 $
+ */
+public interface Article extends GlobalInterface {
+ /**
+ * Array of Author Names. Limit 10.
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ *
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="author"></a>author</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ *
+ * <td><font size="-1">
+ * Author of the item.</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:author>John Steinbeck</g:author></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Reference Items, News and Articles</font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param authors Array of Author Names. Limit 10.
+ */
+ public void setAuthors(String[] authors);
+
+ /**
+ * Array of Author Names. Limit 10.
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ *
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="author"></a>author</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ *
+ * <td><font size="-1">
+ * Author of the item.</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:author>John Steinbeck</g:author></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Reference Items, News and Articles</font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return Array of author names.
+ */
+ public String[] getAuthors();
+
+ /**
+ * Source for this article.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ *
+ * <td colspan="2" bgcolor="#dddddd"><font size="-1">
+ * <b><a name="news_source"></a>news_source</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ *
+ * <td><font size="-1">
+ * The source of news content.</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:news_source>Journal</g:news_source></font></td>
+ *
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * News and Articles</font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param newsSource Source for this article
+ */
+ public void setNewsSource(String newsSource);
+
+ /**
+ * Source for this article.
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ *
+ * <td colspan="2" bgcolor="#dddddd"><font size="-1">
+ * <b><a name="news_source"></a>news_source</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ *
+ * <td><font size="-1">
+ * The source of news content.</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:news_source>Journal</g:news_source></font></td>
+ *
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * News and Articles</font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return source for this article.
+ */
+ public String getNewsSource();
+
+ /**
+ * Number of pages in the article.
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ *
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="pages"></a>pages</b></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ *
+ * The number of pages in the publication.</font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:pages>18</g:pages></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Reference Items, News and Articles</font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * integer</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param pages Number of pages in the article
+ */
+ public void setPages(Integer pages);
+
+ /**
+ * Number of pages in the article.
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ *
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="pages"></a>pages</b></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ *
+ * The number of pages in the publication.</font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:pages>18</g:pages></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Reference Items, News and Articles</font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * integer</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return Number of pages in the article
+ */
+ public Integer getPages();
+
+ /**
+ * Date article was published.
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd"><font size="-1">
+ * <b><a name="publish_date"></a>publish_date</b></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Date the item was published in <a href="http://www.iso.org/iso/en/prods-services/popstds/datesandtime.html">ISO 8601</a> format:
+ * YYYY-MM-DD</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:publish_date>2005-12-20</g:publish_date></font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ *
+ * <td><font size="-1">
+ * Reference Items</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ *
+ * date</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param publishDate Date article was published
+ */
+ public void setPublishDate(Date publishDate);
+
+ /**
+ * Date article was published.
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd"><font size="-1">
+ * <b><a name="publish_date"></a>publish_date</b></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Date the item was published in <a href="http://www.iso.org/iso/en/prods-services/popstds/datesandtime.html">ISO 8601</a> format:
+ * YYYY-MM-DD</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:publish_date>2005-12-20</g:publish_date></font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ *
+ * <td><font size="-1">
+ * Reference Items</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ *
+ * date</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return Date article was published
+ */
+ public Date getPublishDate();
+}
http://git-wip-us.apache.org/repos/asf/marmotta/blob/00c22e7c/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Course.java
----------------------------------------------------------------------
diff --git a/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Course.java b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Course.java
new file mode 100644
index 0000000..f4e1ce6
--- /dev/null
+++ b/commons/marmotta-sesame-tools/marmotta-rio-rss/src/ext/java/org/rometools/feed/module/base/Course.java
@@ -0,0 +1,567 @@
+/*
+ * CourseInformation.java
+ *
+ * Created on November 16, 2005, 11:12 AM
+ * This library is provided under dual licenses.
+ * You may choose the terms of the Lesser General Public License or the Apache
+ * License at your discretion.
+ *
+ * Copyright (C) 2005 Robert Cooper, Temple of the Screaming Penguin
+ *
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ *
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.rometools.feed.module.base;
+
+import org.rometools.feed.module.base.types.DateTimeRange;
+
+
+/**
+ * This is an interface for the GoogleBase plug in that exposes methods used for
+ * Class or Course information entry types.
+ * @author <a href="mailto:cooper@screaming-penguin.com">Robert "kebernet" Cooper</a>
+ * @version $Revision: 1.2 $
+ */
+public interface Course extends GlobalInterface {
+ /**
+ * The timeframe a course is running.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ *
+ * <tbody><tr valign="top">
+ *
+ * <td colspan="2" bgcolor="#dddddd"><font size="-1">
+ * <b><a name="course_date_range"></a>course_date_range</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">Date and time range a class is in session, in <a href="http://www.iso.org/iso/en/prods-services/popstds/datesandtime.html">ISO 8601</a>. Two sub-attributes
+ * are included in course_date_range attribute.<ul type="disc">
+ *
+ * <li>start = Start date and time of a trip in
+ * format YYYY-MM-DDThh:mm:ss</li>
+ * <li>end = End date and time of a trip in
+ * format YYYY-MM-DDThh:mm:ss</li></ul></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:course_date_range> <br>
+ *
+ * <g:start>2005-12-20T09:30:01</g:start>
+ * <br>
+ * <g:end>2005-12-29T10:30:59</g:end><br>
+ * </g:course_date_range></font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ *
+ * <td><font size="-1">
+ * dateTimeRange</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param courseDateRange The timeframe a course is running
+ */
+ public void setCourseDateRange(DateTimeRange courseDateRange);
+
+ /**
+ * The timeframe a course is running.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ *
+ * <tbody><tr valign="top">
+ *
+ * <td colspan="2" bgcolor="#dddddd"><font size="-1">
+ * <b><a name="course_date_range"></a>course_date_range</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">Date and time range a class is in session, in <a href="http://www.iso.org/iso/en/prods-services/popstds/datesandtime.html">ISO 8601</a>. Two sub-attributes
+ * are included in course_date_range attribute.<ul type="disc">
+ *
+ * <li>start = Start date and time of a trip in
+ * format YYYY-MM-DDThh:mm:ss</li>
+ * <li>end = End date and time of a trip in
+ * format YYYY-MM-DDThh:mm:ss</li></ul></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:course_date_range> <br>
+ *
+ * <g:start>2005-12-20T09:30:01</g:start>
+ * <br>
+ * <g:end>2005-12-29T10:30:59</g:end><br>
+ * </g:course_date_range></font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Content type</b></font></td>
+ *
+ * <td><font size="-1">
+ * dateTimeRange</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return The timeframe a course is running
+ */
+ public DateTimeRange getCourseDateRange();
+
+ /**
+ * ID code associated with a course.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"> <font size="-1"><b><a name="course_number"></a>course_number</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Details</b></font></td>
+ *
+ * <td> <font size="-1">ID code associated with a course</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Example</b></font></td>
+ * <td> <font size="-1"><g:course_number>HIST-90A</g:course_number></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"> <font size="-1"><b>Attribute
+ * of</b></font></td>
+ * <td> <font size="-1">Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Content
+ * type</b></font></td>
+ *
+ * <td> <font size="-1">string</font></td>
+ *
+ * </tr>
+ * </tbody></table>
+ * @param courseNumber ID code associated with a course
+ */
+ public void setCourseNumber(String courseNumber);
+
+ /**
+ * ID code associated with a course.
+ *
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"> <font size="-1"><b><a name="course_number"></a>course_number</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Details</b></font></td>
+ *
+ * <td> <font size="-1">ID code associated with a course</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Example</b></font></td>
+ * <td> <font size="-1"><g:course_number>HIST-90A</g:course_number></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"> <font size="-1"><b>Attribute
+ * of</b></font></td>
+ * <td> <font size="-1">Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Content
+ * type</b></font></td>
+ *
+ * <td> <font size="-1">string</font></td>
+ *
+ * </tr>
+ * </tbody></table>
+ * @return ID code associated with a course
+ */
+ public String getCourseNumber();
+
+ /**
+ * Time a class is in session.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"> <font size="-1"><b><a name="course_times"></a>course_times</b></font></td>
+ *
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Details</b></font></td>
+ * <td> <font size="-1">Time a class is in session.</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Example</b></font></td>
+ *
+ * <td> <font size="-1"><g:course_times>MWF 08:30 - 09:45</g:course_times></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Attribute
+ * of</b></font></td>
+ * <td> <font size="-1">Course schedules</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Content
+ * type</b></font></td>
+ *
+ * <td> <font size="-1">string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param courseTimes Time a class is in session
+ */
+ public void setCourseTimes(String courseTimes);
+
+ /**
+ * Time a class is in session.
+ *
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"> <font size="-1"><b><a name="course_times"></a>course_times</b></font></td>
+ *
+ * </tr>
+ *
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Details</b></font></td>
+ * <td> <font size="-1">Time a class is in session.</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Example</b></font></td>
+ *
+ * <td> <font size="-1"><g:course_times>MWF 08:30 - 09:45</g:course_times></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Attribute
+ * of</b></font></td>
+ * <td> <font size="-1">Course schedules</font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"> <font size="-1"><b>Content
+ * type</b></font></td>
+ *
+ * <td> <font size="-1">string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return Time a class is in session
+ */
+ public String getCourseTimes();
+
+ /**
+ * Salary for this position.
+ *
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="salary"></a>salary</b></font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Salary for this position. Non-numeric values such as "$" symbols are not acceptable. </font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Example</b></font></td>
+ * <td><font size="-1">
+ * <g:salary>55000</g:salary></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Attribute of</b></font></td>
+ *
+ * <td><font size="-1">
+ * Jobs</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ *
+ * <td><font size="-1">
+ *
+ * float</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param salary Salary for this position
+ */
+ public void setSalary(Float salary);
+
+ /**
+ * Salary for this position.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="salary"></a>salary</b></font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Salary for this position. Non-numeric values such as "$" symbols are not acceptable. </font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Example</b></font></td>
+ * <td><font size="-1">
+ * <g:salary>55000</g:salary></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ *
+ * <b>Attribute of</b></font></td>
+ *
+ * <td><font size="-1">
+ * Jobs</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ *
+ * <td><font size="-1">
+ *
+ * float</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return Salary for this position
+ */
+ public Float getSalary();
+
+ /**
+ * Topics of study for a course.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="subject"></a>subject</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Topic of study for a course.</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ *
+ * <td><font size="-1"> <g:subject>Trigonometry</g:subject></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ *
+ * Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * string</font></td>
+ *
+ * </tr>
+ * </tbody></table>
+ * @param subject Topics of study for a course
+ */
+ public void setSubjects(String[] subject);
+
+ /**
+ * Topics of study for a course.
+ *
+ *
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="subject"></a>subject</b></font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Topic of study for a course.</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ *
+ * <td><font size="-1"> <g:subject>Trigonometry</g:subject></font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ *
+ * Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ * <td><font size="-1">
+ * string</font></td>
+ *
+ * </tr>
+ * </tbody></table>
+ * @return Topics of study for a course
+ */
+ public String[] getSubjects();
+
+ /**
+ * Name of the school at which a class is offered.
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="university"></a>university</b></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Name of the school a class is offered at. </font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:university>Stanford</g:university></font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ *
+ * <td><font size="-1">
+ *
+ * string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @param university Name of the school at which a class is offered.
+ */
+ public void setUniversity(String university);
+
+ /**
+ * Name of the school at which a class is offered.
+ * <table border="1" cellpadding="5" cellspacing="0" width="640">
+ * <tbody><tr valign="top">
+ * <td colspan="2" bgcolor="#dddddd" valign="top"><font size="-1">
+ * <b><a name="university"></a>university</b></font></td>
+ *
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Details</b></font></td>
+ * <td><font size="-1">
+ * Name of the school a class is offered at. </font></td>
+ * </tr>
+ *
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ * <b>Example</b></font></td>
+ * <td><font size="-1"> <g:university>Stanford</g:university></font></td>
+ * </tr>
+ * <tr valign="top">
+ *
+ * <td width="120"><font size="-1">
+ *
+ * <b>Attribute of</b></font></td>
+ * <td><font size="-1">
+ * Course schedules</font></td>
+ * </tr>
+ * <tr valign="top">
+ * <td width="120"><font size="-1">
+ * <b>Content type</b></font></td>
+ *
+ * <td><font size="-1">
+ *
+ * string</font></td>
+ * </tr>
+ * </tbody></table>
+ * @return Name of the school at which a class is offered.
+ */
+ public String getUniversity();
+}