Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Chinese translation for models - Part IV #951

Open
wants to merge 4 commits into
base: support/3.0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions model/Extension/Classes/CdxPropertiesExtension.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,15 @@ This is intended to be compatible with the CycloneDX property `properties`.
- cdxProperty
- type: CdxPropertyEntry
- minCount: 1

## Summary @zh-Hans

一种扩展类型,由名值对的列表组成。

## Description @zh-Hans

此扩展采用名值方法,提供了更结构化的扩展。

与键值存储不同,`CdxPropertiesExtension`中的属性支持重名,每个属性可以具有不同的值。

目的是与CycloneDX属性`properties`兼容。
12 changes: 12 additions & 0 deletions model/Extension/Classes/CdxPropertyEntry.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,15 @@ This class can be used to implement CycloneDX compatible properties.
- cdxPropValue
- type: xsd:string
- maxCount: 1

## Summary @zh-Hans

一个属性名称及其关联的值。

## Description @zh-Hans

每个`CdxPropertyEntry`都包含一个名值对,将名称映射到其关联的值。

与键值存储不同,`CdxPropertiesExtension`中的属性支持重名,每个属性可以具有不同的值。

此类可用于实现与CycloneDX兼容的属性。
23 changes: 23 additions & 0 deletions model/Extension/Classes/Extension.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,26 @@ This approach serves multiple purposes:

- name: Extension
- Instantiability: Abstract

## Summary @zh-Hans

`Element`某个方面的特征描述,以广义的方式与`Element`关联。

## Description @zh-Hans

`Extension`是对某个`Element`某个方面的特征描述,以广义的方式与该`Element`关联。

`Extension`并不是通过特定目的的对象属性与某个特定`Element`关联,而是通过一个共同的广义对象属性与它所描述的`Element`关联。

此方法有多种用途:

1. 支持基于配置文件的`Element`扩展特征描述。允许在任何SPDX配置文件和命名空间内指定和表达`Element`特征描述扩展,无需对其他配置文件或命名空间进行更改,也无需对远程类进行本地子类化(在某些情况下可能会阻碍生态系统的互操作性)。

2. 通过采用具有特定上下文的`Element`特征细节的个人或社区,支持SPDX的扩展。这使得这些个人或社区能够利用SPDX的表达能力,同时表达更专业的`Element`特征化细节,这些细节不适合在SPDX中进行标准化。

3. 支持结构化捕捉现实应用中SPDX未覆盖的表达方案。允许采用的个人或社区表达他们所需的`Element`特征化细节,这些细节目前在SPDX中尚未定义,但应该被定义。实现一个实用的流水线,能够:

- 识别SPDX中需要填补的缺口,
- 提供以某种方式表达这些缺口的方案,使采用者能够在不与当前SPDX冲突的情况下使用扩展方案,
- 在SPDX内容交换生态系统中清晰识别,
- 为缺口方案提供一个清晰、结构化的定义,可提交作为对SPDX标准的修订。
8 changes: 8 additions & 0 deletions model/Extension/Extension.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,11 @@ base for all defined extension subclasses.

- id: https://spdx.org/rdf/3.0.1/terms/Extension
- name: Extension

## Summary @zh-Hans

与SPDX扩展有关的内容。

## Description @zh-Hans

`Extension`命名空间定义了抽象扩展类,作为所有定义的扩展子类的基础。
10 changes: 10 additions & 0 deletions model/Extension/Properties/cdxPropName.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,13 @@ names, each potentially having different values.
- name: cdxPropName
- Nature: DataProperty
- Range: xsd:string

## Summary @zh-Hans

`CdxPropertyEntry`名值对中使用的名称。

## Description @zh-Hans

`cdxPropName`用于`CdxPropertyEntry`名值对。

与键值存储不同,`CdxPropertiesExtension`中的属性支持重名,每个属性可以具有不同的值。
10 changes: 10 additions & 0 deletions model/Extension/Properties/cdxPropValue.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,13 @@ names, each potentially having different values.
- name: cdxPropValue
- Nature: DataProperty
- Range: xsd:string

## Summary @zh-Hans

`CdxPropertyEntry`名值对中使用的值。

