@open-resource-discovery/specification 1.12.1 → 1.12.3-rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,21 +1,10 @@
1
1
  import { JSONSchema7 } from "json-schema";
2
- export * from "./types/v1/Document";
3
- export { ORDConfiguration, ORDV1Support, ORDV1DocumentDescription } from "./types/v1/Configuration";
2
+ export * from "./generated/spec/v1/types";
4
3
  /**
5
4
  * The JSON Schema (draft-07) describing the ORD Document interface
6
5
  */
7
6
  export declare const ordDocumentSchema: JSONSchema7;
8
- /**
9
- * The JSON Schema (draft-07) describing the ORD Document interface
10
- * with additional annotations (x-* attributes) like x-recommended
11
- */
12
- export declare const ordDocumentSchemaWithAnnotations: JSONSchema7;
13
7
  /**
14
8
  * The JSON Schema (draft-07) describing the ORD Configuration interface
15
9
  */
16
10
  export declare const ordConfigurationSchema: JSONSchema7;
17
- /**
18
- * The JSON Schema (draft-07) describing the ORD Configuration interface
19
- * with additional annotations (x-* attributes) like x-recommended
20
- */
21
- export declare const ordConfigurationSchemaWithAnnotations: JSONSchema7;
package/dist/index.js CHANGED
@@ -36,24 +36,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
36
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.ordConfigurationSchemaWithAnnotations = exports.ordConfigurationSchema = exports.ordDocumentSchemaWithAnnotations = exports.ordDocumentSchema = void 0;
39
+ exports.ordConfigurationSchema = exports.ordDocumentSchema = void 0;
40
40
  const fs = __importStar(require("fs"));
41
- __exportStar(require("./types/v1/Document"), exports);
41
+ __exportStar(require("./generated/spec/v1/types"), exports);
42
42
  /**
43
43
  * The JSON Schema (draft-07) describing the ORD Document interface
44
44
  */
45
- exports.ordDocumentSchema = JSON.parse(fs.readFileSync(`${__dirname}/../static/spec-v1/interfaces/Document.schema.json`).toString());
46
- /**
47
- * The JSON Schema (draft-07) describing the ORD Document interface
48
- * with additional annotations (x-* attributes) like x-recommended
49
- */
50
- exports.ordDocumentSchemaWithAnnotations = JSON.parse(fs.readFileSync(`${__dirname}/../static/spec-v1/interfaces/Document.annotated.schema.json`).toString());
51
- /**
52
- * The JSON Schema (draft-07) describing the ORD Configuration interface
53
- */
54
- exports.ordConfigurationSchema = JSON.parse(fs.readFileSync(`${__dirname}/../static/spec-v1/interfaces/Configuration.schema.json`).toString());
45
+ exports.ordDocumentSchema = JSON.parse(fs.readFileSync(`${__dirname}/../static/spec-v1/interfaces/document.schema.json`).toString());
55
46
  /**
56
47
  * The JSON Schema (draft-07) describing the ORD Configuration interface
57
- * with additional annotations (x-* attributes) like x-recommended
58
48
  */
59
- exports.ordConfigurationSchemaWithAnnotations = JSON.parse(fs.readFileSync(`${__dirname}/../static/spec-v1/interfaces/Configuration.annotated.schema.json`).toString());
49
+ exports.ordConfigurationSchema = JSON.parse(fs.readFileSync(`${__dirname}/../static/spec-v1/interfaces/configuration.schema.json`).toString());
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "http://json.schemastore.org/package",
3
3
  "name": "@open-resource-discovery/specification",
4
- "version": "1.12.1",
4
+ "version": "1.12.3-rc1",
5
5
  "description": "Open Resource Discovery (ORD) Specification",
6
6
  "author": "SAP SE",
7
7
  "license": "Apache-2.0",
