1) System should be able handle authedication on every domain model (GET, POST, PUT, DELETE)
2) CRUD
---------------------Create---------------------
POST /dataservices/order
Input 1**
{
id : 'OR001'
type : 'order',
customer : 'C2',
orderItem : [
{
qty: 2,
expiredate : '12/21/2012',
product : 'P1'
}
],
tags : 'T1', 'T2'
}

Input 2**
{
id : 'OR001'
type : 'order',
customer : {
id : 'C2',
name : 'Sankar'
},
orderItem : {
qty: 2,
expiredate : '12/21/2012',
product : {
id : 'P1',
name : 'whatever'
}
}
,
tags : {
id:'T1',
title : 'TAG 1'
},
{
_id:'T2',
title : 'TAG 2'
}

}
------------------------------------------------

---------------------Read-----------------------
GET /dataservices/order/OR001
{
id : 'OR001'
type : 'order',
customer : {
id : 'C2',
name : 'Sankar'
},
orderItem : {
qty: 2,
expiredate : '12/21/2012',
product : {
id : 'P1',
name : 'whatever'
}
}
,
tags : {
id:'T1',
title : 'TAG 1'
},
{
_id:'T2',
title : 'TAG 2'
}

}
------------------------------------------------

---------------------Update---------------------
PUT /dataservices/order/OR001
Method 1**
{
id : 'OR001'
_rev : '',
type : 'order',
customer : 'C2',
orderItem : [
{
qty: 2,
expiredate : '12/21/2012',
product : 'P1'
}
],
tags : 'T1', 'T2'
}

Method 2**
{
id : 'OR001'
_rev : '',
type : 'order',
customer : {
id : 'C2',
name : 'Sankar'
},
orderItem : {
qty: 2,
expiredate : '12/21/2012',
product : {
id : 'P1',
name : 'whatever'
}
}
,
tags : {
id:'T1',
title : 'TAG 1'
},
{
_id:'T2',
title : 'TAG 2'
}

}
------------------------------------------------
Delete - No Delete Operation here
View - Just View.

------------------------------------------------
3) Response
------------------------------------------------
Success Output**
{
status : 'ok',
message : '',
root : {

}
}
Error Output**
{
status : 'error',
message : '',
root : {

}
}
------------------------------------------------
4) Manage relationship between documents...
HasOne
HasMany
BelongsTo
4) Documents should be stored in database as follows.
--------------------------------------------------
{
_id : 'C1',
type : 'customer',
name : 'Sankar'
}
{
_id : 'T1',
type : 'tag',
name : 'Tag 1'
}
{
_id : 'T2',
type : 'tag',
name : 'Tag 2'
}
{
_id : 'P1',
type : 'product',
name : 'whatever'
}
{
_id : 'OR1',
type : 'order',
customer : 'CU002',
orderItem : [
{
qty: 2,
expiredate : '12/21/2012',
product : 'P1'
}
]
tags : 'TAG001', 'TAG002'
}
--------------------------------------------------
6) Client and Server side has to have new method of load(types). This method should be able to
load related object and append it.
7) Create/Update - should remove all depended objects based Model and update relatives
before push it db.
8) Model has to create from server side. Expected relationship object and 1..1,1
9) User Interface
Every page is json Implementation and Object can have it's own permission.
10) Authorization
Permission Object Implementation

Last edited Nov 28, 2012 at 7:47 PM by kirubasankars, version 2

Comments

No comments yet.