## Description @zh-Hans

`cdxPropValue`用于`CdxPropertyEntry`名值对。

与键值存储不同,`CdxPropertiesExtension`中的属性支持重名,每个属性可以具有不同的值。
12 changes: 12 additions & 0 deletions model/Extension/Properties/cdxProperty.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,3 +20,15 @@ names, each potentially having different values.
- name: cdxProperty
- Nature: ObjectProperty
- Range: CdxPropertyEntry

## Summary @zh-Hans

提供属性名称与值的映射。

## Description @zh-Hans

此字段提供名称与值的映射。

目的是与CycloneDX属性`properties`兼容。

与键值存储不同,`CdxPropertiesExtension`中的属性支持重名,每个属性可以具有不同的值。
72 changes: 71 additions & 1 deletion model/Licensing/Licensing.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ can be made from a missing hasConcludedLicense relationship.
- id: https://spdx.org/rdf/3.0.1/terms/Licensing
- name: Licensing

## Profile conformance
## Profile conformance

For an element collection to be conformant with this profile,
the following has to hold:
Expand All @@ -121,3 +121,73 @@ the following has to hold:
`/Core/Relationship` of type `hasConcludedLicense` having that element as
its `from` property and a `/SimpleLicensing/AnyLicenseInfo` as its `to`
property.

## Summary @zh-Hans

许可配置文件定义了一组许可信息的最低要求,以促进遵从典型许可证用例。

## Description @zh-Hans

许可配置文件仅包含一个附加要求,即任何软件工件必须具有类型为`hasConcludedLicense`的`Relationship`。

类和属性的限制在 `SimpleLicensingProfile`(与[许可表达字符串](../../annexes/spdx-license-expressions.md)相关的类和属性)和`ExpandedLicensingProfile`(用于许可表达式的完全解析语法树的类和属性)中定义。

与许可相关的关系类型有两种 -`hasDeclaredLicense`and`hasConcludedLicense`。

如果软件工件的`hasConcludedLicense`与其`hasDeclaredLicense`不同,则**应当**在`hasConcludedLicense`关系的`comment`字段中提供书面解释。

**可以**在关系的`comment`字段中提供与`NoAssertionLicense`的关系的书面解释。

*hasDeclaredLicense*

`hasDeclaredLicense`识别了在软件工件中实际找到的许可信息,例如通过自动化工具检测到的许可信息。

此字段不打算捕获外部来源(例如软件包的官方网站)的许可信息。这类信息可以根据需要包含在`hasConcludedLicense`字段中。

`hasDeclaredLicense`在实际应用中可能会因不同类型的软件工件而有所不同。例如:

- 对于软件包
- 包括在软件包本身中找到的软件包的所有许可信息(例如,LICENSE文件,README文件,软件包中的元数据等)
- 不包括不在软件包本身中的任何许可信息(例如,项目网站或第三方代码仓库或网站的许可信息)

- 对于文件
- 包括在文件本身中找到的许可信息(例如,许可标题或声明,指示许可的注释,SPDX-License-Identifier表达式)
- 不包括在不同文件中找到的许可信息(例如,代码仓库顶层目录中的LICENSE文件)

- 对于代码片段
- 包括在代码片段本身中找到的许可信息(例如,许可声明,注释,SPDX-License-Identifier表达式)
- 不包括在文件的其他地方或不同文件中找到的许可信息(例如,对于不在代码片段内的内容,在文件顶部的注释;在代码仓库顶层目录中的LICENSE文件)

对于`NoAssertionLicense`的`hasDeclaredLicense`关系表明相应的软件包、文件或代码片段不包含任何许可信息。

对于`NoAssertionLicense`的`hasDeclaredLicense`关系表明以下之一适用:

- SPDX数据创建者已尝试但无法得出合理的客观结论;
- SPDX数据创建者没有尝试确定该字段;或者
- SPDX数据创建者故意未提供任何信息(不应因此推断出任何意义)。

如果不存在`hasDeclaredLicense`关系,则无法对是否存在`hasDeclaredLicense`做出任何假设。

请注意,缺少`hasDeclaredLicense`与缺少对`NoAssertionLicense`关系不同,因为后者是“已知的未知”,而缺少`hasDeclaredLicense`关系则无法做出任何假设。

