Skip to content

Commit 4f57bbb

Browse files
committed
Preserve .gitignore and cyclonedx-ai-ml-2.0.schema.json from 2.0-dev-ai-ml branch
1 parent 6ec41a6 commit 4f57bbb

2 files changed

Lines changed: 166 additions & 0 deletions

File tree

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1+
# Filesystem
12
.DS_Store
3+
4+
# Tooling
25
.idea/
36
.vscode/
47
tools/target/
Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
{
2+
"$schema": "https://json-schema.org/draft/2020-12/schema",
3+
"$id": "https://cyclonedx.org/schema/2.0/model/cyclonedx-ai-ml-2.0.schema.json",
4+
"type": "null",
5+
"title": "CycloneDX Threat Model",
6+
"$comment": "OWASP CycloneDX is an Ecma International standard (ECMA-424) developed in collaboration between the OWASP Foundation and Ecma Technical Committee 54 (TC54). The standard is published under a royalty-free patent policy. This JSON schema is the reference implementation and is licensed under the Apache License 2.0.",
7+
"$defs": {
8+
"designConsiderations": {
9+
"type": "object",
10+
"properties": {
11+
"users": {
12+
"$comment": "Attempting to reuse actor defn.",
13+
"$todos": [
14+
"Discuss moving actor from blueprints to common",
15+
"Add externalReferences to actor as these may be defined by external orgs. and their docs."
16+
],
17+
"type": "array",
18+
"title": "Users",
19+
"description": "List users the model is designed for.",
20+
"uniqueItems": true,
21+
"items": {
22+
"$ref": "cyclonedx-blueprint-2.0.schema.json$defs/actor"
23+
}
24+
},
25+
"useCases": {
26+
"$comment": "",
27+
"$todos": [
28+
"TODO"
29+
],
30+
"$ref": "cyclonedx-usecase-2.0.schema.json#/$defs/useCases",
31+
"title": "User cases",
32+
"description": "Lists use cases the model was designed for."
33+
},
34+
"technicalLimitations": {
35+
"$comment": "",
36+
"$ref": "",
37+
"description": ""
38+
},
39+
"performanceTradeoffs": {
40+
"$comment": "",
41+
"$ref": "",
42+
"description": ""
43+
},
44+
"ethicalConsiderations": {
45+
"$comment": "",
46+
"$ref": "",
47+
"description": ""
48+
},
49+
"environmentalConsiderations": {
50+
"$comment": "",
51+
"$ref": "",
52+
"description": ""
53+
},
54+
"fairnessAssessments": {
55+
"$comment": "",
56+
"$ref": "",
57+
"description": ""
58+
}
59+
}
60+
},
61+
"riskGroup": {
62+
"type": "object",
63+
"$comment": "Leverages risk schema's riskDomain (incl. type, description and priority).",
64+
"$todos": [
65+
"Verify riskDomain type enum. has all the values we need for EU AI Act."
66+
],
67+
"description": "Provides a means of expressing a design, runtime or other consideration for a specific aspect of the model.",
68+
"additionalProperties": false,
69+
"required": [
70+
"groupName"
71+
],
72+
"allOf": [
73+
{
74+
"$ref": "cyclonedx-risk-2.0.schema.json/$defs/riskDomain"
75+
}
76+
],
77+
"properties": {
78+
"groupName": {
79+
"type": "string",
80+
"title": "Group Name",
81+
"description": "The name of the group at risk."
82+
},
83+
"externalReferences": {
84+
"type": "array",
85+
"description": "references to external resources that describe the risk group.",
86+
"items": {
87+
"$ref": "cyclonedx-common-2.0.schema.json#/$defs/externalReference"
88+
}
89+
},
90+
"properties": {
91+
"description": "Properties of the risk group.",
92+
"$ref": "cyclonedx-common-2.0.schema.json#/$defs/properties"
93+
}
94+
}
95+
},
96+
"considerations": {
97+
"type": "array",
98+
"bom-ref": {
99+
"$ref": "#/$defs/consideration"
100+
}
101+
},
102+
"consideration": {
103+
"type": "object",
104+
"$comment": "Leverages risk schema",
105+
"description": "Provides a means of expressing a design, runtime or other consideration for a specific aspect of the model.",
106+
"required": [
107+
"name"
108+
],
109+
"additionalProperties": false,
110+
"properties": {
111+
"name": {
112+
"type": "string",
113+
"title": "Name",
114+
"description": "TODO"
115+
},
116+
"description": {
117+
"type": "string",
118+
"title": "Description",
119+
"description": "TODO"
120+
},
121+
"groupsAtRisk": {
122+
"type": "array",
123+
"title": "Groups At Risk",
124+
"description": "The groups at risk of being systematically disadvantaged by the model.",
125+
"items": {
126+
"$ref": "#/$defs/riskGroup"
127+
}
128+
},
129+
"externalReferences": {
130+
"type": "array",
131+
"items": {
132+
"$ref": "cyclonedx-common-2.0.schema.json#/$defs/externalReference"
133+
}
134+
},
135+
"properties": {
136+
"$ref": "cyclonedx-common-2.0.schema.json#/$defs/properties"
137+
}
138+
}
139+
},
140+
"foo": {
141+
"type": "object",
142+
"$comment": "",
143+
"description": "",
144+
"required": [
145+
"name"
146+
],
147+
"additionalProperties": false,
148+
"properties": {
149+
"name": "string"
150+
}
151+
},
152+
"trainingProfile": {
153+
"type": "object",
154+
"description": "Reference to data and datasets used for training.",
155+
"$comment": "",
156+
"allOf": [
157+
{
158+
"$ref": "#/$defs/cyclonedx-data-2.0/$defs/dataProfile"
159+
}
160+
]
161+
}
162+
}
163+
}

0 commit comments

Comments
 (0)