You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
!!! info inline end "Current Registered Namespaces"
59
58
60
59
The SSVC project currently has a set of registered namespaces that are
@@ -76,7 +75,7 @@ A list of the current registered namespaces can be found in the sidebar.
76
75
77
76
Registered namespaces are intended to be used as follows:
78
77
79
-
- Objects in the `ssvc` namespace are managed by the SSVC
78
+
- Objects in the `ssvc` namespace are managed by the SSVC
80
79
project team. We have complete control over these ones.
81
80
- Objects in other explicitly registered namespaces are provided for convenience,
82
81
but the SSVC team is not responsible for modifying the content or semantics of
@@ -112,8 +111,6 @@ Registered namespaces are intended to be used as follows:
112
111
Suggestions for changes to the CVSS specifications should be directed to the
113
112
[FIRST CVSS Special Interest Group](https://www.first.org/cvss/) (SIG).
114
113
115
-
116
-
117
114
!!! example "Potential Standards-based namespaces"
118
115
119
116
We may in the future add namespaces when needed to reflect different standards
@@ -140,8 +137,8 @@ we expect that this will rarely lead to conflicts in practice.
140
137
- Unregistered namespaces must use the `x_` prefix.
141
138
- Following the `x_` prefix, unregistered namespaces must use reverse domain name notation of a domain under their control to ensure uniqueness.
142
139
- Aside from the required `x_` prefix, unregistered namespaces must contain only alphanumeric characters, dots (`.`), and dashes (`-`).
143
-
- For any domain using other characters, DNS Punycode must be used
144
140
141
+
- For any domain using other characters, DNS Punycode must be used
145
142
146
143
!!! warning "Namespace Conflicts"
147
144
@@ -150,7 +147,6 @@ we expect that this will rarely lead to conflicts in practice.
150
147
`x_example.test`, and there are no guarantees of global uniqueness for the
151
148
decision points in the `x_example.test` namespace.
152
149
153
-
154
150
!!! tip "Test Namespace"
155
151
156
152
The `x_example.test` namespace is used for testing purposes and is not intended for production use.
@@ -198,6 +194,7 @@ A single fragment identifier (`#`) may be included in an extension segment, but
198
194
Fragment segments can be used to indicate a specific interpretation or context for the extension.
199
195
Note: Without a fragment segment, all decision points of an organization fall into one bucket, which is in most cases not intended. Therefore, the use of a fragment segment is recommended.
200
196
The following diagram illustrates the structure of namespace extensions:
197
+
201
198
```mermaid
202
199
---
203
200
title: Namespace Extensions
@@ -256,7 +253,6 @@ base_ns -->|/| first
256
253
available in the default language (`en-US`), and (b) that this extension has
257
254
been translated into German (Germany).
258
255
259
-
260
256
!!! example "Use of fragment identifiers and language tags"
261
257
262
258
Imagine an Information Sharing and Analysis Organization (ISAO) `isao.example`
@@ -287,9 +283,9 @@ base_ns -->|/| first
287
283
288
284
### Usage Suggestions
289
285
290
-
Although we reserved the first segment of the extension for language tags,
286
+
Although we reserved the first segment of the extension for language tags,
291
287
there are scenarios where it may be appropriate to use a language tag in a later
292
-
segment of the extension.
288
+
segment of the extension.
293
289
294
290
!!! tip "Use BCP-47 Language Tags"
295
291
@@ -314,7 +310,6 @@ segment of the extension.
314
310
For example, if your organization is `example.com`, you might use an extension
315
311
like `ssvc//com.example#extension`.
316
312
317
-
318
313
## Technical requirements
319
314
320
315
The following technical requirements are enforced for SSVC namespaces,
@@ -350,17 +345,15 @@ based on the implementation in `src/ssvc/namespaces.py` and the NS_PATTERN regul
350
345
- If any extension segments are present, the following rules apply:
351
346
- The first extension segment must be a valid BCP-47 language tag or empty (i.e., `//`).
352
347
- Subsequent extension segments:
353
-
- must start with a letter (upper or lowercase)
354
-
- may contain letters, numbers, dots (`.`), hyphens (`-`), and at most one hash (`#`)
355
-
- must not contain consecutive dots or hyphens (no `..`, `--`, `.-`, `-.`, `---`, etc.)
356
-
- if a hash is present, it separates the main part from an optional fragment part
357
-
- are separated by single forward slashes (`/`)
348
+
- must start with a letter (upper or lowercase)
349
+
- may contain letters, numbers, dots (`.`), hyphens (`-`), and at most one hash (`#`)
350
+
- must not contain consecutive dots or hyphens (no `..`, `--`, `.-`, `-.`, `---`, etc.)
351
+
- if a hash is present, it separates the main part from an optional fragment part
352
+
- are separated by single forward slashes (`/`)
358
353
- Multiple extension segments are allowed
359
354
360
-
361
355
## The `ssvc.namespaces` module
362
356
363
357
The `ssvc.namespaces` module provides a way to access and use these namespaces.
0 commit comments