mirror of https://github.com/gsi-upm/senpy
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
162 lines
3.7 KiB
JSON
162 lines
3.7 KiB
JSON
{
|
|
"$schema": "http://json-schema.org/draft-04/schema#",
|
|
"Results": {
|
|
"title": "Results",
|
|
"description": "The results of an analysis",
|
|
"type": "object",
|
|
"properties": {
|
|
"@context": {
|
|
"$ref": "#/Context"
|
|
},
|
|
"@id": {
|
|
"description": "ID of the analysis",
|
|
"type": "string"
|
|
},
|
|
"analysis": {
|
|
"type": "array",
|
|
"default": [],
|
|
"items": {
|
|
"$ref": "#/Analysis"
|
|
}
|
|
},
|
|
"entries": {
|
|
"type": "array",
|
|
"default": [],
|
|
"items": {
|
|
"$ref": "#/Entry"
|
|
}
|
|
}
|
|
|
|
},
|
|
"required": ["@id", "analysis", "entries"]
|
|
},
|
|
"Context": {
|
|
"description": "JSON-LD Context",
|
|
"type": ["array", "string", "object"]
|
|
},
|
|
"Analysis": {
|
|
"description": "Senpy analysis",
|
|
"type": "object",
|
|
"properties": {
|
|
"@id": {
|
|
"type": "string"
|
|
},
|
|
"@type": {
|
|
"type": "string",
|
|
"description": "Type of the analysis. e.g. marl:SentimentAnalysis"
|
|
}
|
|
},
|
|
"required": ["@id", "@type"]
|
|
},
|
|
"Entry": {
|
|
"properties": {
|
|
"@id": {
|
|
"type": "string"
|
|
},
|
|
"@type": {
|
|
"enum": [["nif:RFC5147String", "nif:Context"]]
|
|
},
|
|
"nif:isString": {
|
|
"description": "String contained in this Context",
|
|
"type": "string"
|
|
},
|
|
"sentiments": {
|
|
"type": "array",
|
|
"items": {"$ref": "#/Sentiment" }
|
|
},
|
|
"emotions": {
|
|
"type": "array",
|
|
"items": {"$ref": "#/EmotionSet" }
|
|
},
|
|
"entities": {
|
|
"type": "array",
|
|
"items": {"$ref": "#/Entity" }
|
|
},
|
|
"topics": {
|
|
"type": "array",
|
|
"items": {"$ref": "#/Topic" }
|
|
},
|
|
"suggestions": {
|
|
"type": "array",
|
|
"items": {"$ref": "#/Suggestion" }
|
|
}
|
|
},
|
|
"required": ["@id", "nif:isString"]
|
|
},
|
|
"Sentiment": {
|
|
"properties": {
|
|
"@id": {"type": "string"},
|
|
"nif:beginIndex": {"type": "integer"},
|
|
"nif:endIndex": {"type": "integer"},
|
|
"nif:anchorOf": {
|
|
"description": "Piece of context that contains the Sentiment",
|
|
"type": "string"
|
|
},
|
|
"marl:hasPolarity": {
|
|
"enum": ["marl:Positive", "marl:Negative", "marl:Neutral"]
|
|
},
|
|
"marl:polarityValue": {
|
|
"type": "number"
|
|
},
|
|
"prov:wasGeneratedBy": {
|
|
"type": "string",
|
|
"description": "The ID of the analysis that generated this Sentiment. The full object should be included in the \"analysis\" property of the root object"
|
|
}
|
|
},
|
|
"required": ["@id", "prov:wasGeneratedBy"]
|
|
},
|
|
"EmotionSet": {
|
|
"properties": {
|
|
"@id": {"type": "string"},
|
|
"nif:beginIndex": {"type": "integer"},
|
|
"nif:endIndex": {"type": "integer"},
|
|
"nif:anchorOf": {
|
|
"description": "Piece of context that contains the Sentiment",
|
|
"type": "string"
|
|
},
|
|
"onyx:hasEmotion": {
|
|
"$ref": "#/Emotion"
|
|
},
|
|
"prov:wasGeneratedBy": {
|
|
"type": "string",
|
|
"description": "The ID of the analysis that generated this Emotion. The full object should be included in the \"analysis\" property of the root object"
|
|
}
|
|
},
|
|
"required": ["@id", "prov:wasGeneratedBy", "onyx:hasEmotion"]
|
|
},
|
|
"Emotion": {
|
|
"type": "object"
|
|
},
|
|
"Entity": {
|
|
"type": "object"
|
|
},
|
|
"Topic": {
|
|
"type": "object"
|
|
},
|
|
"Suggestion": {
|
|
"type": "object"
|
|
},
|
|
"Plugins": {
|
|
"properties": {
|
|
"plugins": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/Plugin"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"Plugin": {
|
|
"type": "object",
|
|
"required": ["@id"],
|
|
"properties": {
|
|
"@id": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"Response": {
|
|
"type": "object"
|
|
}
|
|
}
|