*hasConcludedLicense*

`hasConcludedLicense`是SPDX数据创建者根据分析软件工件中的许可信息和其他信息得出的合理客观结论,确定的软件工件所适用的许可证。

对于`NoneLicense`的`hasConcludedLicense`关系表明SPDX数据创建者已查找但未找到此软件工件的任何许可信息。

对于`NoneLicense`的`hasConcludedLicense`关系表明以下之一适用:

- SPDX数据创建者已尝试但无法得出合理的客观结论;
- SPDX数据创建者没有尝试确定此字段;或者
- SPDX数据创建者故意未提供任何信息(不应因此推断出任何意义)。

如果不存在`hasConcludedLicense`,则无法对是否存在`hasConcludedLicense`做出任何假设。

请注意,缺少`hasConcludedLicense`与缺少对`NoAssertionLicense`的关系不同,因为后者是“已知的未知”,而缺少`hasConcludedLicense`关系则无法做出任何假设。

## Profile conformance @zh-Hans

要使元素集符合此配置文件,必须满足以下条件:

1.对于每个`/Software/SoftwareArtifact`,**必须**存在一个类型为`hasConcludedLicense`的`/Core/Relationship`,其`from`属性为该元素,`to`属性为`/SimpleLicensing/AnyLicenseInfo`。
45 changes: 45 additions & 0 deletions model/Lite/Lite.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,48 @@ For a `/Software/Sbom` to be conformant with this profile, the following has to
Finally, for a `/Core/Agent` to be conformant with this profile, the following has to hold:

1. The minCount for `name` is 1

## Summary @zh-Hans

SPDX Lite(SPDX 轻量版)配置文件从某些行业用例的角度定义了 SPDX 数据的简要视图。

## Description @zh-Hans

SPDX `Lite` 配置文件包括强制性和建议性信息。

SPDX `Lite` 中的强制性信息是基础性的,但有助于遵守许可证。
通过阅读 SPDX `Lite` 文件,可以轻松理解许可证信息。

SPDX `Lite` 力求在全量 SPDX 数据模型和某些行业的实际工作流程之间寻求一种平衡。

SPDX `Lite` 文档可以在软件供应链中与其他 SPDX 文档并行使用。

## Profile conformance @zh-Hans

除了以下强制性信息外,请参考相应的附录,了解符合 Lite 配置文件的文档应包含的元素。

一个 `/Software/Package` 类要符合此配置文件,必须满足以下条件:

1. `copyrightText` 的 `minCount` 为 1。
2. `packageVersion` 的 `minCount` 为 1。
3. `suppliedBy` 的 `minCount` 为 1。
4. 必须至少存在一个 `downloadLocation` 或 `packageUrl`。

此外:

1. 对于每个 `/Software/Package`,必须存在一个 `/Core/Relationship`,其类型为 `hasConcludedLicense`,该元素作为其 `from` 属性,`/SimpleLicensing/AnyLicenseInfo` 作为其 `to` 属性。
2. 对于每个 `/Software/Package`,必须存在一个 `/Core/Relationship`,其类型为 `hasDeclaredLicense`,该元素作为其 `from` 属性, `/SimpleLicensing/AnyLicenseInfo` 作为其 `to` 属性。

一个 `/Core/SpdxDocument` 类要符合这个配置文件,必须满足以下条件:

1. `element` 的 `minCount` 为 1。
2. `rootElement` 的 `minCount` 为 1。

一个 `/Software/Sbom` 类要符合这个配置文件,必须满足以下条件:

1. `element` 的 `minCount` 为 1。
2. `rootElement` 的 `minCount` 为 1。

最后,一个 `/Core/Agent` 类要符合这个配置文件,必须满足以下条件:

1. `name` 的 `minCount` 为 1。
56 changes: 56 additions & 0 deletions model/Security/Classes/CvssV2VulnAssessmentRelationship.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,59 @@ It is intended to communicate the results of using a CVSS calculator.
- type: xsd:string
- minCount: 1
- maxCount: 1

## Summary @zh-Hans

提供漏洞的CVSS v2.0评估。

## Description @zh-Hans