@@ -1,12 +1,47 @@
1
1
  {
2
+ "description": "The ORD configuration response will indicate that ORD is available for the given host and how to proceed with the discovery.\n\nMost notably, the ORD configuration will tell an ORD consumer which ORD documents are available and where/how they can be accessed.\n\nThe configuration endpoint is a [Well-Known URI](https://tools.ietf.org/html/rfc8615#section-3) discovery mechanism.\n\nThis JSON Schema describes the [ORD configuration interface](https://open-resource-discovery.github.io/specification/spec-v1/interfaces/configuration) of the [ORD specification](https://open-resource-discovery.github.io/specification/).",
2
3
  "$schema": "http://json-schema.org/draft-07/schema#",
3
4
  "$id": "https://open-resource-discovery.github.io/specification/spec-v1/interfaces/Configuration.schema.json#",
4
- "title": "ORD Configuration",
5
- "description": "The ORD configuration response will indicate that ORD is available for the given host and how to proceed with the discovery.\n\nMost notably, the ORD configuration will tell an ORD consumer which ORD documents are available and where/how they can be accessed.\n\nThe configuration endpoint is a [Well-Known URI](https://tools.ietf.org/html/rfc8615#section-3) discovery mechanism.",
5
+ "title": "Ord Configuration",
6
+ "type": "object",
7
+ "properties": {
8
+ "$schema": {
9
+ "type": "string",
10
+ "format": "uri-reference",
11
+ "description": "Optional URL to the ORD Configuration schema (defined as JSON Schema).\nIf given, this enables code intelligence and validation in supported editors (like VSCode) and tools.",
12
+ "anyOf": [
13
+ {
14
+ "type": "string",
15
+ "format": "uri-reference"
16
+ },
17
+ {
18
+ "const": "https://open-resource-discovery.github.io/specification/spec-v1/interfaces/Configuration.schema.json#"
19
+ }
20
+ ]
21
+ },
22
+ "baseUrl": {
23
+ "type": "string",
24
+ "format": "uri",
25
+ "description": "Optional [base URL](../index.md#def-base-url) that can be used to resolve the relative URLs to the ORD Documents.\n\nThe `baseUrl` MUST not contain a leading slash.\n\nIf you do not provide this property, the base URL is assumed to be the URL of the config endpoint without `/.well-known/open-resource-discovery` suffix.\nThis implies that either a `baseUrl` or only absolute URLs MUST be provided when no standardized well-known URI is used.\nIf both a `baseUrl` and a well-known URI is provided, the explicit `baseUrl` takes precedence.",
26
+ "pattern": "^http[s]?:\\/\\/[^:\\/\\s]+\\.[^:\\/\\s\\.]+(:\\d+)?(\\/[a-zA-Z0-9-\\._~]+)*$",
27
+ "examples": [
28
+ "https://example-sap-system.com",
29
+ "https://sub.foo.bar.com",
30
+ "https://sub.foo.bar.com/api/v1"
31
+ ]
32
+ },
33
+ "openResourceDiscoveryV1": {
34
+ "$ref": "#/definitions/OpenResourceDiscoveryV1"
35
+ }
36
+ },
37
+ "additionalProperties": false,
38
+ "required": [
39
+ "openResourceDiscoveryV1"
40
+ ],
6
41
  "definitions": {
7
42
  "OpenResourceDiscoveryV1": {
8
43
  "type": "object",
9
- "title": "ORD V1 Support",
44
+ "title": "Ord V1 Support",
10
45
  "description": "The existence of this version indicates that Open Resource Discovery is supported in Version 1.x",
11
46
  "properties": {
12
47
  "documents": {
@@ -24,7 +59,7 @@
24
59
  },
25
60
  "V1DocumentDescription": {
26
61
  "type": "object",
27
- "title": "ORD V1 Document Description",
62
+ "title": "Ord V1 Document Description",
28
63
  "description": "Describes an [ORD Document](../index.md#ord-document) that is available for pull transport consumption.",
29
64
  "properties": {
30
65
  "url": {
@@ -39,6 +74,8 @@
39
74
  },
40
75
  "perspective": {
41
76
  "type": "string",
77
+ "x-introduced-in-version": "1.12.0",
78
+ "x-feature-status": "beta",
42
79
  "description": "With ORD it's possible to describe a system from a static or a dynamic [perspective](../index.md#perspectives) (for more details, follow the link).\n\nIt is strongly RECOMMENDED to mark all static ORD documents with perspective `system-version`.\n\nIt is RECOMMENDED to describe dynamic metadata in both static system-version perspective and additionally describe the system-instance perspective where it diverges from the static metadata.\n\nIf not provided, this defaults to `system-instance`, which is the most precise description but also the most costly to replicate.\n\nPlease read the [article on perspectives](../concepts/perspectives) for more explanations.",
43
80
  "oneOf": [
44
81
  {
@@ -84,7 +121,7 @@
84
121
  },
85
122
  "V1Capabilities": {
86
123
  "type": "object",
87
- "title": "ORD V1 Capabilities",
124
+ "title": "Ord V1 Capabilities",
88
125
  "description": "List of capabilities that are supported by the ORD provider.",
89
126
  "properties": {
90
127
  "selector": {
@@ -96,7 +133,7 @@
96
133
  },
97
134
  "AccessStrategy": {
98
135
  "type": "object",
99
- "title": "Access Strategy",
136
+ "title": "Ord V1 Document Access Strategy",
100
137
  "description": "Defines the [access strategy](../../spec-extensions/access-strategies/) for accessing the ORD documents from the ORD provider.",
101
138
  "properties": {
102
139
  "type": {
@@ -114,7 +151,8 @@
114
151
  },
115
152
  {
116
153
  "const": "basic-auth",
117
- "description": "The resource definitions are protected via generic basic auth.\nPlease find a more detailed documentation [here](../../spec-extensions/access-strategies/basic-auth)."
154
+ "description": "The resource definitions are protected via generic basic auth.\nPlease find a more detailed documentation [here](../../spec-extensions/access-strategies/basic-auth).",
155
+ "x-introduced-in-version": "1.12.1"
118
156
  },
119
157
  {
120
158
  "const": "sap:oauth-client-credentials:v1",
@@ -170,40 +208,5 @@
170
208
  }
171
209
  ]
172
210
  }
173
- },
174
- "type": "object",
175
- "properties": {
176
- "$schema": {
177
- "type": "string",
178
- "format": "uri-reference",
179
- "description": "Optional URL to the ORD Configuration schema (defined as JSON Schema).\nIf given, this enables code intelligence and validation in supported editors (like VSCode) and tools.",
180
- "anyOf": [
181
- {
182
- "type": "string",
183
- "format": "uri-reference"
184
- },
185
- {
186
- "const": "https://open-resource-discovery.github.io/specification/spec-v1/interfaces/Configuration.schema.json#"
187
- }
188
- ]
189
- },
190
- "baseUrl": {
191
- "type": "string",
192
- "format": "uri",
193
- "description": "Optional [base URL](../index.md#def-base-url) that can be used to resolve the relative URLs to the ORD Documents.\n\nThe `baseUrl` MUST not contain a leading slash.\n\nIf you do not provide this property, the base URL is assumed to be the URL of the config endpoint without `/.well-known/open-resource-discovery` suffix.\nThis implies that either a `baseUrl` or only absolute URLs MUST be provided when no standardized well-known URI is used.\nIf both a `baseUrl` and a well-known URI is provided, the explicit `baseUrl` takes precedence.",
194
- "pattern": "^http[s]?:\\/\\/[^:\\/\\s]+\\.[^:\\/\\s\\.]+(:\\d+)?(\\/[a-zA-Z0-9-\\._~]+)*$",
195
- "examples": [
196
- "https://example-sap-system.com",
197
- "https://sub.foo.bar.com",
198
- "https://sub.foo.bar.com/api/v1"
199
- ]
200
- },
201
- "openResourceDiscoveryV1": {
202
- "$ref": "#/definitions/OpenResourceDiscoveryV1"
203
- }
204
- },
205
- "additionalProperties": false,
206
- "required": [
207
- "openResourceDiscoveryV1"
208
- ]
211
+ }
209
212
  }