STREAMS-398 - streams-schemas

moves jsonschemas to a seperate module
  this averts dependency graph cycle that would occur once streams-plugin-pojo 
is a dependency of streams-pojo and streams-scala


Project: http://git-wip-us.apache.org/repos/asf/incubator-streams/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-streams/commit/02b5adda
Tree: http://git-wip-us.apache.org/repos/asf/incubator-streams/tree/02b5adda
Diff: http://git-wip-us.apache.org/repos/asf/incubator-streams/diff/02b5adda

Branch: refs/feature/STREAMS-389,398
Commit: 02b5adda7694698e732980c4b2702a2b67ff5548
Parents: eea0975
Author: Steve Blackmon @steveblackmon <sblack...@apache.org>
Authored: Thu Apr 21 11:41:59 2016 -0500
Committer: Steve Blackmon @steveblackmon <sblack...@apache.org>
Committed: Thu Apr 21 11:41:59 2016 -0500

----------------------------------------------------------------------
 streams-schemas/pom.xml                         |  71 ++++++++++++
 .../src/main/jsonschema/activity.json           | 108 +++++++++++++++++++
 .../src/main/jsonschema/collection.json         |  47 ++++++++
 .../src/main/jsonschema/media_link.json         |  34 ++++++
 streams-schemas/src/main/jsonschema/object.json |  98 +++++++++++++++++
 .../src/main/jsonschema/objectTypes/alert.json  |  19 ++++
 .../jsonschema/objectTypes/application.json     |  19 ++++
 .../main/jsonschema/objectTypes/article.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/audio.json  |  19 ++++
 .../src/main/jsonschema/objectTypes/badge.json  |  19 ++++
 .../src/main/jsonschema/objectTypes/binary.json |  19 ++++
 .../main/jsonschema/objectTypes/bookmark.json   |  19 ++++
 .../main/jsonschema/objectTypes/comment.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/device.json |  19 ++++
 .../src/main/jsonschema/objectTypes/event.json  |  51 +++++++++
 .../src/main/jsonschema/objectTypes/file.json   |  25 +++++
 .../src/main/jsonschema/objectTypes/folder.json |  19 ++++
 .../src/main/jsonschema/objectTypes/game.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/group.json  |  19 ++++
 .../src/main/jsonschema/objectTypes/image.json  |  22 ++++
 .../src/main/jsonschema/objectTypes/issue.json  |  25 +++++
 .../src/main/jsonschema/objectTypes/job.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/list.json   |  28 +++++
 .../src/main/jsonschema/objectTypes/note.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/offer.json  |  19 ++++
 .../jsonschema/objectTypes/organization.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/page.json   |  19 ++++
 .../main/jsonschema/objectTypes/permission.json |  36 +++++++
 .../src/main/jsonschema/objectTypes/person.json |  25 +++++
 .../jsonschema/objectTypes/photo-album.json     |  19 ++++
 .../src/main/jsonschema/objectTypes/photo.json  |  23 ++++
 .../src/main/jsonschema/objectTypes/place.json  |  43 ++++++++
 .../main/jsonschema/objectTypes/playlist.json   |  19 ++++
 .../main/jsonschema/objectTypes/process.json    |  19 ++++
 .../main/jsonschema/objectTypes/product.json    |  25 +++++
 .../main/jsonschema/objectTypes/property.json   |  48 +++++++++
 .../main/jsonschema/objectTypes/question.json   |  28 +++++
 .../src/main/jsonschema/objectTypes/review.json |  22 ++++
 .../src/main/jsonschema/objectTypes/role.json   |  25 +++++
 .../main/jsonschema/objectTypes/service.json    |  19 ++++
 .../src/main/jsonschema/objectTypes/song.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/status.json |  19 ++++
 .../src/main/jsonschema/objectTypes/task.json   |  40 +++++++
 .../src/main/jsonschema/objectTypes/team.json   |  19 ++++
 .../src/main/jsonschema/objectTypes/video.json  |  19 ++++
 .../src/main/jsonschema/verbs/accept.json       |  24 +++++
 .../src/main/jsonschema/verbs/access.json       |  24 +++++
 .../src/main/jsonschema/verbs/acknowledge.json  |  24 +++++
 .../src/main/jsonschema/verbs/add.json          |  24 +++++
 .../src/main/jsonschema/verbs/agree.json        |  24 +++++
 .../src/main/jsonschema/verbs/append.json       |  24 +++++
 .../src/main/jsonschema/verbs/approve.json      |  24 +++++
 .../src/main/jsonschema/verbs/archive.json      |  24 +++++
 .../src/main/jsonschema/verbs/assign.json       |  24 +++++
 .../src/main/jsonschema/verbs/at.json           |  24 +++++
 .../src/main/jsonschema/verbs/attach.json       |  24 +++++
 .../src/main/jsonschema/verbs/attend.json       |  24 +++++
 .../src/main/jsonschema/verbs/author.json       |  24 +++++
 .../src/main/jsonschema/verbs/authorize.json    |  24 +++++
 .../src/main/jsonschema/verbs/borrow.json       |  24 +++++
 .../src/main/jsonschema/verbs/build.json        |  24 +++++
 .../src/main/jsonschema/verbs/cancel.json       |  24 +++++
 .../src/main/jsonschema/verbs/checkin.json      |  24 +++++
 .../src/main/jsonschema/verbs/close.json        |  24 +++++
 .../src/main/jsonschema/verbs/complete.json     |  24 +++++
 .../src/main/jsonschema/verbs/confirm.json      |  24 +++++
 .../src/main/jsonschema/verbs/consume.json      |  24 +++++
 .../src/main/jsonschema/verbs/create.json       |  24 +++++
 .../src/main/jsonschema/verbs/delete.json       |  24 +++++
 .../src/main/jsonschema/verbs/deliver.json      |  24 +++++
 .../src/main/jsonschema/verbs/deny.json         |  24 +++++
 .../src/main/jsonschema/verbs/disagree.json     |  24 +++++
 .../src/main/jsonschema/verbs/dislike.json      |  24 +++++
 .../src/main/jsonschema/verbs/experience.json   |  24 +++++
 .../src/main/jsonschema/verbs/favorite.json     |  24 +++++
 .../src/main/jsonschema/verbs/find.json         |  24 +++++
 .../jsonschema/verbs/flag-as-inappropriate.json |  24 +++++
 .../src/main/jsonschema/verbs/follow.json       |  24 +++++
 .../src/main/jsonschema/verbs/give.json         |  24 +++++
 .../src/main/jsonschema/verbs/host.json         |  24 +++++
 .../src/main/jsonschema/verbs/ignore.json       |  24 +++++
 .../src/main/jsonschema/verbs/insert.json       |  24 +++++
 .../src/main/jsonschema/verbs/install.json      |  24 +++++
 .../src/main/jsonschema/verbs/interact.json     |  24 +++++
 .../src/main/jsonschema/verbs/invite.json       |  24 +++++
 .../src/main/jsonschema/verbs/join.json         |  24 +++++
 .../src/main/jsonschema/verbs/leave.json        |  24 +++++
 .../src/main/jsonschema/verbs/like.json         |  24 +++++
 .../src/main/jsonschema/verbs/listen.json       |  24 +++++
 .../src/main/jsonschema/verbs/lose.json         |  24 +++++
 .../src/main/jsonschema/verbs/make-friend.json  |  24 +++++
 .../src/main/jsonschema/verbs/open.json         |  24 +++++
 .../src/main/jsonschema/verbs/play.json         |  24 +++++
 .../src/main/jsonschema/verbs/post.json         |  24 +++++
 .../src/main/jsonschema/verbs/present.json      |  24 +++++
 .../src/main/jsonschema/verbs/purchase.json     |  24 +++++
 .../src/main/jsonschema/verbs/qualify.json      |  24 +++++
 .../src/main/jsonschema/verbs/read.json         |  24 +++++
 .../src/main/jsonschema/verbs/receive.json      |  24 +++++
 .../src/main/jsonschema/verbs/reject.json       |  24 +++++
 .../main/jsonschema/verbs/remove-friend.json    |  24 +++++
 .../src/main/jsonschema/verbs/remove.json       |  24 +++++
 .../src/main/jsonschema/verbs/replace.json      |  24 +++++
 .../main/jsonschema/verbs/request-friend.json   |  24 +++++
 .../src/main/jsonschema/verbs/request.json      |  24 +++++
 .../src/main/jsonschema/verbs/resolve.json      |  24 +++++
 .../src/main/jsonschema/verbs/retract.json      |  24 +++++
 .../src/main/jsonschema/verbs/return.json       |  24 +++++
 .../src/main/jsonschema/verbs/rsvp-maybe.json   |  24 +++++
 .../src/main/jsonschema/verbs/rsvp-no.json      |  24 +++++
 .../src/main/jsonschema/verbs/rsvp-yes.json     |  24 +++++
 .../src/main/jsonschema/verbs/satisfy.json      |  24 +++++
 .../src/main/jsonschema/verbs/save.json         |  24 +++++
 .../src/main/jsonschema/verbs/schedule.json     |  24 +++++
 .../src/main/jsonschema/verbs/search.json       |  24 +++++
 .../src/main/jsonschema/verbs/sell.json         |  24 +++++
 .../src/main/jsonschema/verbs/send.json         |  24 +++++
 .../src/main/jsonschema/verbs/share.json        |  24 +++++
 .../src/main/jsonschema/verbs/sponsor.json      |  24 +++++
 .../src/main/jsonschema/verbs/start.json        |  24 +++++
 .../main/jsonschema/verbs/stop-following.json   |  24 +++++
 .../src/main/jsonschema/verbs/submit.json       |  24 +++++
 .../src/main/jsonschema/verbs/tag.json          |  24 +++++
 .../src/main/jsonschema/verbs/terminate.json    |  24 +++++
 .../src/main/jsonschema/verbs/tie.json          |  24 +++++
 .../src/main/jsonschema/verbs/unfavorite.json   |  24 +++++
 .../src/main/jsonschema/verbs/unlike.json       |  24 +++++
 .../src/main/jsonschema/verbs/unsatisfy.json    |  24 +++++
 .../src/main/jsonschema/verbs/unsave.json       |  24 +++++
 .../src/main/jsonschema/verbs/unshare.json      |  24 +++++
 .../src/main/jsonschema/verbs/update.json       |  34 ++++++
 .../src/main/jsonschema/verbs/use.json          |  24 +++++
 .../src/main/jsonschema/verbs/watch.json        |  24 +++++
 .../src/main/jsonschema/verbs/win.json          |  24 +++++
 streams-schemas/src/main/xmlschema/activity.xsd |  94 ++++++++++++++++
 .../src/site/resources/activity.json            | 108 +++++++++++++++++++
 streams-schemas/src/site/resources/activity.xsd |  94 ++++++++++++++++
 .../src/site/resources/collection.json          |  47 ++++++++
 .../src/site/resources/media_link.json          |  34 ++++++
 streams-schemas/src/site/resources/object.json  |  98 +++++++++++++++++
 .../src/site/resources/objectTypes/alert.json   |  19 ++++
 .../site/resources/objectTypes/application.json |  19 ++++
 .../src/site/resources/objectTypes/article.json |  19 ++++
 .../src/site/resources/objectTypes/audio.json   |  19 ++++
 .../src/site/resources/objectTypes/badge.json   |  19 ++++
 .../src/site/resources/objectTypes/binary.json  |  19 ++++
 .../site/resources/objectTypes/bookmark.json    |  19 ++++
 .../src/site/resources/objectTypes/comment.json |  19 ++++
 .../src/site/resources/objectTypes/device.json  |  19 ++++
 .../src/site/resources/objectTypes/event.json   |  51 +++++++++
 .../src/site/resources/objectTypes/file.json    |  25 +++++
 .../src/site/resources/objectTypes/folder.json  |  19 ++++
 .../src/site/resources/objectTypes/game.json    |  19 ++++
 .../src/site/resources/objectTypes/group.json   |  19 ++++
 .../src/site/resources/objectTypes/image.json   |  22 ++++
 .../src/site/resources/objectTypes/issue.json   |  25 +++++
 .../src/site/resources/objectTypes/job.json     |  19 ++++
 .../src/site/resources/objectTypes/list.json    |  28 +++++
 .../src/site/resources/objectTypes/note.json    |  19 ++++
 .../src/site/resources/objectTypes/offer.json   |  19 ++++
 .../resources/objectTypes/organization.json     |  19 ++++
 .../src/site/resources/objectTypes/page.json    |  19 ++++
 .../site/resources/objectTypes/permission.json  |  36 +++++++
 .../src/site/resources/objectTypes/person.json  |  25 +++++
 .../site/resources/objectTypes/photo-album.json |  19 ++++
 .../src/site/resources/objectTypes/photo.json   |  23 ++++
 .../src/site/resources/objectTypes/place.json   |  43 ++++++++
 .../site/resources/objectTypes/playlist.json    |  19 ++++
 .../src/site/resources/objectTypes/process.json |  19 ++++
 .../src/site/resources/objectTypes/product.json |  25 +++++
 .../site/resources/objectTypes/property.json    |  48 +++++++++
 .../site/resources/objectTypes/question.json    |  28 +++++
 .../src/site/resources/objectTypes/review.json  |  22 ++++
 .../src/site/resources/objectTypes/role.json    |  25 +++++
 .../src/site/resources/objectTypes/service.json |  19 ++++
 .../src/site/resources/objectTypes/song.json    |  19 ++++
 .../src/site/resources/objectTypes/status.json  |  19 ++++
 .../src/site/resources/objectTypes/task.json    |  40 +++++++
 .../src/site/resources/objectTypes/team.json    |  19 ++++
 .../src/site/resources/objectTypes/video.json   |  19 ++++
 .../src/site/resources/verbs/accept.json        |  24 +++++
 .../src/site/resources/verbs/access.json        |  24 +++++
 .../src/site/resources/verbs/acknowledge.json   |  24 +++++
 .../src/site/resources/verbs/add.json           |  24 +++++
 .../src/site/resources/verbs/agree.json         |  24 +++++
 .../src/site/resources/verbs/append.json        |  24 +++++
 .../src/site/resources/verbs/approve.json       |  24 +++++
 .../src/site/resources/verbs/archive.json       |  24 +++++
 .../src/site/resources/verbs/assign.json        |  24 +++++
 .../src/site/resources/verbs/at.json            |  24 +++++
 .../src/site/resources/verbs/attach.json        |  24 +++++
 .../src/site/resources/verbs/attend.json        |  24 +++++
 .../src/site/resources/verbs/author.json        |  24 +++++
 .../src/site/resources/verbs/authorize.json     |  24 +++++
 .../src/site/resources/verbs/borrow.json        |  24 +++++
 .../src/site/resources/verbs/build.json         |  24 +++++
 .../src/site/resources/verbs/cancel.json        |  24 +++++
 .../src/site/resources/verbs/checkin.json       |  24 +++++
 .../src/site/resources/verbs/close.json         |  24 +++++
 .../src/site/resources/verbs/complete.json      |  24 +++++
 .../src/site/resources/verbs/confirm.json       |  24 +++++
 .../src/site/resources/verbs/consume.json       |  24 +++++
 .../src/site/resources/verbs/create.json        |  24 +++++
 .../src/site/resources/verbs/delete.json        |  24 +++++
 .../src/site/resources/verbs/deliver.json       |  24 +++++
 .../src/site/resources/verbs/deny.json          |  24 +++++
 .../src/site/resources/verbs/disagree.json      |  24 +++++
 .../src/site/resources/verbs/dislike.json       |  24 +++++
 .../src/site/resources/verbs/experience.json    |  24 +++++
 .../src/site/resources/verbs/favorite.json      |  24 +++++
 .../src/site/resources/verbs/find.json          |  24 +++++
 .../resources/verbs/flag-as-inappropriate.json  |  24 +++++
 .../src/site/resources/verbs/follow.json        |  24 +++++
 .../src/site/resources/verbs/give.json          |  24 +++++
 .../src/site/resources/verbs/host.json          |  24 +++++
 .../src/site/resources/verbs/ignore.json        |  24 +++++
 .../src/site/resources/verbs/insert.json        |  24 +++++
 .../src/site/resources/verbs/install.json       |  24 +++++
 .../src/site/resources/verbs/interact.json      |  24 +++++
 .../src/site/resources/verbs/invite.json        |  24 +++++
 .../src/site/resources/verbs/join.json          |  24 +++++
 .../src/site/resources/verbs/leave.json         |  24 +++++
 .../src/site/resources/verbs/like.json          |  24 +++++
 .../src/site/resources/verbs/listen.json        |  24 +++++
 .../src/site/resources/verbs/lose.json          |  24 +++++
 .../src/site/resources/verbs/make-friend.json   |  24 +++++
 .../src/site/resources/verbs/open.json          |  24 +++++
 .../src/site/resources/verbs/play.json          |  24 +++++
 .../src/site/resources/verbs/post.json          |  24 +++++
 .../src/site/resources/verbs/present.json       |  24 +++++
 .../src/site/resources/verbs/purchase.json      |  24 +++++
 .../src/site/resources/verbs/qualify.json       |  24 +++++
 .../src/site/resources/verbs/read.json          |  24 +++++
 .../src/site/resources/verbs/receive.json       |  24 +++++
 .../src/site/resources/verbs/reject.json        |  24 +++++
 .../src/site/resources/verbs/remove-friend.json |  24 +++++
 .../src/site/resources/verbs/remove.json        |  24 +++++
 .../src/site/resources/verbs/replace.json       |  24 +++++
 .../site/resources/verbs/request-friend.json    |  24 +++++
 .../src/site/resources/verbs/request.json       |  24 +++++
 .../src/site/resources/verbs/resolve.json       |  24 +++++
 .../src/site/resources/verbs/retract.json       |  24 +++++
 .../src/site/resources/verbs/return.json        |  24 +++++
 .../src/site/resources/verbs/rsvp-maybe.json    |  24 +++++
 .../src/site/resources/verbs/rsvp-no.json       |  24 +++++
 .../src/site/resources/verbs/rsvp-yes.json      |  24 +++++
 .../src/site/resources/verbs/satisfy.json       |  24 +++++
 .../src/site/resources/verbs/save.json          |  24 +++++
 .../src/site/resources/verbs/schedule.json      |  24 +++++
 .../src/site/resources/verbs/search.json        |  24 +++++
 .../src/site/resources/verbs/sell.json          |  24 +++++
 .../src/site/resources/verbs/send.json          |  24 +++++
 .../src/site/resources/verbs/share.json         |  24 +++++
 .../src/site/resources/verbs/sponsor.json       |  24 +++++
 .../src/site/resources/verbs/start.json         |  24 +++++
 .../site/resources/verbs/stop-following.json    |  24 +++++
 .../src/site/resources/verbs/submit.json        |  24 +++++
 .../src/site/resources/verbs/tag.json           |  24 +++++
 .../src/site/resources/verbs/terminate.json     |  24 +++++
 .../src/site/resources/verbs/tie.json           |  24 +++++
 .../src/site/resources/verbs/unfavorite.json    |  24 +++++
 .../src/site/resources/verbs/unlike.json        |  24 +++++
 .../src/site/resources/verbs/unsatisfy.json     |  24 +++++
 .../src/site/resources/verbs/unsave.json        |  24 +++++
 .../src/site/resources/verbs/unshare.json       |  24 +++++
 .../src/site/resources/verbs/update.json        |  34 ++++++
 .../src/site/resources/verbs/use.json           |  24 +++++
 .../src/site/resources/verbs/watch.json         |  24 +++++
 .../src/site/resources/verbs/win.json           |  24 +++++
 269 files changed, 7007 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/pom.xml