`CvssV2VulnAssessmentRelationship`关系描述根据[CVSS v2.0完整指南](https://www.first.org/cvss/v2/guide)定义的漏洞评分和向量。

其目的是传达CVSS计算器的结果。

*约束条件*

- 关系类型必须设置为`hasAssessmentFor`。

*示例*

```json
{
"type": "CvssV2VulnAssessmentRelationship",
"spdxId": "urn:spdx.dev:cvssv2-cve-2020-28498",
"relationshipType": "hasAssessmentFor",
"security_score": "4.3",
"security_vectorString": "(AV:N/AC:M/Au:N/C:P/I:N/A:N)",
"from": "urn:spdx.dev:vuln-cve-2020-28498",
"to": ["urn:product-acme-application-1.3"],
"security_assessedElement": "urn:npm-elliptic-6.5.2",
"externalRef": [
{
"type": "ExternalRef",
"externalRefType": "securityAdvisory",
"locator": "https://nvd.nist.gov/vuln/detail/CVE-2020-28498"
},
{
"type": "ExternalRef",
"externalRefType": "securityAdvisory",
"locator": "https://snyk.io/vuln/SNYK-JS-ELLIPTIC-1064899"
},
{
"type": "ExternalRef",
"externalRefType": "securityFix",
"locator": "https://github.com/indutny/elliptic/commit/441b742"
}
],
"suppliedBy": ["urn:spdx.dev:agent-my-security-vendor"],
"publishedTime": "2023-05-06T10:06:13Z"
},
{
"type": "Relationship",
"spdxId": "urn:spdx.dev:vulnAgentRel-1",
"relationshipType": "publishedBy",
"from": "urn:spdx.dev:cvssv2-cve-2020-28498",
"to": ["urn:spdx.dev:agent-snyk"],
"startTime": "2021-03-08T16:06:50Z"
}
```
57 changes: 57 additions & 0 deletions model/Security/Classes/CvssV3VulnAssessmentRelationship.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,3 +83,60 @@ It is intended to communicate the results of using a CVSS calculator.
- type: xsd:string
- minCount: 1
- maxCount: 1

## Summary @zh-Hans

提供漏洞的CVSS v3.0评估。

## Description @zh-Hans

`CvssV3VulnAssessmentRelationship`关系描述根据[CVSS v3.0 规范文档](https://www.first.org/cvss/v3.0/specification-document)或[CVSS v3.1 规范文档](https://www.first.org/cvss/v3.1/specification-document)定义的漏洞评分、严重性和向量。

其目的是传达CVSS计算器的结果。

*约束条件*

- 关系类型必须设置为`hasAssessmentFor`。

*示例*

```json
{
"type": "CvssV3VulnAssessmentRelationship",
"spdxId": "urn:spdx.dev:cvssv3-cve-2020-28498",
"relationshipType": "hasAssessmentFor",
"security_score": "6.8",
"security_severity": "medium",
"security_vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N",
"from": "urn:spdx.dev:vuln-cve-2020-28498",
"to": ["urn:product-acme-application-1.3"],
"security_assessedElement": "urn:npm-elliptic-6.5.2",
"externalRef": [
{
"type": "ExternalRef",
"externalRefType": "securityAdvisory",
"locator": "https://nvd.nist.gov/vuln/detail/CVE-2020-28498"
},
{
"type": "ExternalRef",
"externalRefType": "securityAdvisory",
"locator": "https://snyk.io/vuln/SNYK-JS-ELLIPTIC-1064899"
},
{
"type": "ExternalRef",
"externalRefType": "securityFix",
"locator": "https://github.com/indutny/elliptic/commit/441b742"
}
],
"suppliedBy": ["urn:spdx.dev:agent-my-security-vendor"],
"publishedTime": "2023-05-06T10:06:13Z"
},
{
"type": "Relationship",
"spdxId": "urn:spdx.dev:vulnAgentRel-1",
"relationshipType": "publishedBy",
"from": "urn:spdx.dev:cvssv3-cve-2020-28498",
"to": ["urn:spdx.dev:agent-snyk"],
"startTime": "2021-03-08T16:06:50Z"
}
```
Loading
Loading