Contract Explorer

The analysis travels to the data. At every stop, iSHARE credentials prove who is asking and what is allowed; the data never leaves its source. One generic pattern, instantiated twice: V2G settlement (energy) and pTau217 (health).

station-talk v0.8.0 · schemas.ishare.eu/v3 · no new credential types

Credential profiles

CredentialRoleSchema
PartyIdCredential
Participant Registry
Who is asking: the party's DID and name.
Presented at every stop (G3). Checked against Trusted List + status list.
https://schemas.ishare.eu/v3/party-id/schema.json
FrameworkAgreementCredential
Participant Registry
Terms-of-use claim: legal binding already exists via this claim and the Trust Framework's third-party effect (hard rule 4).
Mandatory for every consumer. Missing -> deny FRAMEWORK_AGREEMENT_MISSING.
https://schemas.ishare.eu/v3/claims/framework-agreement/schema.json
FrameworkComplianceCredential
Participant Registry
Compliance with the iSHARE framework.
Presented with the party credential.
https://schemas.ishare.eu/v3/claims/framework-compliance/schema.json
IdpAssertionCredential
Identity Provider
Identity assertion for a natural person (rights holder / analyst).
Carried where a person acts.
https://schemas.ishare.eu/v3/claims/idp-assertion/schema.json
DataspaceParticipantCredential
Participant Registry
Dataspace claims (membership, role, agreement).
Used where a casus is scoped to a dataspace.
https://schemas.ishare.eu/v3/dataspace-participant/schema.json
DataRightsCredential
Authorisation Registry
What this consumer may do, under which licences, via which delegation chain, on which legal basis.
Profile adds delegationChain + legalBasis (ADR-0001). Issuer refuses without legal basis.
https://schemas.ishare.eu/v3/datarights/schema.json
BitstringStatusListCredential
each issuer
Revocation: bit set = revoked. Takes effect at every station within one train cycle.
Fetched and cached per train cycle (ttl).
https://schemas.ishare.eu/v3/common/bitstring-status-list-credential.json

Licence → ODRL draft

Every ODRL policy carries prov:wasDerivedFrom = the licence URI. A policy without it is rejected.

LicencePermitsConstraintsProhibits
general-unrestricted/1.0use, distribute, derive——
general-resharing-with-adhering-parties/1.0use, distributestn:recipientAdheres eq iSHARE—
general-internal-use/1.0usestn:recipient eq assigneedistribute
general-internal-use-insights/1.0use, commercializestn:recipient eq assignee; stn:subject eq derived-insightsdistribute
general-non-commercial-use/1.0use, distributestn:purposeCategory eq non-commercialcommercialize
general-enrich-with-own-data/1.0aggregatestn:enrichmentSource isAnyOf ['recipient']aggregate
general-enrich-with-third-party-generated-data/1.0aggregatestn:enrichmentSource isAnyOf ['discloser', 'direct-provider', 'third-party-generated-directly']—
general-enrich-with-others-data/1.0aggregatestn:enrichmentSource isAnyOf ['third-party']aggregate
general-use-to-service-entitled-party/1.0usestn:purposeCategory eq service-entitled-party—
general-determined-between-parties/1.0usestn:bilateralAgreement isNotNull —
country-{XX}/1.0usespatial isAnyOf {XX}—
industry-{NNNN}/1.0usestn:industry isAnyOf {NNNN}—
certification-iso-27001/1.0usestn:certification eq ISO27001—
certification-iso-9001/1.0usestn:certification eq ISO9001—
certification-iso-14001/1.0usestn:certification eq ISO14001—
certification-iso-45001/1.0usestn:certification eq ISO45001—
certification-iso-22000/1.0usestn:certification eq ISO22000—
certification-gdpr-regulated/1.0usestn:certification eq GDPR-Art42—
certification-hipaa-regulated/1.0usestn:certification eq HIPAA—
certification-soc-2/1.0usestn:certification eq SOC2-Type2—
certification-pci-dss/1.0usestn:certification eq PCI-DSS—
certification-csa-star/1.0usestn:certification eq CSA-STAR—

Four decision outcomes — 26 test vectors

OutcomeReasonVector
DENYTRAIN_ALGORITHM_NOT_APPROVEDdeny-algorithm-not-approved
Train manifest hash/version not approved at this station.
DENYCONDITION_NOT_METdeny-condition-not-met
Licence conditions evaluated false (e.g. purpose or country).
DENYDATA_RIGHTS_ISSUER_UNTRUSTEDdeny-data-rights-issuer-untrusted
Authorisation Registry not (or no longer) on the Trusted List: its Data Rights Credential carries no weight.
DENYDATA_RIGHTS_REVOKEDdeny-data-rights-revoked
Revoked employer delegation (casus-v2g proof B): takes effect within one train cycle.
DENYDELEGATION_CHAIN_BROKENdeny-delegation-chain-broken
Chain does not lead back to the rights holder.
DENYLICENCE_NOT_GRANTEDdeny-knowledge-station-licence-mismatch
Knowledge station: the request must still match the station's offered licence.
DENYPARTY_CREDENTIAL_REVOKEDdeny-knowledge-station-party-revoked
Knowledge station still verifies the party: a revoked party credential is denied.
DENYLICENCE_NOT_GRANTEDdeny-licence-not-granted
The Data Rights Credential's licences do not cover the licence of the policy.
DENYDATA_RIGHTS_MISSINGdeny-no-data-rights
No Data Rights Credential presented.
DENYFRAMEWORK_AGREEMENT_MISSINGdeny-no-framework-agreement
Framework-agreement claim missing: no third-party effect, no class membership.
DENYLEGAL_BASIS_MISSINGdeny-no-legal-basis
Defence in depth: a credential without legal basis should not exist, if presented anyway -> deny.
DENYPARTY_CREDENTIAL_EXPIREDdeny-party-expired
Party credential past validUntil.
DENYPARTY_CREDENTIAL_REVOKEDdeny-party-revoked
Status list bit set on the party credential.
DENYPOLICY_WITHOUT_LICENCEdeny-policy-without-licence
ODRL policy lacks prov:wasDerivedFrom licence URI (hard rule 2).
DENYRESEARCHER_ASSERTION_INVALIDdeny-researcher-assertion-invalid
G2: the station requires the researcher's IdP-assertion claim and it is missing, forged, expired, revoked or not issued under the presenting party.
DENYPARTY_ISSUER_UNTRUSTEDdeny-untrusted-issuer
Issuer not on the Trusted List (or withdrawn).
PERMIT + DUTIES—duties-bilateral-agreement
Licence general-determined-between-parties: permit, duty to follow the referenced agreement.
HOLD FOR REVIEW—hold-knowledge-station-review
Knowledge station can still hold for custodian review.
HOLD FOR REVIEW—hold-review-profile
Pharma profile P3: everything valid but the licence profile requires custodian review (queue + callback).
HOLD FOR REVIEW—hold-wins-over-duties
Review and duties together: hold first; duties are re-evaluated after the custodian decision.
DENYRESEARCHER_ASSERTION_INVALIDorder-researcher-before-data-rights
Fixed order: researcher assertion is reported before data-rights problems.
DENYPARTY_ISSUER_UNTRUSTEDorder-untrusted-before-revoked
Fixed evaluation order: untrusted issuer is reported before revocation.
PERMIT—permit-knowledge-station-without-data-rights
Knowledge station (open knowledge, e.g. Euretos): no Data Rights Credential needed, only the party check remains.
PERMIT—permit-researcher-assertion-not-required
G2: a station that does not require the assertion ignores a missing one.
PERMIT—permit-researcher-assertion-valid
G2: required and valid researcher assertion changes nothing for the decision.
PERMIT—permit-valid
All checks pass, no duties, no review.