@twin.org/standards-dataspace-protocol 0.0.3-next.43 → 0.0.3-next.44

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.
@@ -1 +1 @@
1
- {"version":3,"file":"IDataspaceProtocolCatalog.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolCatalog.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatCatalog } from \"@twin.org/standards-w3c-dcat\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDataService } from \"./IDataspaceProtocolDataService.js\";\nimport type { IDataspaceProtocolDataset } from \"./IDataspaceProtocolDataset.js\";\nimport type { IDataspaceProtocolDistribution } from \"./IDataspaceProtocolDistribution.js\";\n\n/**\n * Catalog interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends ICatalog and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - participantId MUST be present (REQUIRED)\n *\n * **Type System Design:**\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n *\n */\nexport interface IDataspaceProtocolCatalog\n\textends Omit<\n\t\tIDcatCatalog,\n\t\t\"@type\" | \"@context\" | \"dcat:catalog\" | \"dcat:dataset\" | \"dcat:distribution\" | \"dcat:service\"\n\t> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the Catalog.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.Catalog;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Participant Id\n\t */\n\tparticipantId: string;\n\n\t/**\n\t * Other concerned catalogs\n\t */\n\tcatalog?: ObjectOrArray<Omit<IDataspaceProtocolCatalog, \"@context\">>;\n\n\t/**\n\t * Datasets registered\n\t */\n\tdataset?: ObjectOrArray<Omit<IDataspaceProtocolDataset, \"@context\">>;\n\n\t/**\n\t * Catalog's distributions\n\t */\n\tdistribution?: ObjectOrArray<Omit<IDataspaceProtocolDistribution, \"@context\">>;\n\n\t/**\n\t * Data services registered-\n\t */\n\tservice?: ObjectOrArray<Omit<IDataspaceProtocolDataService, \"@context\">>;\n}\n"]}
1
+ {"version":3,"file":"IDataspaceProtocolCatalog.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolCatalog.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatCatalog } from \"@twin.org/standards-w3c-dcat\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDataService } from \"./IDataspaceProtocolDataService.js\";\nimport type { IDataspaceProtocolDataset } from \"./IDataspaceProtocolDataset.js\";\nimport type { IDataspaceProtocolDistribution } from \"./IDataspaceProtocolDistribution.js\";\n\n/**\n * Catalog interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends ICatalog and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - participantId MUST be present (REQUIRED)\n *\n * **Type System Design:**\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n *\n */\nexport interface IDataspaceProtocolCatalog extends Omit<\n\tIDcatCatalog,\n\t\"@type\" | \"@context\" | \"dcat:catalog\" | \"dcat:dataset\" | \"dcat:distribution\" | \"dcat:service\"\n> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the Catalog.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.Catalog;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Participant Id\n\t */\n\tparticipantId: string;\n\n\t/**\n\t * Other concerned catalogs\n\t */\n\tcatalog?: ObjectOrArray<Omit<IDataspaceProtocolCatalog, \"@context\">>;\n\n\t/**\n\t * Datasets registered\n\t */\n\tdataset?: ObjectOrArray<Omit<IDataspaceProtocolDataset, \"@context\">>;\n\n\t/**\n\t * Catalog's distributions\n\t */\n\tdistribution?: ObjectOrArray<Omit<IDataspaceProtocolDistribution, \"@context\">>;\n\n\t/**\n\t * Data services registered-\n\t */\n\tservice?: ObjectOrArray<Omit<IDataspaceProtocolDataService, \"@context\">>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IDataspaceProtocolDataService.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolDataService.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatDataService } from \"@twin.org/standards-w3c-dcat\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDataset } from \"./IDataspaceProtocolDataset.js\";\n\n/**\n * Data Service interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends IDataService and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - endpointURL MUST be present (REQUIRED)\n *\n * **Type System Design:**\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n *\n */\nexport interface IDataspaceProtocolDataService\n\textends Omit<IDcatDataService, \"@type\" | \"@context\" | \"dcat:servesDataset\" | \"dcat:endpointURL\"> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the Data Service.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.DataService;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Endpoint URL\n\t */\n\tendpointURL: string;\n\n\t/**\n\t * Datasets served.\n\t */\n\tservesDataset?: ObjectOrArray<Omit<IDataspaceProtocolDataset, \"@context\">>;\n}\n"]}
1
+ {"version":3,"file":"IDataspaceProtocolDataService.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolDataService.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatDataService } from \"@twin.org/standards-w3c-dcat\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDataset } from \"./IDataspaceProtocolDataset.js\";\n\n/**\n * Data Service interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends IDataService and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - endpointURL MUST be present (REQUIRED)\n *\n * **Type System Design:**\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n *\n */\nexport interface IDataspaceProtocolDataService extends Omit<\n\tIDcatDataService,\n\t\"@type\" | \"@context\" | \"dcat:servesDataset\" | \"dcat:endpointURL\"\n> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the Data Service.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.DataService;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Endpoint URL\n\t */\n\tendpointURL: string;\n\n\t/**\n\t * Datasets served.\n\t */\n\tservesDataset?: ObjectOrArray<Omit<IDataspaceProtocolDataset, \"@context\">>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IDataspaceProtocolDataset.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolDataset.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatDataset } from \"@twin.org/standards-w3c-dcat\";\nimport type { IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDistribution } from \"./IDataspaceProtocolDistribution.js\";\n\n/**\n * Dataset interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends IDataset and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - `odrl:hasPolicy` MUST be present as an array of ODRL Offers (REQUIRED)\n * - Array MUST contain at least one IOdrlOffer\n * - Each Offer MUST have `@type`: \"Offer\"\n * - Each Offer MUST have `@id` or `uid` for identification\n * - `dcat:distribution` MUST be present (REQUIRED)\n *\n * **Type System Design:**\n * - W3C DCAT spec defines `odrl:hasPolicy` as optional singular `IOdrlPolicy`\n * - DS Protocol requires it as a REQUIRED array of `IOdrlOffer`\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n * **Future Compatibility:**\n * - Currently only one Offer per dataset is supported\n * - Array structure allows future support for multiple offers\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n * @see IOdrlOffer from @twin.org/standards-w3c-odrl\n * @see IResource.odrl:hasPolicy from @twin.org/standards-w3c-dcat\n */\nexport interface IDataspaceProtocolDataset\n\textends Omit<IDcatDataset, \"odrl:hasPolicy\" | \"dcat:distribution\" | \"@type\" | \"@context\"> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.Dataset;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Array of ODRL policies (Offers) as required by DS Protocol.\n\t *\n\t * REQUIRED per Eclipse Data Space Protocol spec.\n\t * Must contain at least one IOdrlOffer.\n\t * Currently only single offer is supported, but array structure\n\t * allows for future multi-offer support.\n\t */\n\thasPolicy: ObjectOrArray<Omit<IOdrlOffer, \"@context\">>;\n\n\t/**\n\t * Distribution of the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\tdistribution: ObjectOrArray<Omit<IDataspaceProtocolDistribution, \"@context\">>;\n}\n"]}
1
+ {"version":3,"file":"IDataspaceProtocolDataset.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolDataset.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatDataset } from \"@twin.org/standards-w3c-dcat\";\nimport type { IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDistribution } from \"./IDataspaceProtocolDistribution.js\";\n\n/**\n * Dataset interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends IDataset and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - `odrl:hasPolicy` MUST be present as an array of ODRL Offers (REQUIRED)\n * - Array MUST contain at least one IOdrlOffer\n * - Each Offer MUST have `@type`: \"Offer\"\n * - Each Offer MUST have `@id` or `uid` for identification\n * - `dcat:distribution` MUST be present (REQUIRED)\n *\n * **Type System Design:**\n * - W3C DCAT spec defines `odrl:hasPolicy` as optional singular `IOdrlPolicy`\n * - DS Protocol requires it as a REQUIRED array of `IOdrlOffer`\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n * **Future Compatibility:**\n * - Currently only one Offer per dataset is supported\n * - Array structure allows future support for multiple offers\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n * @see IOdrlOffer from @twin.org/standards-w3c-odrl\n * @see IResource.odrl:hasPolicy from @twin.org/standards-w3c-dcat\n */\nexport interface IDataspaceProtocolDataset extends Omit<\n\tIDcatDataset,\n\t\"odrl:hasPolicy\" | \"dcat:distribution\" | \"@type\" | \"@context\"\n> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.Dataset;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Array of ODRL policies (Offers) as required by DS Protocol.\n\t *\n\t * REQUIRED per Eclipse Data Space Protocol spec.\n\t * Must contain at least one IOdrlOffer.\n\t * Currently only single offer is supported, but array structure\n\t * allows for future multi-offer support.\n\t */\n\thasPolicy: ObjectOrArray<Omit<IOdrlOffer, \"@context\">>;\n\n\t/**\n\t * Distribution of the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\tdistribution: ObjectOrArray<Omit<IDataspaceProtocolDistribution, \"@context\">>;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"IDataspaceProtocolDistribution.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolDistribution.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatDistribution } from \"@twin.org/standards-w3c-dcat\";\nimport type { IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDataService } from \"./IDataspaceProtocolDataService.js\";\n\n/**\n * Distribution interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends IDistribution and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - `odrl:hasPolicy` MIGHT be present as an array of ODRL Offers (OPTIONAL)\n * - Array MUST contain at least one IOdrlOffer\n * - Each Offer MUST have `@type`: \"Offer\"\n * - `format` is REQUIRED.\n *\n * **Type System Design:**\n * - W3C DCAT spec defines `odrl:hasPolicy` as optional singular `IOdrlPolicy`\n * - DS Protocol requires it as a REQUIRED array of `IOdrlOffer`\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n * **Future Compatibility:**\n * - Currently only one Offer per dataset is supported\n * - Array structure allows future support for multiple offers\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n * @see IOdrlOffer from @twin.org/standards-w3c-odrl\n * @see IResource.odrl:hasPolicy from @twin.org/standards-w3c-dcat\n */\nexport interface IDataspaceProtocolDistribution\n\textends Omit<IDcatDistribution, \"odrl:hasPolicy\" | \"@type\" | \"@context\" | \"dcterms:format\"> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the Distribution.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.Distribution;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Array of ODRL policies (Offers) as required by DS Protocol.\n\t *\n\t * REQUIRED per Eclipse Data Space Protocol spec.\n\t * Must contain at least one IOdrlOffer.\n\t * Currently only single offer is supported, but array structure\n\t * allows for future multi-offer support.\n\t */\n\thasPolicy?: ObjectOrArray<Omit<IOdrlOffer, \"@context\">>;\n\n\t/**\n\t * Access service.\n\t * It can be a URI pointing to an access service or inline the access service itself\n\t */\n\taccessService: string | Omit<IDataspaceProtocolDataService, \"@context\">;\n\n\t/**\n\t * Distribution format.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\tformat: string;\n}\n"]}
1
+ {"version":3,"file":"IDataspaceProtocolDistribution.js","sourceRoot":"","sources":["../../../../src/models/catalog/IDataspaceProtocolDistribution.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright 2025 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { ObjectOrArray } from \"@twin.org/core\";\nimport type { IDcatDistribution } from \"@twin.org/standards-w3c-dcat\";\nimport type { IOdrlOffer } from \"@twin.org/standards-w3c-odrl\";\nimport type { DataspaceProtocolContextType } from \"../dataspaceProtocolContextType.js\";\nimport type { DataspaceProtocolCatalogTypes } from \"./dataspaceProtocolCatalogTypes.js\";\nimport type { IDataspaceProtocolDataService } from \"./IDataspaceProtocolDataService.js\";\n\n/**\n * Distribution interface compliant with Eclipse Data Space Protocol.\n *\n * This interface extends IDistribution and enforces DS Protocol-specific requirements\n * by overriding properties with more specific types and constraints.\n *\n * **Requirements per DS Protocol:**\n * - `@id` MUST be present for dataset identification (REQUIRED)\n * - `odrl:hasPolicy` MIGHT be present as an array of ODRL Offers (OPTIONAL)\n * - Array MUST contain at least one IOdrlOffer\n * - Each Offer MUST have `@type`: \"Offer\"\n * - `format` is REQUIRED.\n *\n * **Type System Design:**\n * - W3C DCAT spec defines `odrl:hasPolicy` as optional singular `IOdrlPolicy`\n * - DS Protocol requires it as a REQUIRED array of `IOdrlOffer`\n * - Interface extension allows TypeScript to override inherited property types\n * - Standards packages (@twin.org/standards-w3c-*) follow W3C specs exactly\n * - DS Protocol-specific constraints are defined here\n *\n * **Future Compatibility:**\n * - Currently only one Offer per dataset is supported\n * - Array structure allows future support for multiple offers\n *\n * @see https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/#lower-level-types\n * @see https://www.w3.org/TR/vocab-dcat-3/ - W3C DCAT v3 spec\n * @see IOdrlOffer from @twin.org/standards-w3c-odrl\n * @see IResource.odrl:hasPolicy from @twin.org/standards-w3c-dcat\n */\nexport interface IDataspaceProtocolDistribution extends Omit<\n\tIDcatDistribution,\n\t\"odrl:hasPolicy\" | \"@type\" | \"@context\" | \"dcterms:format\"\n> {\n\t/**\n\t * LD Context. Required per Eclipse Data Space Protocol.\n\t */\n\t\"@context\": DataspaceProtocolContextType;\n\n\t/**\n\t * The type identifier for the Distribution.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@type\": typeof DataspaceProtocolCatalogTypes.Distribution;\n\n\t/**\n\t * Unique identifier for the dataset.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\t\"@id\": string;\n\n\t/**\n\t * Array of ODRL policies (Offers) as required by DS Protocol.\n\t *\n\t * REQUIRED per Eclipse Data Space Protocol spec.\n\t * Must contain at least one IOdrlOffer.\n\t * Currently only single offer is supported, but array structure\n\t * allows for future multi-offer support.\n\t */\n\thasPolicy?: ObjectOrArray<Omit<IOdrlOffer, \"@context\">>;\n\n\t/**\n\t * Access service.\n\t * It can be a URI pointing to an access service or inline the access service itself\n\t */\n\taccessService: string | Omit<IDataspaceProtocolDataService, \"@context\">;\n\n\t/**\n\t * Distribution format.\n\t * REQUIRED per Eclipse Data Space Protocol.\n\t */\n\tformat: string;\n}\n"]}
package/docs/changelog.md CHANGED
@@ -1,5 +1,22 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.0.3-next.44](https://github.com/twinfoundation/standards/compare/standards-dataspace-protocol-v0.0.3-next.43...standards-dataspace-protocol-v0.0.3-next.44) (2026-03-04)
4
+
5
+
6
+ ### Miscellaneous Chores
7
+
8
+ * **standards-dataspace-protocol:** Synchronize repo versions
9
+
10
+
11
+ ### Dependencies
12
+
13
+ * The following workspace dependencies were updated
14
+ * dependencies
15
+ * @twin.org/standards-w3c-dcat bumped from 0.0.3-next.43 to 0.0.3-next.44
16
+ * @twin.org/standards-w3c-odrl bumped from 0.0.3-next.43 to 0.0.3-next.44
17
+ * devDependencies
18
+ * @twin.org/standards-ld-contexts bumped from 0.0.3-next.43 to 0.0.3-next.44
19
+
3
20
  ## [0.0.3-next.43](https://github.com/twinfoundation/standards/compare/standards-dataspace-protocol-v0.0.3-next.42...standards-dataspace-protocol-v0.0.3-next.43) (2026-02-25)
4
21
 
5
22
 
@@ -92,3 +92,483 @@ Catalog's distributions
92
92
  > `optional` **service**: `ObjectOrArray`\<`Omit`\<[`IDataspaceProtocolDataService`](IDataspaceProtocolDataService.md), `"@context"`\>\>
93
93
 
94
94
  Data services registered-
95
+
96
+ ***
97
+
98
+ ### foaf:homepage?
99
+
100
+ > `optional` **foaf:homepage**: `string`
101
+
102
+ A homepage of the catalog (a public Web document usually available in HTML).
103
+
104
+ #### See
105
+
106
+ https://www.w3.org/TR/vocab-dcat-3/#Property:catalog_homepage
107
+
108
+ #### Inherited from
109
+
110
+ `Omit.foaf:homepage`
111
+
112
+ ***
113
+
114
+ ### dcat:themeTaxonomy?
115
+
116
+ > `optional` **dcat:themeTaxonomy**: `ObjectOrArray`\<`IDcatResource`\>
117
+
118
+ A knowledge organization system (KOS) used to classify the resources in the catalog.
119
+
120
+ #### See
121
+
122
+ https://www.w3.org/TR/vocab-dcat-3/#Property:catalog_themes
123
+
124
+ #### Inherited from
125
+
126
+ `Omit.dcat:themeTaxonomy`
127
+
128
+ ***
129
+
130
+ ### dcat:resource?
131
+
132
+ > `optional` **dcat:resource**: `ObjectOrArray`\<`IDcatResource`\>
133
+
134
+ A resource that is listed in the catalog.
135
+
136
+ #### See
137
+
138
+ https://www.w3.org/TR/vocab-dcat-3/#Property:catalog_resource
139
+
140
+ #### Inherited from
141
+
142
+ `Omit.dcat:resource`
143
+
144
+ ***
145
+
146
+ ### dcat:record?
147
+
148
+ > `optional` **dcat:record**: `ObjectOrArray`\<`CatalogRecordOptionalContext`\>
149
+
150
+ A record describing the registration of a single resource in the catalog.
151
+
152
+ #### See
153
+
154
+ https://www.w3.org/TR/vocab-dcat-3/#Property:catalog_catalog_record
155
+
156
+ #### Inherited from
157
+
158
+ `Omit.dcat:record`
159
+
160
+ ***
161
+
162
+ ### dcterms:accrualPeriodicity?
163
+
164
+ > `optional` **dcterms:accrualPeriodicity**: `string`
165
+
166
+ The frequency at which the dataset is published.
167
+
168
+ #### See
169
+
170
+ https://www.w3.org/TR/vocab-dcat-3/#Property:dataset_frequency
171
+
172
+ #### Inherited from
173
+
174
+ `Omit.dcterms:accrualPeriodicity`
175
+
176
+ ***
177
+
178
+ ### dcat:inSeries?
179
+
180
+ > `optional` **dcat:inSeries**: `string`
181
+
182
+ A dataset series of which the dataset is part.
183
+
184
+ #### See
185
+
186
+ https://www.w3.org/TR/vocab-dcat-3/#Property:dataset_in_series
187
+
188
+ #### Inherited from
189
+
190
+ `Omit.dcat:inSeries`
191
+
192
+ ***
193
+
194
+ ### dcterms:spatial?
195
+
196
+ > `optional` **dcterms:spatial**: `IJsonLdNodeObject` \| `ObjectOrArray`\<`string`\>
197
+
198
+ The geographical area covered by the dataset.
199
+
200
+ #### See
201
+
202
+ https://www.w3.org/TR/vocab-dcat-3/#Property:dataset_spatial
203
+
204
+ #### Inherited from
205
+
206
+ `Omit.dcterms:spatial`
207
+
208
+ ***
209
+
210
+ ### dcat:spatialResolutionInMeters?
211
+
212
+ > `optional` **dcat:spatialResolutionInMeters**: `number`
213
+
214
+ Minimum spatial separation resolvable in a dataset, measured in meters.
215
+
216
+ #### See
217
+
218
+ https://www.w3.org/TR/vocab-dcat-3/#Property:dataset_spatial_resolution
219
+
220
+ #### Inherited from
221
+
222
+ `Omit.dcat:spatialResolutionInMeters`
223
+
224
+ ***
225
+
226
+ ### dcterms:temporal?
227
+
228
+ > `optional` **dcterms:temporal**: `IDublinCorePeriodOfTime`
229
+
230
+ The temporal period that the dataset covers.
231
+
232
+ #### See
233
+
234
+ https://www.w3.org/TR/vocab-dcat-3/#Property:dataset_temporal
235
+
236
+ #### Inherited from
237
+
238
+ `Omit.dcterms:temporal`
239
+
240
+ ***
241
+
242
+ ### dcat:temporalResolution?
243
+
244
+ > `optional` **dcat:temporalResolution**: `string`
245
+
246
+ Minimum time period resolvable in the dataset.
247
+
248
+ #### See
249
+
250
+ https://www.w3.org/TR/vocab-dcat-3/#Property:dataset_temporal_resolution
251
+
252
+ #### Inherited from
253
+
254
+ `Omit.dcat:temporalResolution`
255
+
256
+ ***
257
+
258
+ ### prov:wasGeneratedBy?
259
+
260
+ > `optional` **prov:wasGeneratedBy**: `string` \| `IJsonLdNodeObject`
261
+
262
+ An activity that generated, or provides the business context for, the creation of the dataset.
263
+
264
+ #### See
265
+
266
+ https://www.w3.org/TR/vocab-dcat-3/#Property:dataset_was_generated_by
267
+
268
+ #### Inherited from
269
+
270
+ `Omit.prov:wasGeneratedBy`
271
+
272
+ ***
273
+
274
+ ### dcterms:title?
275
+
276
+ > `optional` **dcterms:title**: `DcatLiteralType`
277
+
278
+ A name given to the resource.
279
+
280
+ #### See
281
+
282
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_title
283
+
284
+ #### Inherited from
285
+
286
+ `Omit.dcterms:title`
287
+
288
+ ***
289
+
290
+ ### dcterms:description?
291
+
292
+ > `optional` **dcterms:description**: `DcatLiteralType`
293
+
294
+ A free-text account of the resource.
295
+
296
+ #### See
297
+
298
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_description
299
+
300
+ #### Inherited from
301
+
302
+ `Omit.dcterms:description`
303
+
304
+ ***
305
+
306
+ ### dcterms:identifier?
307
+
308
+ > `optional` **dcterms:identifier**: `DcatLiteralType`
309
+
310
+ A unique identifier of the resource.
311
+
312
+ #### See
313
+
314
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_identifier
315
+
316
+ #### Inherited from
317
+
318
+ `Omit.dcterms:identifier`
319
+
320
+ ***
321
+
322
+ ### dcterms:issued?
323
+
324
+ > `optional` **dcterms:issued**: `string`
325
+
326
+ Date of formal issuance (publication) of the resource.
327
+
328
+ #### See
329
+
330
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_release_date
331
+
332
+ #### Inherited from
333
+
334
+ `Omit.dcterms:issued`
335
+
336
+ ***
337
+
338
+ ### dcterms:modified?
339
+
340
+ > `optional` **dcterms:modified**: `string`
341
+
342
+ Most recent date on which the resource was changed, updated or modified.
343
+
344
+ #### See
345
+
346
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_update_date
347
+
348
+ #### Inherited from
349
+
350
+ `Omit.dcterms:modified`
351
+
352
+ ***
353
+
354
+ ### dcterms:language?
355
+
356
+ > `optional` **dcterms:language**: `ObjectOrArray`\<`string`\>
357
+
358
+ A language of the resource.
359
+
360
+ #### See
361
+
362
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_language
363
+
364
+ #### Inherited from
365
+
366
+ `Omit.dcterms:language`
367
+
368
+ ***
369
+
370
+ ### dcterms:publisher?
371
+
372
+ > `optional` **dcterms:publisher**: `string` \| `IFoafAgentWithAliases`
373
+
374
+ An entity responsible for making the resource available.
375
+
376
+ #### See
377
+
378
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_publisher
379
+
380
+ #### Inherited from
381
+
382
+ `Omit.dcterms:publisher`
383
+
384
+ ***
385
+
386
+ ### dcterms:creator?
387
+
388
+ > `optional` **dcterms:creator**: `string` \| `IFoafAgentWithAliases`
389
+
390
+ An entity responsible for producing the resource.
391
+
392
+ #### See
393
+
394
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_creator
395
+
396
+ #### Inherited from
397
+
398
+ `Omit.dcterms:creator`
399
+
400
+ ***
401
+
402
+ ### dcterms:accessRights?
403
+
404
+ > `optional` **dcterms:accessRights**: `string` \| `IJsonLdNodeObject`
405
+
406
+ Information about who can access the resource or an indication of its security status.
407
+
408
+ #### See
409
+
410
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_access_rights
411
+
412
+ #### Inherited from
413
+
414
+ `Omit.dcterms:accessRights`
415
+
416
+ ***
417
+
418
+ ### dcterms:license?
419
+
420
+ > `optional` **dcterms:license**: `string` \| `IJsonLdNodeObject`
421
+
422
+ A legal document under which the resource is made available.
423
+
424
+ #### See
425
+
426
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_license
427
+
428
+ #### Inherited from
429
+
430
+ `Omit.dcterms:license`
431
+
432
+ ***
433
+
434
+ ### dcterms:rights?
435
+
436
+ > `optional` **dcterms:rights**: `string` \| `IJsonLdNodeObject`
437
+
438
+ Information about rights held in and over the resource.
439
+
440
+ #### See
441
+
442
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_rights
443
+
444
+ #### Inherited from
445
+
446
+ `Omit.dcterms:rights`
447
+
448
+ ***
449
+
450
+ ### dcterms:conformsTo?
451
+
452
+ > `optional` **dcterms:conformsTo**: `ObjectOrArray`\<`string`\>
453
+
454
+ An established standard to which the resource conforms.
455
+
456
+ #### See
457
+
458
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_conforms_to
459
+
460
+ #### Inherited from
461
+
462
+ `Omit.dcterms:conformsTo`
463
+
464
+ ***
465
+
466
+ ### dcterms:type?
467
+
468
+ > `optional` **dcterms:type**: `string`
469
+
470
+ The nature or genre of the resource.
471
+
472
+ #### See
473
+
474
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_type
475
+
476
+ #### Inherited from
477
+
478
+ `Omit.dcterms:type`
479
+
480
+ ***
481
+
482
+ ### dcat:contactPoint?
483
+
484
+ > `optional` **dcat:contactPoint**: `string` \| `IJsonLdNodeObject`
485
+
486
+ Relevant contact information for the catalogued resource.
487
+
488
+ #### See
489
+
490
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_contact_point
491
+
492
+ #### Inherited from
493
+
494
+ `Omit.dcat:contactPoint`
495
+
496
+ ***
497
+
498
+ ### dcat:keyword?
499
+
500
+ > `optional` **dcat:keyword**: `DcatLiteralType`
501
+
502
+ A keyword or tag describing the resource.
503
+
504
+ #### See
505
+
506
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_keyword
507
+
508
+ #### Inherited from
509
+
510
+ `Omit.dcat:keyword`
511
+
512
+ ***
513
+
514
+ ### dcat:theme?
515
+
516
+ > `optional` **dcat:theme**: `ObjectOrArray`\<`string`\>
517
+
518
+ A main category of the resource. A resource can have multiple themes.
519
+
520
+ #### See
521
+
522
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_theme
523
+
524
+ #### Inherited from
525
+
526
+ `Omit.dcat:theme`
527
+
528
+ ***
529
+
530
+ ### dcat:landingPage?
531
+
532
+ > `optional` **dcat:landingPage**: `ObjectOrArray`\<`string`\>
533
+
534
+ A Web page that can be navigated to gain access to the resource.
535
+
536
+ #### See
537
+
538
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_landing_page
539
+
540
+ #### Inherited from
541
+
542
+ `Omit.dcat:landingPage`
543
+
544
+ ***
545
+
546
+ ### dcat:qualifiedRelation?
547
+
548
+ > `optional` **dcat:qualifiedRelation**: `string` \| `IDcatRelationship`
549
+
550
+ Link to a description of a relationship with another resource.
551
+
552
+ #### See
553
+
554
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_qualified_relation
555
+
556
+ #### Inherited from
557
+
558
+ `Omit.dcat:qualifiedRelation`
559
+
560
+ ***
561
+
562
+ ### odrl:hasPolicy?
563
+
564
+ > `optional` **odrl:hasPolicy**: `IOdrlPolicy`
565
+
566
+ An ODRL conformant policy expressing the rights associated with the resource.
567
+
568
+ #### See
569
+
570
+ https://www.w3.org/TR/vocab-dcat-3/#Property:resource_has_policy
571
+
572
+ #### Inherited from
573
+
574
+ `Omit.odrl:hasPolicy`