Skip to content

Instantly share code, notes, and snippets.

@erincandescent
Created March 31, 2013 00:49
Show Gist options
  • Save erincandescent/5279015 to your computer and use it in GitHub Desktop.
Save erincandescent/5279015 to your computer and use it in GitHub Desktop.
Preliminary ActivityStrea.ms schema
from zope.interface import Interface
from zope import schema
class IMediaLink(Interface):
duration = schema.Int(required=False)
height = schema.Int(required=False)
width = schema.Int(required=False)
url = schema.URI(required=True)
class IObject(Interface):
content = schema.SourceText(required=False)
displayName = schema.TextLine(required=False)
downstreamDuplicates = schema.List(schema.URI(), required=False)
id = schema.URI(required=False)
image = schema.Object(IMediaLink, required=False)
objectType = schema.TextLine(required=False)
published = schema.DateTime(required=False)
summary = schema.SourceText(required=False)
updated = schema.DateTime(required=False)
upstreamDuplicates = schema.List(schema.URI(), required=False)
url = schema.URI()
IObject.attachments = schema.List(schema.Object(IObject), required=False)
IObject.author = schema.Object(IObject, required=False)
class IAction(Interface):
actor = schema.Object(IObject, required=True)
content = schema.SourceText(required=True, description=u'HTML description of activity')
generator = schema.Object(IObject, required=False)
icon = schema.Object(IMediaLink, required=False)
id = schema.URI(required=True, description=u'Permanent unique identifier')
object = schema.Object(IObject, required=False)
published = schema.DateTime(required=True)
provider = schema.Object(IObject, required=False)
target = schema.Object(IObject, required=False)
title = schema.TextLine(required=False, description=u'Human language descriptive title in HTML')
verb = schema.TextLine(required=False, default=u'post')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment