You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streams.apache.org by sb...@apache.org on 2016/06/01 17:40:56 UTC

[07/32] incubator-streams git commit: STREAMS-398 - streams-schemas

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/terminate.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/terminate.json b/streams-schemas/src/main/jsonschema/verbs/terminate.json
new file mode 100644
index 0000000..280eb31
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/terminate.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": "Terminate",
+    "description": "Indicates that the actor has terminated the object.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "terminate"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} terminated {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/tie.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/tie.json b/streams-schemas/src/main/jsonschema/verbs/tie.json
new file mode 100644
index 0000000..7530ed2
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/tie.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": "Tie",
+    "description": "Indicates that the actor has neither won or lost the object. This verb is generally only applicable when the object represents some form of competition, such as a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "tie"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} tied at {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unfavorite.json b/streams-schemas/src/main/jsonschema/verbs/unfavorite.json
new file mode 100644
index 0000000..bfa9c20
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unfavorite.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": "UnFavorite",
+    "description": "Indicates that the actor has removed the object from the collection of favorited items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unfavorite"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} removed {object.displayName} as a favorite"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/unlike.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unlike.json b/streams-schemas/src/main/jsonschema/verbs/unlike.json
new file mode 100644
index 0000000..4dc75f6
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unlike.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": "UnLike",
+    "description": "Indicates that the actor has removed the object from the collection of liked items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unlike"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} no longer likes {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json b/streams-schemas/src/main/jsonschema/verbs/unsatisfy.json
new file mode 100644
index 0000000..8ea075b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unsatisfy.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": "UnSatisfy",
+    "description": "Indicates that the actor has not satisfied the object. If a target is specified, it indicates the context within which the object was not satisfied. For instance, if a person fails to satisfy the requirements of some particular challenge, the person is the actor; the requirement is the object and the challenge is the target.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsatisfy"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} has not satisfied {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/unsave.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unsave.json b/streams-schemas/src/main/jsonschema/verbs/unsave.json
new file mode 100644
index 0000000..e45a97f
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unsave.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": "UnSave",
+    "description": "Indicates that the actor has removed the object from the collection of saved items.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unsave"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} unsaved {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/unshare.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/unshare.json b/streams-schemas/src/main/jsonschema/verbs/unshare.json
new file mode 100644
index 0000000..4ca924b
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/unshare.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": "UnSave",
+    "description": "Indicates that the actor is no longer sharing the object. If a target is specified, it indicates the entity with whom the object is no longer being shared.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "unshare"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} is no longer sharing {object.displayName} with {target.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/update.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/update.json b/streams-schemas/src/main/jsonschema/verbs/update.json
new file mode 100644
index 0000000..4b143fc
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/update.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": "Update",
+    "description": "The \"update\" verb indicates that the actor has modified the object. Use of the \"update\" verb is generally reserved to indicate modifications to existing objects or data such as changing an existing user's profile information.",
+    "notes": "The new property value can be a scalar value or an object. See the property object type",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "update"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} updated {target.displayName}'s {object.displayName} to {object.value}"
+        },
+        "object": {
+            "type": "object",
+            "$ref": "../object.json"
+        },
+        "target": {
+            "type": "object",
+            "optional": true,
+            "$ref": "../object.json"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/use.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/use.json b/streams-schemas/src/main/jsonschema/verbs/use.json
new file mode 100644
index 0000000..d5a79fd
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/use.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": "Use",
+    "description": "Indicates that the actor has used the object in some manner.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "use"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} used {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/watch.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/watch.json b/streams-schemas/src/main/jsonschema/verbs/watch.json
new file mode 100644
index 0000000..192d56e
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/watch.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": "Watch",
+    "description": "Indicates that the actor has watched the object. This verb is typically applicable only when the object represents dynamic, visible content such as a movie, a television show or a public performance.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "watch"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} watched {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/jsonschema/verbs/win.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/jsonschema/verbs/win.json b/streams-schemas/src/main/jsonschema/verbs/win.json
new file mode 100644
index 0000000..a5bef2a
--- /dev/null
+++ b/streams-schemas/src/main/jsonschema/verbs/win.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": "Win",
+    "description": "Indicates that the actor has won the object.  For instance, if a person wins a game.",
+    "extends": {
+        "$ref": "../activity.json"
+    },
+    "properties": {
+        "verb": {
+            "type": "string",
+            "default": "win"
+        },
+        "title": {
+            "type": "string",
+            "default": "{actor.displayName} won {object.displayName}"
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/main/xmlschema/activity.xsd
----------------------------------------------------------------------
diff --git a/streams-schemas/src/main/xmlschema/activity.xsd b/streams-schemas/src/main/xmlschema/activity.xsd
new file mode 100644
index 0000000..1d81b44
--- /dev/null
+++ b/streams-schemas/src/main/xmlschema/activity.xsd
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ 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.
+  -->
+
+<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <xs:element name="id" type="xs:string"/>
+    <xs:element name="actor" type="objectType"/>
+    <xs:element name="verb" type="verbType"/>
+    <xs:element name="object" type="objectType"/>
+    <xs:element name="target" type="objectType"/>
+    <xs:element name="object-type" type="xs:string"/>
+    <xs:element name="published" type="xs:dateTime"/>
+    <xs:element name="updated" type="xs:dateTime"/>
+    <xs:element name="provider" type="objectType"/>
+    <xs:element name="title" type="xs:string"/>
+    <xs:element name="content" type="xs:string"/>
+    <xs:element name="url" type="xs:string"/>
+
+    <xs:simpleType name="verbType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="favorite"/>
+            <xs:enumeration value="follow"/>
+            <xs:enumeration value="join"/>
+            <xs:enumeration value="like"/>
+            <xs:enumeration value="make-friend"/>
+            <xs:enumeration value="play"/>
+            <xs:enumeration value="post"/>
+            <xs:enumeration value="rsvp-yes"/>
+            <xs:enumeration value="rsvp-no"/>
+            <xs:enumeration value="rsvp-maybe"/>
+            <xs:enumeration value="save"/>
+            <xs:enumeration value="share"/>
+            <xs:enumeration value="tag"/>
+            <xs:enumeration value="update"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:complexType name="objectType">
+        <xs:sequence>
+            <xs:element name="id" type="xs:string"/>
+            <xs:element name="image" type="mediaLink"/>
+            <xs:element name="displayName" type="xs:string"/>
+            <xs:element name="summary" type="xs:string"/>
+            <xs:element name="content" type="xs:string"/>
+            <xs:element name="url" type="xs:string"/>
+            <xs:element name="published" type="xs:string"/>
+            <xs:element name="updated" type="xs:string"/>
+            <xs:element name="object-type" >
+                <xs:simpleType>
+                    <xs:restriction base="xs:string">
+                        <xs:enumeration value="article"/>
+                        <xs:enumeration value="audio"/>
+                        <xs:enumeration value="badge"/>
+                        <xs:enumeration value="collection"/>
+                        <xs:enumeration value="comment"/>
+                        <xs:enumeration value="course"/>
+                        <xs:enumeration value="file"/>
+                        <xs:enumeration value="image"/>
+                        <xs:enumeration value="person"/>
+                        <xs:enumeration value="review"/>
+                        <xs:enumeration value="service"/>
+                    </xs:restriction>
+                </xs:simpleType>
+            </xs:element>
+        </xs:sequence>
+
+    </xs:complexType>
+
+    <xs:complexType name="mediaLink">
+        <xs:sequence>
+            <xs:element name="duration" type="xs:positiveInteger"/>
+            <xs:element name="height" type="xs:positiveInteger"/>
+            <xs:element name="width" type="xs:positiveInteger"/>
+            <xs:element name="url" type="xs:string"/>
+        </xs:sequence>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/site/resources/activity.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/activity.json b/streams-schemas/src/site/resources/activity.json
new file mode 100644
index 0000000..8c058a4
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/activity.xsd
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/activity.xsd b/streams-schemas/src/site/resources/activity.xsd
new file mode 100644
index 0000000..1d81b44
--- /dev/null
+++ b/streams-schemas/src/site/resources/activity.xsd
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<!--
+  ~ 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.
+  -->
+
+<xs:schema version="1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+
+    <xs:element name="id" type="xs:string"/>
+    <xs:element name="actor" type="objectType"/>
+    <xs:element name="verb" type="verbType"/>
+    <xs:element name="object" type="objectType"/>
+    <xs:element name="target" type="objectType"/>
+    <xs:element name="object-type" type="xs:string"/>
+    <xs:element name="published" type="xs:dateTime"/>
+    <xs:element name="updated" type="xs:dateTime"/>
+    <xs:element name="provider" type="objectType"/>
+    <xs:element name="title" type="xs:string"/>
+    <xs:element name="content" type="xs:string"/>
+    <xs:element name="url" type="xs:string"/>
+
+    <xs:simpleType name="verbType">
+        <xs:restriction base="xs:string">
+            <xs:enumeration value="favorite"/>
+            <xs:enumeration value="follow"/>
+            <xs:enumeration value="join"/>
+            <xs:enumeration value="like"/>
+            <xs:enumeration value="make-friend"/>
+            <xs:enumeration value="play"/>
+            <xs:enumeration value="post"/>
+            <xs:enumeration value="rsvp-yes"/>
+            <xs:enumeration value="rsvp-no"/>
+            <xs:enumeration value="rsvp-maybe"/>
+            <xs:enumeration value="save"/>
+            <xs:enumeration value="share"/>
+            <xs:enumeration value="tag"/>
+            <xs:enumeration value="update"/>
+        </xs:restriction>
+    </xs:simpleType>
+
+    <xs:complexType name="objectType">
+        <xs:sequence>
+            <xs:element name="id" type="xs:string"/>
+            <xs:element name="image" type="mediaLink"/>
+            <xs:element name="displayName" type="xs:string"/>
+            <xs:element name="summary" type="xs:string"/>
+            <xs:element name="content" type="xs:string"/>
+            <xs:element name="url" type="xs:string"/>
+            <xs:element name="published" type="xs:string"/>
+            <xs:element name="updated" type="xs:string"/>
+            <xs:element name="object-type" >
+                <xs:simpleType>
+                    <xs:restriction base="xs:string">
+                        <xs:enumeration value="article"/>
+                        <xs:enumeration value="audio"/>
+                        <xs:enumeration value="badge"/>
+                        <xs:enumeration value="collection"/>
+                        <xs:enumeration value="comment"/>
+                        <xs:enumeration value="course"/>
+                        <xs:enumeration value="file"/>
+                        <xs:enumeration value="image"/>
+                        <xs:enumeration value="person"/>
+                        <xs:enumeration value="review"/>
+                        <xs:enumeration value="service"/>
+                    </xs:restriction>
+                </xs:simpleType>
+            </xs:element>
+        </xs:sequence>
+
+    </xs:complexType>
+
+    <xs:complexType name="mediaLink">
+        <xs:sequence>
+            <xs:element name="duration" type="xs:positiveInteger"/>
+            <xs:element name="height" type="xs:positiveInteger"/>
+            <xs:element name="width" type="xs:positiveInteger"/>
+            <xs:element name="url" type="xs:string"/>
+        </xs:sequence>
+    </xs:complexType>
+
+</xs:schema>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-streams/blob/02b5adda/streams-schemas/src/site/resources/collection.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/collection.json b/streams-schemas/src/site/resources/collection.json
new file mode 100644
index 0000000..8173b75
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/media_link.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/media_link.json b/streams-schemas/src/site/resources/media_link.json
new file mode 100644
index 0000000..fa55b2f
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/object.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/object.json b/streams-schemas/src/site/resources/object.json
new file mode 100644
index 0000000..97adc3c
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/alert.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/alert.json b/streams-schemas/src/site/resources/objectTypes/alert.json
new file mode 100644
index 0000000..0ace5de
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/application.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/application.json b/streams-schemas/src/site/resources/objectTypes/application.json
new file mode 100644
index 0000000..ceb1208
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/article.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/article.json b/streams-schemas/src/site/resources/objectTypes/article.json
new file mode 100644
index 0000000..8abc7f7
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/audio.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/audio.json b/streams-schemas/src/site/resources/objectTypes/audio.json
new file mode 100644
index 0000000..92cef7f
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/badge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/badge.json b/streams-schemas/src/site/resources/objectTypes/badge.json
new file mode 100644
index 0000000..b743236
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/binary.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/binary.json b/streams-schemas/src/site/resources/objectTypes/binary.json
new file mode 100644
index 0000000..8915633
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/bookmark.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/bookmark.json b/streams-schemas/src/site/resources/objectTypes/bookmark.json
new file mode 100644
index 0000000..3d3e3f1
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/comment.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/comment.json b/streams-schemas/src/site/resources/objectTypes/comment.json
new file mode 100644
index 0000000..90249c4
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/device.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/device.json b/streams-schemas/src/site/resources/objectTypes/device.json
new file mode 100644
index 0000000..faea368
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/event.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/event.json b/streams-schemas/src/site/resources/objectTypes/event.json
new file mode 100644
index 0000000..479213f
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/file.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/file.json b/streams-schemas/src/site/resources/objectTypes/file.json
new file mode 100644
index 0000000..695ef98
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/folder.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/folder.json b/streams-schemas/src/site/resources/objectTypes/folder.json
new file mode 100644
index 0000000..a319efe
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/game.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/game.json b/streams-schemas/src/site/resources/objectTypes/game.json
new file mode 100644
index 0000000..5f13dfc
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/group.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/group.json b/streams-schemas/src/site/resources/objectTypes/group.json
new file mode 100644
index 0000000..b67d88d
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/image.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/image.json b/streams-schemas/src/site/resources/objectTypes/image.json
new file mode 100644
index 0000000..8a19fd1
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/issue.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/issue.json b/streams-schemas/src/site/resources/objectTypes/issue.json
new file mode 100644
index 0000000..29bfe44
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/job.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/job.json b/streams-schemas/src/site/resources/objectTypes/job.json
new file mode 100644
index 0000000..2d82975
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/list.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/list.json b/streams-schemas/src/site/resources/objectTypes/list.json
new file mode 100644
index 0000000..d7c164a
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/note.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/note.json b/streams-schemas/src/site/resources/objectTypes/note.json
new file mode 100644
index 0000000..09de97c
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/offer.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/offer.json b/streams-schemas/src/site/resources/objectTypes/offer.json
new file mode 100644
index 0000000..38db718
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/organization.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/organization.json b/streams-schemas/src/site/resources/objectTypes/organization.json
new file mode 100644
index 0000000..a3fd5a2
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/page.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/page.json b/streams-schemas/src/site/resources/objectTypes/page.json
new file mode 100644
index 0000000..4f76aa2
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/permission.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/permission.json b/streams-schemas/src/site/resources/objectTypes/permission.json
new file mode 100644
index 0000000..32b395c
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/person.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/person.json b/streams-schemas/src/site/resources/objectTypes/person.json
new file mode 100644
index 0000000..f42eb8e
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/photo-album.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/photo-album.json b/streams-schemas/src/site/resources/objectTypes/photo-album.json
new file mode 100644
index 0000000..933804b
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/photo.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/photo.json b/streams-schemas/src/site/resources/objectTypes/photo.json
new file mode 100644
index 0000000..347f25c
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/place.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/place.json b/streams-schemas/src/site/resources/objectTypes/place.json
new file mode 100644
index 0000000..bb96a79
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/playlist.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/playlist.json b/streams-schemas/src/site/resources/objectTypes/playlist.json
new file mode 100644
index 0000000..6ce9dd2
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/process.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/process.json b/streams-schemas/src/site/resources/objectTypes/process.json
new file mode 100644
index 0000000..d717cc7
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/product.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/product.json b/streams-schemas/src/site/resources/objectTypes/product.json
new file mode 100644
index 0000000..4e035cf
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/property.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/property.json b/streams-schemas/src/site/resources/objectTypes/property.json
new file mode 100644
index 0000000..0cd630e
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/question.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/question.json b/streams-schemas/src/site/resources/objectTypes/question.json
new file mode 100644
index 0000000..cccdfe0
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/review.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/review.json b/streams-schemas/src/site/resources/objectTypes/review.json
new file mode 100644
index 0000000..7629cb6
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/role.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/role.json b/streams-schemas/src/site/resources/objectTypes/role.json
new file mode 100644
index 0000000..25524ab
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/service.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/service.json b/streams-schemas/src/site/resources/objectTypes/service.json
new file mode 100644
index 0000000..3d4a496
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/song.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/song.json b/streams-schemas/src/site/resources/objectTypes/song.json
new file mode 100644
index 0000000..46d6eb0
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/status.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/status.json b/streams-schemas/src/site/resources/objectTypes/status.json
new file mode 100644
index 0000000..a029f19
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/task.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/task.json b/streams-schemas/src/site/resources/objectTypes/task.json
new file mode 100644
index 0000000..fb2f39f
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/team.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/team.json b/streams-schemas/src/site/resources/objectTypes/team.json
new file mode 100644
index 0000000..37419a0
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/objectTypes/video.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/objectTypes/video.json b/streams-schemas/src/site/resources/objectTypes/video.json
new file mode 100644
index 0000000..7ac63d8
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/verbs/accept.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/accept.json b/streams-schemas/src/site/resources/verbs/accept.json
new file mode 100644
index 0000000..a9f91fe
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/verbs/access.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/access.json b/streams-schemas/src/site/resources/verbs/access.json
new file mode 100644
index 0000000..156e3cb
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/verbs/acknowledge.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/acknowledge.json b/streams-schemas/src/site/resources/verbs/acknowledge.json
new file mode 100644
index 0000000..2e84c43
--- /dev/null
+++ b/streams-schemas/src/site/resources/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/site/resources/verbs/add.json
----------------------------------------------------------------------
diff --git a/streams-schemas/src/site/resources/verbs/add.json b/streams-schemas/src/site/resources/verbs/add.json
new file mode 100644
index 0000000..cec0c58
--- /dev/null
+++ b/streams-schemas/src/site/resources/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}"
+        }
+    }
+}