224 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			224 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
| {
 | |
|   "$schema": "https://json-schema.org/draft/2020-12/schema",
 | |
|   "$id": "/schema/articles",
 | |
|   "title": "Article",
 | |
|   "description": "Way to store data about articles",
 | |
|   "type": "object",
 | |
|   "properties": {
 | |
|     "articleid": {
 | |
|       "title": "Unique identification",
 | |
|       "description": "A unique uuid string identifying an article",
 | |
|       "type": "string",
 | |
|       "format": "uuid"
 | |
|     },
 | |
|     "title": {
 | |
|       "title": " Article title for SEO",
 | |
|       "description": "Use to create a url if needed",
 | |
|       "type": "string"
 | |
|     },
 | |
|     "description": {
 | |
|       "title": "Description for SEO",
 | |
|       "type": "string"
 | |
|     },
 | |
|     "imgseo": {
 | |
|       "title": "Image for SEO",
 | |
|       "type": "string",
 | |
|       "format": "url"
 | |
|     },
 | |
|     "url": {
 | |
|       "type": "string",
 | |
|       "format": "url",
 | |
|       "comment": "A web access of this article public or private"
 | |
|     },
 | |
|     "author": {
 | |
|       "title": "Auteur",
 | |
|       "type": "string",
 | |
|       "comment": "Can be different than owner"
 | |
|     },
 | |
|     "email": {
 | |
|       "title": "To contact author",
 | |
|       "format": "email",
 | |
|       "comment": "Hide to public but to be aware of a comment "
 | |
|     },
 | |
|     "owner": {
 | |
|       "title": "Owner of this article",
 | |
|       "description": "For accessright purpose this is always equal as alias",
 | |
|       "type": "string"
 | |
|     },
 | |
|     "dt_create": {
 | |
|       "title": "Creation date",
 | |
|       "type": "string",
 | |
|       "format": "date-time"
 | |
|     },
 | |
|     "dt_update": {
 | |
|       "type": "string",
 | |
|       "format": "date-time"
 | |
|     },
 | |
|     "dt_publish": {
 | |
|       "type": "string",
 | |
|       "format": "date-time"
 | |
|     },
 | |
|     "manualkeywords": {
 | |
|       "type": "array",
 | |
|       "items": {
 | |
|         "type": "string",
 | |
|         "enum": [
 | |
|           "tips",
 | |
|           "news",
 | |
|           "tutorial"
 | |
|         ]
 | |
|       }
 | |
|     },
 | |
|     "autokeywords": {
 | |
|       "type": "array",
 | |
|       "items": {
 | |
|         "type": "string"
 | |
|       }
 | |
|     },
 | |
|     "articleevaluations": {
 | |
|       "title": "key is an alias or uuid and value is an evaluation from 0 to 4",
 | |
|       "type": "object",
 | |
|       "patternProperties": {
 | |
|         "*": {
 | |
|           "title": "evaluation 0 dislike 4 like",
 | |
|           "type": "integer",
 | |
|           "minimum": 0,
 | |
|           "maximum": 4
 | |
|         }
 | |
|       },
 | |
|       "articlevalue": {
 | |
|         "type": "float",
 | |
|         "minimum": 0,
 | |
|         "maximum": 4
 | |
|       },
 | |
|       "followupdate": {
 | |
|         "type": "array",
 | |
|         "items": {
 | |
|           "title": "alias",
 | |
|           "type": "string"
 | |
|         }
 | |
|       },
 | |
|       "comments": {
 | |
|         "type": "array",
 | |
|         "items": {
 | |
|           "type": "object",
 | |
|           "properties": {
 | |
|             "comments": {
 | |
|               "type": "string",
 | |
|               "maxLength": 250
 | |
|             },
 | |
|             "dt_create": {
 | |
|               "title": "Creation date",
 | |
|               "type": "string",
 | |
|               "format": "date-time"
 | |
|             },
 | |
|             "alias": {
 | |
|               "type": "string"
 | |
|             },
 | |
|             "commenthash": {
 | |
|               "type": "string"
 | |
|             },
 | |
|             "answerto": {
 | |
|               "type": "integer",
 | |
|               "title": "position of the comments of this response comment"
 | |
|             }
 | |
|           }
 | |
|         }
 | |
|       },
 | |
|       "publiccontent": {
 | |
|         "type": "string"
 | |
|       },
 | |
|       "privatecontent": {
 | |
|         "type": "string"
 | |
|       }
 | |
|     },
 | |
|     "required": [
 | |
|       "articleid",
 | |
|       "owner",
 | |
|       "title",
 | |
|       "description"
 | |
|     ],
 | |
|     "additionalProperties": true,
 | |
|     "apxref": [],
 | |
|     "apxid": "articleid",
 | |
|     "apxuniquekey": [
 | |
|       "articleid"
 | |
|     ],
 | |
|     "apxidx": [
 | |
|       {
 | |
|         "name": "lst_articleid",
 | |
|         "type": "array",
 | |
|         "keyval": "articleid"
 | |
|       },
 | |
|       {
 | |
|         "name": "lst_author",
 | |
|         "type": "array",
 | |
|         "keyval": "author"
 | |
|       },
 | |
|       {
 | |
|         "name": "articleid",
 | |
|         "type": "view",
 | |
|         "keyval": "articleid",
 | |
|         "objkey": [
 | |
|           "articleid",
 | |
|           "title",
 | |
|           "description",
 | |
|           "imgseo",
 | |
|           "url",
 | |
|           "author",
 | |
|           "dt_create",
 | |
|           "dt_update",
 | |
|           "dt_publish",
 | |
|           "manualkeywords",
 | |
|           "autokeywords"
 | |
|         ],
 | |
|         "filter": ""
 | |
|       },
 | |
|       {
 | |
|         "name": "author_articleid",
 | |
|         "type": "distribution",
 | |
|         "keyval": "author",
 | |
|         "filter": ""
 | |
|       },
 | |
|       {
 | |
|         "name": "manualkeywords_articleid",
 | |
|         "type": "distribution",
 | |
|         "keyval": "manualkeywords",
 | |
|         "filter": ""
 | |
|       }
 | |
|     ],
 | |
|     "apxaccessrights": {
 | |
|       "owner": {
 | |
|         "C": [],
 | |
|         "D": [],
 | |
|         "R": [],
 | |
|         "U": [
 | |
|           "title",
 | |
|           "description",
 | |
|           "imgseo",
 | |
|           "url",
 | |
|           "author",
 | |
|           "dt_publish",
 | |
|           "manualkeywords",
 | |
|           "publiccontent",
 | |
|           "privatecontent"
 | |
|         ]
 | |
|       },
 | |
|       "persons": {
 | |
|         "R": [
 | |
|           "articleid",
 | |
|           "title",
 | |
|           "description",
 | |
|           "imgseo",
 | |
|           "url",
 | |
|           "author",
 | |
|           "dt_publish",
 | |
|           "manualkeywords",
 | |
|           "publiccontent",
 | |
|           "comments",
 | |
|           "articlevalue"
 | |
|         ]
 | |
|       }
 | |
|     }
 | |
|   }
 | |
| } |