56 lines
2.2 KiB
JSON
56 lines
2.2 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://example.org/schema/v1/declaration.schema.json",
|
|
"title": "AI Usage Declaration",
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["@context", "@type", "schemaVersion", "language", "components", "assurance"],
|
|
"properties": {
|
|
"@context": {"type": "string"},
|
|
"@type": {"const": "AIUsageDeclaration"},
|
|
"schemaVersion": {"const": "1.1"},
|
|
"subject": {"type": "string", "format": "uri"},
|
|
"declaredAt": {"type": "string", "format": "date-time"},
|
|
"language": {"enum": ["de", "en", "fr", "es", "it", "nl", "pt", "pl"]},
|
|
"components": {"type": "object", "minProperties": 1, "additionalProperties": {"$ref": "#/$defs/component"}},
|
|
"editorialResponsibility": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"name": {"type": "string"},
|
|
"url": {"type": "string", "format": "uri"}
|
|
}
|
|
},
|
|
"assurance": {"enum": ["selfDeclared", "technicallyRecorded", "signed", "verified"]},
|
|
"presentation": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"title": {"type": "string", "maxLength": 120},
|
|
"description": {"type": "string", "maxLength": 500},
|
|
"badgeLabel": {"type": "string", "maxLength": 40},
|
|
"badgeMessage": {"type": "string", "maxLength": 80},
|
|
"leftColor": {"type": "string", "pattern": "^#[0-9A-Fa-f]{6}$"},
|
|
"rightColor": {"type": "string", "pattern": "^#[0-9A-Fa-f]{6}$"}
|
|
}
|
|
}
|
|
},
|
|
"$defs": {
|
|
"component": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"required": ["aiExtent", "humanReview"],
|
|
"properties": {
|
|
"aiExtent": {"enum": ["none", "assisted", "partial", "mostly", "full"]},
|
|
"activities": {
|
|
"type": "array",
|
|
"uniqueItems": true,
|
|
"items": {"enum": ["research", "summarisation", "drafting", "generation", "translation", "editing", "imageGeneration", "codeGeneration", "transcription", "classification"]}
|
|
},
|
|
"humanReview": {"enum": ["none", "basic", "editorial", "expert"]},
|
|
"note": {"type": "string", "maxLength": 500}
|
|
}
|
|
}
|
|
}
|
|
}
|