2023-03-27 07:52:21 +02:00
{
"$schema" : "https://json-schema.org/draft/2020-12/schema" ,
2023-04-13 07:46:35 +02:00
"$id" : "nationchains/schema/pagans" ,
2023-03-27 07:52:21 +02:00
"title" : "Pagan definition" ,
"description" : "A pagan is an uuid to manage identity by deliver a way to its owner to proof he owns from a privatekey in the socialworld of apXtrib and manage access keys deliver by druid or mayor to interact physical ressource (CRUD on it)." ,
"type" : "objects" ,
"properties" : {
"paganId" : {
"description" : "|Pagans|paganiddesc" ,
"apxdesclong" : "|Pagans|paganiddesclong"
"apxinfo" : "|Pagans|paganidinfo" ,
"type" : "string" ,
"apxtype" : "uuidv4"
} ,
"login" : {
"description" : "|Pagans|logindesc" ,
"type" : "string" ,
"pattern" : "^[a-z0-9]*$" ,
"apxinfo" : "|Pagans|logininfo"
} ,
"password" : {
"description" : "|Pagans|pswdesc" ,
"type" : "string"
} ,
"townId" : {
"description" : "" ,
"type" : "string" ,
"$apxenumkey" : "socialworld/objects/nations/searchindex/towns_townId_all.json"
} ,
"tribeId" : {
"description" : "" ,
"type" : "string" ,
"$apxenumkey" : "tribes/objects/tribes/searchindex/tribes_tribeId_all.json"
} ,
"publicKey" : {
"description" : "|Pagans|publickeydesc" ,
"type" : "string" ,
"apxinfo" : "|Pagans|publickeyinfo"
} ,
"biography" : {
"description" : "|Pagans|biographydesc" ,
"type" : "string" ,
"pattern" : "^.{O,150}$"
} ,
"imgavatar" : {
"description" : "|Pagans|imgavatardesc" ,
"apxinfo" : "|Pagans|imgavatarinfo" ,
"type" : "string" ,
"apxtype" : "file"
} ,
"emailrecup" : {
"description" : "|Pagans|emaildesc" ,
"tpl" : "input" ,
"type" : "email" ,
"check" : [ "emailadress" , "unique" ] ,
} ,
"dtcreate" : {
"description" : "|Pagans|dtcreatedesc" ,
"type" : "string" ,
"pattern" : "^[0-9]{4}-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])$" ,
"default" : "moment(new Date()).format('YYYY-MM-DD')"
} , "dtupdate" : {
"description" : "|Pagans|dtupdatedesc" ,
"type" : "string" ,
"pattern" : "^[0-9]{4}-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])$" ,
"default" : "moment(new Date()).format('YYYY-MM-DD')"
} , "dtlastlogin" {
"description" : "|Pagans|dtlastlogindesc" ,
"type" : "string" ,
"pattern" : "^[0-9]{4}-(0?[1-9]|1[012])-(0?[1-9]|[12][0-9]|3[01])$" ,
"default" : "moment(new Date()).format('YYYY-MM-DD')"
} , "accessrights" : {
"description" : "|Pagans|accessrightsdesc" ,
"type" : "object" ,
"$ref" : "socialworld/schema/accessright.json"
}
} ,
"required" : [ "paganId" , "login" , "townId" , "tribeId" ] ,
"apxprimarykey" : "paganId" ,
"apxunique" : [ "login" ] ,
"apxsearchindex" : [
{ "key" : "login" , "value" : "paganId" } ,
{ "key" : "email" , "value" : "paganId" } ,
{ "key" : "token" , "value" : "paganId" }
]
}