httk.serve.dsp.config

Validated configuration and durable publication records for DSP serving.

Attributes

DSP_CONTEXT

Protected official DSP JSON-LD context required by the 2025-1 schemas.

DSP_VERSION

Implemented Data Space Protocol version.

HTTP_ENDPOINT_TYPE

Official DSP endpoint type used by HTTPS-pull data addresses.

DSP_2025_1_SPECIFICATION

DCAT_AP_3_0_1_PROFILE

DSP_MINIMAL_PROFILE

DCAT_AP_MINIMAL_PROFILE

DCAT_AP_MINIMAL_CONTENT_NEGOTIATION

EU_FILE_TYPE_CSV

EU_FILE_TYPE_JSON

IANA_MEDIA_TYPE_CSV

IANA_MEDIA_TYPE_JSON

SPDX_SHA256

Classes

DspDatasetPublication

Attach the one DSP-specific offer identifier to a neutral dataset.

DspPublicationRecord

Store exactly one dataset publication or catalogue service envelope.

DspPublicationEntry

Non-OPTIMADE logical family for durable DSP publication records.

DspProviderConfig

Configure global DSP minimal service and catalogue metadata.

Module Contents

httk.serve.dsp.config.DSP_CONTEXT = 'https://w3id.org/dspace/2025/1/context.jsonld'[source]

Protected official DSP JSON-LD context required by the 2025-1 schemas.

httk.serve.dsp.config.DSP_VERSION = '2025-1'[source]

Implemented Data Space Protocol version.

httk.serve.dsp.config.HTTP_ENDPOINT_TYPE = 'https://w3id.org/idsa/v4.1/HTTP'[source]

Official DSP endpoint type used by HTTPS-pull data addresses.

httk.serve.dsp.config.DSP_2025_1_SPECIFICATION = 'https://eclipse-dataspace-protocol-base.github.io/DataspaceProtocol/2025-1-err1/'[source]
httk.serve.dsp.config.DCAT_AP_3_0_1_PROFILE = 'https://semiceu.github.io/DCAT-AP/releases/3.0.1/'[source]
httk.serve.dsp.config.DSP_MINIMAL_PROFILE = 'https://schemas.httk.org/profiles/dsp/2025-1/minimal'[source]
httk.serve.dsp.config.DCAT_AP_MINIMAL_PROFILE = 'https://schemas.httk.org/profiles/dcat-ap/3.0.1/minimal'[source]
httk.serve.dsp.config.DCAT_AP_MINIMAL_CONTENT_NEGOTIATION = 'https://schemas.httk.org/profiles/dsp/2025-1/minimal#dcat-ap-content-negotiation'[source]
httk.serve.dsp.config.EU_FILE_TYPE_CSV = 'http://publications.europa.eu/resource/authority/file-type/CSV'[source]
httk.serve.dsp.config.EU_FILE_TYPE_JSON = 'http://publications.europa.eu/resource/authority/file-type/JSON'[source]
httk.serve.dsp.config.IANA_MEDIA_TYPE_CSV = 'https://www.iana.org/assignments/media-types/text/csv'[source]
httk.serve.dsp.config.IANA_MEDIA_TYPE_JSON = 'https://www.iana.org/assignments/media-types/application/json'[source]
httk.serve.dsp.config.SPDX_SHA256 = 'https://spdx.org/rdf/terms#checksumAlgorithm_sha256'[source]
class httk.serve.dsp.config.DspDatasetPublication(dataset, offer_id=None)[source]

Attach the one DSP-specific offer identifier to a neutral dataset.

The dataset owns its distribution metadata. The minimal DSP profile accepts exactly one downloadable distribution and infers its CSV or JSON format/media-type IRIs only when either is absent. Other representations must provide both IRIs in the neutral distribution. No file is opened, measured, or hashed by this envelope.

dataset: httk.core.DatasetRecord[source]
offer_id: str | None = None[source]
property distribution: httk.core.DatasetDistribution[source]

Return the sole neutral distribution accepted by this profile.

property distribution_id: str[source]

Return the declared distribution IRI or the profile default.

property file_format: str[source]

Return the explicit or CSV/JSON-inferred EU file-type IRI.

property media_type: str[source]

Return the explicit or CSV/JSON-inferred IANA media-type IRI.

property access_url: str[source]

Return the sole distribution’s validated HTTPS access URL.

property byte_size: int | None[source]

Return publisher-supplied size metadata from the distribution.

property sha256: str | None[source]

Return publisher-supplied checksum metadata from the distribution.

classmethod create(obj)[source]
class httk.serve.dsp.config.DspPublicationRecord(dataset=None, service=None)[source]

Store exactly one dataset publication or catalogue service envelope.

dataset: DspDatasetPublication | None = None[source]
service: httk.core.ServiceRecord | None = None[source]
classmethod create(obj)[source]
class httk.serve.dsp.config.DspPublicationEntry[source]

Non-OPTIMADE logical family for durable DSP publication records.

type = 'dsp-publications'[source]
definition_id = None[source]
class httk.serve.dsp.config.DspProviderConfig[source]

Configure global DSP minimal service and catalogue metadata.

public_base_url: str[source]
service_id: str[source]
service_title: str[source]
participant_id: str[source]
catalog_id: str[source]
catalog_title: str[source]
catalog_description: str[source]
dsp_mount: str = '/dsp'[source]
automatic_progression: bool = True[source]
dcat_ap_content_negotiation: bool = False[source]
dsp_profile: str = 'https://schemas.httk.org/profiles/dsp/2025-1/minimal'[source]
dcat_ap_profile: str = 'https://schemas.httk.org/profiles/dcat-ap/3.0.1/minimal'[source]
dcat_ap_content_negotiation_profile: str = 'https://schemas.httk.org/profiles/dsp/2025-1/minimal#dcat-ap-content-negotiation'[source]
property connector_root_url: str[source]

Return the externally visible DSP connector root.

property service_endpoint_url: str[source]

Return the externally visible versioned DSP endpoint.

resolve_access_url(access_url)[source]

Resolve one validated publication URL against the public origin.