----------------------------------------------------------------------
diff --git a/streams-schemas/pom.xml b/streams-schemas/pom.xml
new file mode 100644
index 0000000..d64359a
--- /dev/null
+++ b/streams-schemas/pom.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~
+  ~   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.
+  -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd";>
+    <modelVersion>4.0.0</modelVersion>
+
+    <parent>
+        <groupId>org.apache.streams</groupId>
+        <artifactId>streams-project</artifactId>
+        <version>0.3-incubating-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>streams-schemas</artifactId>
+    <name>${project.artifactId}</name>
+
+    <description>Activity Streams schemas</description>
+
+    <build>
+        <resources>
+            <resource>
+                <directory>src/main/resources</directory>
+            </resource>
+        </resources>
+        <testResources>
+            <testResource>
+                <directory>src/test/resources</directory>
+            </testResource>
+        </testResources>
+        <plugins>
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>add-source</id>
+                        <phase>generate-sources</phase>
+                        <goals>
+                            <goal>add-resource</goal>
+                        </goals>
+                        <configuration>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/jsonschema</directory>
+                                </resource>
+                                <resource>
+                                    <directory>src/main/xmlschema</directory>
+                                </resource>
+                            </resources>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+    </build>
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/activity.json 
b/streams-schemas/src/main/jsonschema/activity.json
new file mode 100644
index 0000000..8c058a4
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/activity.json
@@ -0,0 +1,108 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "activity",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "An activity construct recounts what an actor did to an 
object in the past. If there is no actor it simply describes the change.",
+    "additionalProperties": true,
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Uniquely identifies each activity within the 
service",
+            "required": true
+        },
+        "actor": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the entity that performed the activity. 
An activity MUST contain one actor property whose value is a single Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "$ref": "./object.json"
+        },
+        "verb": {
+            "title": "verb",
+            "type": "string",
+            "default": "post",
+            "required": true,
+            "description": "Identifies the action that the activity describes. 
An activity MUST contain a verb property whose value is a JSON String that is 
non-empty and matches either the \"isegment-nz-nc\" or the \"IRI\" production 
in [RFC3987]. Note that the use of a relative reference other than a simple 
name is not allowed."
+        },
+        "object": {
+            "type": "object",
+            "required": true,
+            "description": "Describes the primary object of the activity. For 
instance, in the activity, \"John saved a movie to his wishlist\", the object 
of the activity is \"movie\". An activity SHOULD contain an object property 
whose value is a single Object. If the object property is not contained, the 
primary object of the activity MAY be implied by context.",
+            "$ref": "./object.json"
+        },
+        "target": {
+            "type": "object",
+            "description": "Describes the target of the activity. The precise 
meaning of the activity's target is dependent on the activities verb, but will 
often be the object the English preposition \"to\". For instance, in the 
activity, \"John saved a movie to his wishlist\", the target of the activity is 
\"wishlist\". The activity target MUST NOT be used to identity an indirect 
object that is not a target of the activity. An activity MAY contain a target 
property whose value is a single Object.",
+            "$ref": "./object.json"
+        },
+        "published": {
+            "type": "string",
+            "description": "The date and time at which the activity occurred. 
It is important to note that this is not necessarily the same as the time at 
which the activity was published. An activity MUST contain a postedTime 
property.",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "The date and time at which a previously published 
activity has been modified. An Activity MAY contain an updatedTime property",
+            "format": "date-time"
+        },
+        "generator": {
+            "type": "object",
+            "description": "Describes the application that generated the 
activity. An activity MAY contain a generator property whose value is a single 
Object.",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "icon": {
+            "type": "object",
+            "javaInterfaces": ["java.io.Serializable"],
+            "properties": {
+                "$ref": "./media_link.json#properties"
+            },
+            "description": "An IRI[RFC3987] identifying an image resource 
provides a visual representation of the activity, intended for human 
consumption. The image SHOULD have an aspect ratio of one (horizontal) to one 
(vertical) and SHOULD be suitable for presentation at a small size. An activity 
MAY have an icon property"
+        },
+        "provider": {
+            "type": "object",
+            "description": "Describes the application that published the 
activity. Note that this is not necessarily the same entity that generated the 
activity. An activity MAY contain a provider property whose value is a single 
Object",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "title": {
+            "type": "string",
+            "description": "Natural-language title or headline for the 
activity encoded as a single JSON String containing HTML markup. An activity 
MAY contain a title property",
+            "format": "html"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the activity 
encoded as a single JSON String containing HTML markup. Visual elements such as 
thumbnail images MAY be included. An activity MAY contain a content property",
+            "format": "html"
+        },
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] identifying a resource providing 
an HTML representation of the activity. An activity MAY contain a url property",
+            "format": "url"
+        },
+        "links": {
+            "type": "array",
+            "description": "Links between this object and other resources as 
defined in Web Linking",
+            "note": "Tell JSON schema team to not put links inside 
http://json-schema.org/hyper-schema#properties";,
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./verbs/{verb}.json"
+        }
+    ]
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/collection.json 
b/streams-schemas/src/main/jsonschema/collection.json
new file mode 100644
index 0000000..8173b75
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/collection.json
@@ -0,0 +1,47 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "collection",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "A collection is a generic list of Objects of any object 
type. The objectType of each item in the collection MAY be omitted if the type 
of object can be established through context. The collection is used primarily 
as the root of an Activity Streams document, but can be used as the value of 
extension properties in a variety of situations. ",
+    "properties": {
+        "url": {
+            "type": "string",
+            "description": "An IRI [RFC3987] referencing a JSON document 
containing the full listing of objects in the collection."
+        },
+        "totalItems": {
+            "type": "integer",
+            "description": "Non-negative integer specifying the total number 
of activities within the stream. The Stream serialization MAY contain a count 
property."
+        },
+        "items": {
+            "type": "array",
+            "required": true,
+            "description": "An array containing a listing of Objects of any 
object type. If used in combination with the url property, the items array can 
be used to provide a subset of the objects that may be found in the resource 
identified by the url.",
+            "items": {
+                "type": "object",
+                "extends": {
+                    "$ref": "./object.json"
+                }
+            }
+        },
+        "links": {
+            "type": "array",
+            "optional": true,
+            "description": "Links between an this object and other resources 
as defined in Web Linking",
+            "extends": {
+                "$ref": "http://json-schema.org/links#properties";
+            }
+        }
+    },
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "http://json-schema.org/schema";
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/media_link.json 
b/streams-schemas/src/main/jsonschema/media_link.json
new file mode 100644
index 0000000..fa55b2f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/media_link.json
@@ -0,0 +1,34 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "media_link",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Visual representation of an object in the form of an 
image, video or embedded HTML fragments",
+    "properties": {
+        "duration": {
+            "title": "duration",
+            "type": "number",
+            "description": "A hint to the consumer about the length, in 
seconds, of the media resource identified by the url property. A media link MAY 
contain a \"duration\" property when the target resource is a time-based media 
item such as an audio or video."
+        },
+        "height": {
+            "title": "height",
+            "type": "integer",
+            "description": "A hint to the consumer about the height, in 
pixels, of the media resource identified by the url property. A media link MAY 
contain a height property when the target resource is a visual media item such 
as an image, video or embeddable HTML page."
+        },
+        "width": {
+            "title": "width",
+            "type": "integer",
+            "description": "A hint to the consumer about the width, in pixels, 
of the media resource identified by the url property. A media link MAY contain 
a width property when the target resource is a visual media item such as an 
image, video or embeddable HTML page."
+        },
+        "url": {
+            "type": "string",
+            "required": true,
+            "description": "The IRI of the media resource being linked. A 
media link MUST have a url property."
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/object.json 
b/streams-schemas/src/main/jsonschema/object.json
new file mode 100644
index 0000000..97adc3c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/object.json
@@ -0,0 +1,98 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "object",
+    "javaInterfaces": ["java.io.Serializable"],
+    "description": "Basic object on the web. The only required property is the 
id",
+    "properties": {
+        "id": {
+            "type": "string",
+            "description": "Provides a permanent, universally unique 
identifier for the object in the form of an absolute IRI [RFC3987]. An object 
SHOULD contain a single id property. If an object does not contain an id 
property, consumers MAY use the value of the url property as a less-reliable, 
non-unique identifier.",
+            "required": true
+        },
+        "image": {
+            "format": "image",
+            "type": "object",
+            "extends": {
+                "$ref": "./media_link.json"
+            },
+            "description": "Description of a resource providing a visual 
representation of the object, intended for human consumption. An object MAY 
contain an image property whose value is a Media Link."
+        },
+        "displayName": {
+            "type": "string",
+            "description": "A natural-language, human-readable and plain-text 
name for the object. HTML markup MUST NOT be included. An object MAY contain a 
displayName property. If the object does not specify an objectType property, 
the object SHOULD specify a displayName"
+        },
+        "summary": {
+            "type": "string",
+            "description": "Natural-language summary of the object encoded as 
a single JSON String containing HTML markup. Visual elements such as thumbnail 
images MAY be included. An activity MAY contain a summary property"
+        },
+        "content": {
+            "type": "string",
+            "description": "Natural-language description of the object encoded 
as a single JSON String containing HTML markup. Visual elements such as 
thumbnail images MAY be included. An object MAY contain a content property"
+        },
+        "url": {
+            "type": "string",
+            "format": "url",
+            "description": "An IRI [RFC3987] identifying a resource providing 
an HTML representation of the object. An object MAY contain a url property"
+        },
+        "objectType": {
+            "type": "string",
+            "description": "Identifies the type of object. An object MAY 
contain an objectType property whose value is a JSON String that is non-empty 
and matches either the \"isegment-nz-nc\" or the \"IRI\" production in 
[RFC3987]. Note that the use of a relative reference other than a simple name 
is not allowed. If no objectType property is contained, the object has no 
specific type."
+        },
+        "author": {
+            "type": "object",
+            "description": "Describes the entity that created or authored the 
object. An object MAY contain a single author property whose value is an Object 
of any type. Note that the author field identifies the entity that created the 
object and does not necessarily identify the entity that published the object. 
For instance, it may be the case that an object created by one person is posted 
and published to a system by an entirely different entity",
+            "javaInterfaces": ["java.io.Serializable"],
+            "extends": {
+                "$ref": "./object.json"
+            }
+        },
+        "published": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which 
the object was published. An object MAY contain a published property",
+            "format": "date-time"
+        },
+        "updated": {
+            "type": "string",
+            "description": "[RFC3339] date-time. The date and time at which a 
previously published object has been modified. An Object MAY contain an updated 
property.",
+            "format": "date-time"
+        },
+        "attachments": {
+            "title": "Related objects",
+            "description": "A collection of one or more additional, associated 
objects, similar to the concept of attached files in an email message. An 
object MAY have an attachedObjects property whose value is a JSON Array of 
Objects.",
+            "type": "array",
+            "items": {
+                "type": "object",
+                "javaType": "org.apache.streams.pojo.json.Attachment",
+                "javaInterfaces": ["java.io.Serializable"],
+                "$ref": "./object.json"
+            }
+        },
+        "upstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's 
[RFC3987] identifying objects that duplicate this object's content. An object 
SHOULD contain an upstreamDuplicates property when a publisher is knowingly 
duplicating with a new ID the content from another object. This MAY be used as 
a hint for consumers to use when resolving duplicates between objects received 
from different sources",
+            "items": {
+                "type": "string"
+            }
+        },
+        "downstreamDuplicates": {
+            "type": "array",
+            "description": "A JSON Array of one or more absolute IRI's 
[RFC3987] identifying objects that duplicate this object's content. An object 
SHOULD contain a downstreamDuplicates property when there are known objects, 
possibly in a different system, that duplicate the content in this object. This 
MAY be used as a hint for consumers to use when resolving duplicates between 
objects received from different sources.",
+            "items": {
+                "type": "string"
+            }
+        }
+    },
+    "additionalProperties": true,
+    "links": [
+        {
+            "rel": "describedby",
+            "href": "./objectType/{objectType}.json"
+        }
+    ]
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/alert.json 
b/streams-schemas/src/main/jsonschema/objectTypes/alert.json
new file mode 100644
index 0000000..0ace5de
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/alert.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "alert",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "alert"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/application.json 
b/streams-schemas/src/main/jsonschema/objectTypes/application.json
new file mode 100644
index 0000000..ceb1208
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/application.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "application",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "application"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/article.json 
b/streams-schemas/src/main/jsonschema/objectTypes/article.json
new file mode 100644
index 0000000..8abc7f7
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/article.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "article"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/audio.json 
b/streams-schemas/src/main/jsonschema/objectTypes/audio.json
new file mode 100644
index 0000000..92cef7f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/audio.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "audio",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "audio"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/badge.json 
b/streams-schemas/src/main/jsonschema/objectTypes/badge.json
new file mode 100644
index 0000000..b743236
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/badge.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "badge",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "badge"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/binary.json 
b/streams-schemas/src/main/jsonschema/objectTypes/binary.json
new file mode 100644
index 0000000..8915633
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/binary.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "binary",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "binary"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json 
b/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
new file mode 100644
index 0000000..3d3e3f1
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/bookmark.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "bookmark",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "bookmark"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/comment.json 
b/streams-schemas/src/main/jsonschema/objectTypes/comment.json
new file mode 100644
index 0000000..90249c4
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/comment.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "comment",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "comment"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/device.json 
b/streams-schemas/src/main/jsonschema/objectTypes/device.json
new file mode 100644
index 0000000..faea368
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/device.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "device",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "device"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/event.json 
b/streams-schemas/src/main/jsonschema/objectTypes/event.json
new file mode 100644
index 0000000..479213f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/event.json
@@ -0,0 +1,51 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "event",
+    "description": "xCal fromat for vevent",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/calendar";
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "event"
+        },
+        "attendedBy": {
+            "type": "../collection.json"
+        },
+        "attending": {
+          "type": "../collection.json"
+        },
+        "endTime": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "invited": {
+          "type": "../collection.json"
+        },
+        "maybeAttending": {
+          "type": "../collection.json"
+        },
+        "notAttendedBy": {
+          "type": "../collection.json"
+        },
+        "notAttending": {
+          "type": "../collection.json"
+        },
+        "startTime": {
+          "type": "string",
+          "format": "date-time"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/file.json 
b/streams-schemas/src/main/jsonschema/objectTypes/file.json
new file mode 100644
index 0000000..695ef98
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/file.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "file",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "file"
+        },
+        "fileUrl": {
+          "type": "string"
+        },
+        "mimeType": {
+          "type": "string"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/folder.json 
b/streams-schemas/src/main/jsonschema/objectTypes/folder.json
new file mode 100644
index 0000000..a319efe
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/folder.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "folder",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "folder"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/game.json 
b/streams-schemas/src/main/jsonschema/objectTypes/game.json
new file mode 100644
index 0000000..5f13dfc
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/game.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "game",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "game"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/group.json 
b/streams-schemas/src/main/jsonschema/objectTypes/group.json
new file mode 100644
index 0000000..b67d88d
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/group.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "group",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "group"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/image.json 
b/streams-schemas/src/main/jsonschema/objectTypes/image.json
new file mode 100644
index 0000000..8a19fd1
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/image.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "image",
+    "extends": {
+        "$ref": "../media_link.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "image"
+        },
+        "fullImage": {
+          "type": "string"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/issue.json 
b/streams-schemas/src/main/jsonschema/objectTypes/issue.json
new file mode 100644
index 0000000..29bfe44
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/issue.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "issue",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "issue"
+        },
+        "types": {
+          "type": "array",
+          "items": {
+            "type": "string"
+          }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/job.json 
b/streams-schemas/src/main/jsonschema/objectTypes/job.json
new file mode 100644
index 0000000..2d82975
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/job.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "job",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "job"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/list.json 
b/streams-schemas/src/main/jsonschema/objectTypes/list.json
new file mode 100644
index 0000000..d7c164a
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/list.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "list",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "list"
+        },
+        "items": {
+            "type": "array",
+            "items": {
+                "type": "object",
+                "properties": {
+                    "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/note.json 
b/streams-schemas/src/main/jsonschema/objectTypes/note.json
new file mode 100644
index 0000000..09de97c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/note.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "note",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "note"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/offer.json 
b/streams-schemas/src/main/jsonschema/objectTypes/offer.json
new file mode 100644
index 0000000..38db718
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/offer.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "offer",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "offer"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/organization.json 
b/streams-schemas/src/main/jsonschema/objectTypes/organization.json
new file mode 100644
index 0000000..a3fd5a2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/organization.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "organization",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "organization"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/page.json 
b/streams-schemas/src/main/jsonschema/objectTypes/page.json
new file mode 100644
index 0000000..4f76aa2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/page.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "page",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "page"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/permission.json 
b/streams-schemas/src/main/jsonschema/objectTypes/permission.json
new file mode 100644
index 0000000..32b395c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/permission.json
@@ -0,0 +1,36 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "permission",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "permission"
+        },
+        "scope": {
+            "type": "object",
+            "extends": {
+              "$ref": "../object.json"
+            }
+        },
+        "actions": {
+            "type": "array",
+            "items": {
+               "type": "string",
+               "enumeration": [
+                  "create",
+                  "delete",
+                  "modify"
+               ]
+            }
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/person.json 
b/streams-schemas/src/main/jsonschema/objectTypes/person.json
new file mode 100644
index 0000000..f42eb8e
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/person.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "person",
+    "description": "vCard Format. Does not match PoCO",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        },
+        {
+            "$ref": "http://www.json-schema.org/card";
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "person"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json 
b/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
new file mode 100644
index 0000000..933804b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/photo-album.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "article",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo-album"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/photo.json 
b/streams-schemas/src/main/jsonschema/objectTypes/photo.json
new file mode 100644
index 0000000..347f25c
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/photo.json
@@ -0,0 +1,23 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "photo",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "photo"
+        },
+        "displayName": {
+            "type": "string",
+            "default": "a photo"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/place.json 
b/streams-schemas/src/main/jsonschema/objectTypes/place.json
new file mode 100644
index 0000000..bb96a79
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/place.json
@@ -0,0 +1,43 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "place",
+    "extends": [
+        {
+            "$ref": "../object.json"
+        }
+    ],
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "place"
+        },
+        "address": {
+          "type": "object",
+          "extends": [
+            {
+              "$ref": "http://www.json-schema.org/address";
+            }
+          ]
+        },
+        "position": {
+          "type": "object",
+          "properties": {
+            "altitude": {
+              "type": "number"
+            },
+            "latitude": {
+              "type": "number"
+            },
+            "longitude": {
+              "type": "number"
+            }
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/playlist.json 
b/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
new file mode 100644
index 0000000..6ce9dd2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/playlist.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "playlist",
+    "extends": {
+        "$ref": "../objectTypes/list.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "playlist"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/process.json 
b/streams-schemas/src/main/jsonschema/objectTypes/process.json
new file mode 100644
index 0000000..d717cc7
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/process.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "process",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "process"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/product.json 
b/streams-schemas/src/main/jsonschema/objectTypes/product.json
new file mode 100644
index 0000000..4e035cf
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/product.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "product",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "product"
+        },
+        "fullImage": {
+            "type": "object",
+            "extends": {
+              "$ref": "../media_link.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/property.json 
b/streams-schemas/src/main/jsonschema/objectTypes/property.json
new file mode 100644
index 0000000..0cd630e
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/property.json
@@ -0,0 +1,48 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "property",
+    "description": "A property describes name, path and value. Can be used 
with delete, update or post verbs",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "property"
+        },
+        "displayName": {
+            "type": "string",
+            "description": "The human readable name of the property in the 
appropriate language",
+            "optional": true
+        },
+        "path": {
+            "type": "string",
+            "description": "dot delimited path to the property in the target. 
Ex: streetAddress"
+        }
+    },
+    "example": {
+        "actor": {
+            "id": 1212,
+            "displayName": "Peter"
+        },
+        "verb": "update",
+        "time": "2010-08-02T15:29:00Z",
+        "object": {
+            "objectType": "property",
+            "displayName": "street address",
+            "path": "streetAddress",
+            "content": "234 Amazing St"
+        },
+        "target": {
+            "id": 12121,
+            "time": "2010-08-02T15:29:00Z",
+            "displayName": "Peter's House"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/question.json 
b/streams-schemas/src/main/jsonschema/objectTypes/question.json
new file mode 100644
index 0000000..cccdfe0
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/question.json
@@ -0,0 +1,28 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "question",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "question"
+        },
+        "options": {
+            "type": "array",
+            "items": {
+               "type": "object",
+                "extends": {
+                  "$ref": "../object.json"
+                }
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/review.json 
b/streams-schemas/src/main/jsonschema/objectTypes/review.json
new file mode 100644
index 0000000..7629cb6
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/review.json
@@ -0,0 +1,22 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "review",
+    "extends": {
+        "$ref": "../objectTypes/article.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "review"
+        },
+        "rating": {
+           "type": "number"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/role.json 
b/streams-schemas/src/main/jsonschema/objectTypes/role.json
new file mode 100644
index 0000000..25524ab
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/role.json
@@ -0,0 +1,25 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "role",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "role"
+        },
+        "members": {
+            "type": "object",
+            "extends": {
+              "$ref": "../collection.json"
+            }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/service.json 
b/streams-schemas/src/main/jsonschema/objectTypes/service.json
new file mode 100644
index 0000000..3d4a496
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/service.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "service",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "service"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/song.json 
b/streams-schemas/src/main/jsonschema/objectTypes/song.json
new file mode 100644
index 0000000..46d6eb0
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/song.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "song",
+    "extends": {
+        "$ref": "../objectTypes/audio.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/status.json 
b/streams-schemas/src/main/jsonschema/objectTypes/status.json
new file mode 100644
index 0000000..a029f19
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/status.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "status",
+    "extends": {
+        "$ref": "../objectTypes/note.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "song"
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/task.json 
b/streams-schemas/src/main/jsonschema/objectTypes/task.json
new file mode 100644
index 0000000..fb2f39f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/task.json
@@ -0,0 +1,40 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "task",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "task"
+        },
+        "by": {
+          "type": "string",
+          "format": "date-time"
+        },
+        "prerequisites": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        },
+        "required": {
+          "type": "boolean"
+        },
+        "supersedes": {
+          "type": "array",
+          "items": {
+            "type": "object",
+            "$ref": "../activity.json"
+          }
+        }
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/team.json 
b/streams-schemas/src/main/jsonschema/objectTypes/team.json
new file mode 100644
index 0000000..37419a0
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/team.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "team",
+    "extends": {
+        "$ref": "../object.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "team"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/objectTypes/video.json 
b/streams-schemas/src/main/jsonschema/objectTypes/video.json
new file mode 100644
index 0000000..7ac63d8
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/objectTypes/video.json
@@ -0,0 +1,19 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "video",
+    "extends": {
+        "$ref": "../objectTypes/file.json"
+    },
+    "properties": {
+        "objectType": {
+            "type": "string",
+            "default": "video"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/accept.json 
b/streams-schemas/src/main/jsonschema/verbs/accept.json
new file mode 100644
index 0000000..a9f91fe
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/accept.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Accept",
+    "description": "Indicates that that the actor has accepted the object. For 
instance, a person accepting an award, or accepting an assignment.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "accept"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accepted {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/access.json 
b/streams-schemas/src/main/jsonschema/verbs/access.json
new file mode 100644
index 0000000..156e3cb
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/access.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Access",
+    "description": "Indicates that the actor has accessed the object. For 
instance, a person accessing a room, or accessing a file.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "access"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} accessed {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/acknowledge.json 
b/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
new file mode 100644
index 0000000..2e84c43
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/acknowledge.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Acknowledge",
+    "description": "Indicates that the actor has acknowledged the object. This 
effectively signals that the actor is aware of the object's existence.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "acknowledge"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} acknowledge {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/add.json 
b/streams-schemas/src/main/jsonschema/verbs/add.json
new file mode 100644
index 0000000..cec0c58
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/add.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Add",
+    "description": "Indicates that the actor has added the object to the 
target. For instance, adding a photo to an album.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "add"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} added {object.displayName} to 
{target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/agree.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/agree.json 
b/streams-schemas/src/main/jsonschema/verbs/agree.json
new file mode 100644
index 0000000..5095153
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/agree.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Agree",
+    "description": "Indicates that the actor agrees with the object. For 
example, a person agreeing with an argument, or expressing agreement with a 
particular issue.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "agree"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} agrees with {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/append.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/append.json 
b/streams-schemas/src/main/jsonschema/verbs/append.json
new file mode 100644
index 0000000..648d192
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/append.json
@@ -0,0 +1,24 @@
+{
+    "$schema": "http://json-schema.org/draft-03/schema";,
+    "$license": [
+        
"http://www.openwebfoundation.org/legal/the-owf-1-0-agreements/owfa-1-0";,
+        "http://www.apache.org/licenses/LICENSE-2.0";
+    ],
+    "id": "#",
+    "type": "object",
+    "title": "Append",
+    "description": "Indicates that the actor has appended the object to the 
target. For instance, a person appending a new record to a database.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "append"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} append {object.displayName} to 
{target.displayName}"
+        }
+    }
+}


Reply via email to