Regen Network

Regen Network Data Standards

WARNING: This site is a work in progress.

Class: Attestation

An issuer’s judgment, made at a stated time, about what it targets: exact versions of claims, of other attestations, or a snapshot of claims. As a Claim it is attributed (hasClaimant names the issuer), immutable and revisable with wasRevisionOf; it is about a subject, such as a project or a plot, even when it judges a claim about that subject. It does not carry its own hash or IRI, anchoring state, or a status that changes after it is made: a later judgment is a new Attestation.

URI: rfs:Attestation

erDiagram
Activity {
    uriorcurie id  
    string name  
    string description  
    date endDate  
    date startDate  
}
Attestation {
    uriorcurieList appliesRuleSet  
    datetime assertedAt  
    uriorcurieList hasTarget  
    uriorcurie outcome  
    string rationale  
    uriorcurieList reliesOn  
    uriorcurieList requirement  
    boolean unbounded  
    VerificationMethodType verificationMethod  
    string verificationMethodDescriptor  
    string name  
    string description  
    uri url  
    uriorcurie wasRevisionOf  
}
ClaimSubject {
    uriorcurie id  
    string name  
}
ContentDigest {
    DigestAlgorithm algorithm  
    string digestValue  
}
Entity {
    string name  
    string description  
    uri url  
    string image  
    EntityTypes type  
    string walletAddress  
}
Evidence {
    uriorcurie id  
    string name  
    string description  
    date issued  
    uri licence  
    string locator  
    string mediaType  
    uriList resolver  
    DCMIType sourceType  
}
Scope {
    uriorcurieList appliesTo  
    stringList exclusion  
    string limitation  
}

Activity ||--}o Entity : "wasAssociatedWith"
Attestation ||--|o Scope : "scope"
Attestation ||--|| ClaimSubject : "hasSubject"
Attestation ||--}o Evidence : "hasEvidence"
Attestation ||--}| Entity : "hasClaimant"
Evidence ||--|o Activity : "wasGeneratedBy"
Evidence ||--|| ContentDigest : "contentHash"

Inheritance

Class Properties

PropertyValue
Class URIrfs:Attestation

Slots

NameCardinality and RangeDescriptionInheritance
hasTarget*
Uriorcurie
What an attestation judges or answers: the identifier of an exact, immutable …direct
reliesOn*
Uriorcurie
Exact versions of claims or attestations that a judgment depends on without j…direct
requirement*
Uriorcurie
Identifier of a requirement within one version of a rule set or checklist, fo…direct
appliesRuleSet*
Uriorcurie
Identifier of an exact version of a normative rule set applied, such as a cre…direct
outcome0..1
Uriorcurie
The verdict, as a term from the vocabulary of the program or rule set the jud…direct
rationale0..1
String
Why the issuer reached the outcomedirect
verificationMethod1
VerificationMethodType
How the assertion or judgment was established, as structured data, so that a …direct
verificationMethodDescriptor0..1
String
Free-text description of a verification method that the VerificationMethodTyp…direct
scope0..1
Scope
Where the judgment applies: the subjects it covers, what it explicitly exclud…direct
unbounded0..1
Boolean
True when the issuer explicitly gives the judgment no limits beyond what it t…direct
name1
String
Human-readable title of the claimClaim
description0..1
String
The assertion as the claimant states it in natural languageClaim
url0..1
Uri
Link to a page with more information about the claimClaim
hasClaimant1..*
Entity
The issuer: the party that makes the judgment and takes responsibility for itClaim
assertedAt1
Datetime
When the issuer made the judgmentClaim
hasSubject1
ClaimSubject
What the judgment is about: a project, plot or other subjectClaim
hasEvidence*
Evidence
Sources the issuer relied onClaim
wasRevisionOf0..1
Uriorcurie
Identifier of the exact, immutable earlier Claim version that this Claim revi…Claim

Rules

Rule AppliedPreconditionsPostconditionsElseconditions
slot_conditions{'verificationMethod': {'equals_string': 'OTHER'}}{'verificationMethodDescriptor': {'required': True}}

Identifier and Mapping Information

Schema Source

Mappings

Mapping TypeMapped Value
selfrfs:Attestation
nativerfs:Attestation

LinkML Source

Direct

```yaml name: Attestation description: 'An issuer''s judgment, made at a stated time, about what it targets: exact versions of claims, of other attestations, or a snapshot of claims. As a Claim it is attributed (hasClaimant names the issuer), immutable and revisable with wasRevisionOf; it is about a subject, such as a project or a plot, even when it judges a claim about that subject. It does not carry its own hash or IRI, anchoring state, or a status that changes after it is made: a later judgment is a new Attestation.' from_schema: https://framework.regen.network/schema/ is_a: Claim slots: - hasTarget - reliesOn - requirement - appliesRuleSet - outcome - rationale - verificationMethod - verificationMethodDescriptor - scope - unbounded slot_usage: hasClaimant: name: hasClaimant description: 'The issuer: the party that makes the judgment and takes responsibility for it.' assertedAt: name: assertedAt description: When the issuer made the judgment. hasSubject: name: hasSubject description: 'What the judgment is about: a project, plot or other subject. It is stated even when it is also the subject of a targeted claim.' hasEvidence: name: hasEvidence description: Sources the issuer relied on. verificationMethod: name: verificationMethod required: true class_uri: rfs:Attestation rules: - preconditions: slot_conditions: verificationMethod: name: verificationMethod equals_string: OTHER postconditions: slot_conditions: verificationMethodDescriptor: name: verificationMethodDescriptor required: true description: A verification method outside the enumeration is described, so the method is never empty (story map CS-4). Enforced by the generated JSON Schema; the generated SHACL does not express LinkML rules.
</details>

### Induced

<details>
```yaml
name: Attestation
description: 'An issuer''s judgment, made at a stated time, about what it targets:
  exact versions of claims, of other attestations, or a snapshot of claims. As a Claim
  it is attributed (hasClaimant names the issuer), immutable and revisable with wasRevisionOf;
  it is about a subject, such as a project or a plot, even when it judges a claim
  about that subject. It does not carry its own hash or IRI, anchoring state, or a
  status that changes after it is made: a later judgment is a new Attestation.'
from_schema: https://framework.regen.network/schema/
is_a: Claim
slot_usage:
  hasClaimant:
    name: hasClaimant
    description: 'The issuer: the party that makes the judgment and takes responsibility
      for it.'
  assertedAt:
    name: assertedAt
    description: When the issuer made the judgment.
  hasSubject:
    name: hasSubject
    description: 'What the judgment is about: a project, plot or other subject. It
      is stated even when it is also the subject of a targeted claim.'
  hasEvidence:
    name: hasEvidence
    description: Sources the issuer relied on.
  verificationMethod:
    name: verificationMethod
    required: true
attributes:
  hasTarget:
    name: hasTarget
    description: 'What an attestation judges or answers: the identifier of an exact,
      immutable version of a claim, of another attestation, or of a snapshot (a fixed
      set of claim versions). Never a logical identifier or label. Unordered set.'
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:hasTarget
    list_elements_ordered: false
    owner: Attestation
    domain_of:
    - Attestation
    range: uriorcurie
    multivalued: true
  reliesOn:
    name: reliesOn
    description: Exact versions of claims or attestations that a judgment depends
      on without judging them, for example the claim stating an enrolment cutoff that
      an approval relies on. Each value is the identifier of one immutable version.
      Specializes dcterms:references, so it asserts neither derivation nor support.
      Unordered set.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    is_a: references
    slot_uri: rfs:reliesOn
    list_elements_ordered: false
    owner: Attestation
    domain_of:
    - Attestation
    range: uriorcurie
    multivalued: true
  requirement:
    name: requirement
    description: Identifier of a requirement within one version of a rule set or checklist,
      for example a credit class registration requirement. The identifier must name
      the checklist version as well as the requirement, because the same short ID
      can name different requirements in different versions. Unordered set.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:requirement
    list_elements_ordered: false
    owner: Attestation
    domain_of:
    - Attestation
    - DeviationRequest
    range: uriorcurie
    multivalued: true
  appliesRuleSet:
    name: appliesRuleSet
    description: Identifier of an exact version of a normative rule set applied, such
      as a credit class, a methodology or a program guide version. It is content and
      enters the identity of the record. It is distinct from a schema-version declaration,
      which states which schema the RDF conforms to. Unordered set.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:appliesRuleSet
    list_elements_ordered: false
    owner: Attestation
    domain_of:
    - Attestation
    - C06ProjectClaim
    range: uriorcurie
    multivalued: true
  outcome:
    name: outcome
    description: The verdict, as a term from the vocabulary of the program or rule
      set the judgment is made under, for example a registration determination.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:outcome
    owner: Attestation
    domain_of:
    - Attestation
    range: uriorcurie
  rationale:
    name: rationale
    description: Why the issuer reached the outcome.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:rationale
    owner: Attestation
    domain_of:
    - Attestation
    range: string
  verificationMethod:
    name: verificationMethod
    description: 'How the assertion or judgment was established, as structured data,
      so that a consumer can distinguish, for example, a lab-measured value from a
      self-attested one. One method per record: its party and date are those of the
      record that carries it (for an attestation, its issuer and assertedAt), so a
      subject checked by two methods has two records, each with its own party and
      date. A value of OTHER must come with verificationMethodDescriptor.'
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:verificationMethod
    owner: Attestation
    domain_of:
    - Attestation
    range: VerificationMethodType
    required: true
  verificationMethodDescriptor:
    name: verificationMethodDescriptor
    description: 'Free-text description of a verification method that the VerificationMethodType
      enumeration does not cover; required when verificationMethod is OTHER. It is
      the extension path: a method that recurs is added to the enumeration in a later
      schema version.'
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:verificationMethodDescriptor
    owner: Attestation
    domain_of:
    - Attestation
    range: string
  scope:
    name: scope
    description: 'Where the judgment applies: the subjects it covers, what it explicitly
      excludes, and what it does not establish.'
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:scope
    owner: Attestation
    domain_of:
    - Attestation
    range: Scope
    inlined: true
  unbounded:
    name: unbounded
    description: True when the issuer explicitly gives the judgment no limits beyond
      what it targets (story map AD-1), so that an unlimited approval is a stated
      choice rather than an omission. An attestation that states it has no scope.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:unbounded
    owner: Attestation
    domain_of:
    - Attestation
    range: boolean
  name:
    name: name
    description: Human-readable title of the claim.
    from_schema: https://framework.regen.network/schema/
    rank: 1
    slot_uri: schema:name
    owner: Attestation
    domain_of:
    - Link
    - ProjectInfo
    - Feature
    - File
    - Impact
    - CreditingProgram
    - CreditProtocol
    - Methodology
    - Registry
    - BufferPoolAccount
    - CreditClassInfo
    - Claim
    - ClaimSubject
    - Evidence
    - Activity
    - Entity
    range: string
    required: true
  description:
    name: description
    description: 'The assertion as the claimant states it in natural language. This
      is asserted content, not a presentational summary: changing it changes the Claim.'
    from_schema: https://framework.regen.network/schema/
    rank: 1
    slot_uri: schema:description
    owner: Attestation
    domain_of:
    - Link
    - ProjectInfo
    - File
    - CreditClassInfo
    - Claim
    - Evidence
    - Activity
    - Condition
    - Entity
    range: string
  url:
    name: url
    description: Link to a page with more information about the claim. A pointer for
      readers, not evidence; cite evidence with hasEvidence.
    from_schema: https://framework.regen.network/schema/
    rank: 1
    slot_uri: schema:url
    owner: Attestation
    domain_of:
    - Link
    - ProjectInfo
    - CreditingProgram
    - CreditProtocol
    - Methodology
    - Registry
    - CreditClassInfo
    - Claim
    - Entity
    range: uri
  hasClaimant:
    name: hasClaimant
    description: 'The issuer: the party that makes the judgment and takes responsibility
      for it.'
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    is_a: wasAttributedTo
    slot_uri: rfs:hasClaimant
    list_elements_ordered: false
    owner: Attestation
    domain_of:
    - Claim
    range: Entity
    required: true
    multivalued: true
    inlined: true
    inlined_as_list: true
    minimum_cardinality: 1
  assertedAt:
    name: assertedAt
    description: When the issuer made the judgment.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:assertedAt
    owner: Attestation
    domain_of:
    - Claim
    range: datetime
    required: true
    pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z$
  hasSubject:
    name: hasSubject
    description: 'What the judgment is about: a project, plot or other subject. It
      is stated even when it is also the subject of a targeted claim.'
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: rfs:hasSubject
    owner: Attestation
    domain_of:
    - Claim
    range: ClaimSubject
    required: true
    inlined: true
  hasEvidence:
    name: hasEvidence
    description: Sources the issuer relied on.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    is_a: references
    slot_uri: rfs:hasEvidence
    list_elements_ordered: false
    owner: Attestation
    domain_of:
    - Claim
    range: Evidence
    multivalued: true
    inlined: true
    inlined_as_list: true
  wasRevisionOf:
    name: wasRevisionOf
    description: Identifier of the exact, immutable earlier Claim version that this
      Claim revises, typically its ClaimIRI. It never names a logical claim or version
      family. In PROV a revision implies that both versions are aspects of the same
      thing (alternateOf), so use it only for a revised version of the same assertion;
      a separate, later assertion, such as a follow-up observation, is a new Claim
      and is not a revision. The earlier version is unchanged, its attestations do
      not carry over, and selecting a current version happens outside the Claim.
    from_schema: https://framework.regen.network/schema/
    rank: 1000
    slot_uri: prov:wasRevisionOf
    owner: Attestation
    domain_of:
    - Claim
    range: uriorcurie
class_uri: rfs:Attestation
rules:
- preconditions:
    slot_conditions:
      verificationMethod:
        name: verificationMethod
        equals_string: OTHER
  postconditions:
    slot_conditions:
      verificationMethodDescriptor:
        name: verificationMethodDescriptor
        required: true
  description: A verification method outside the enumeration is described, so the
    method is never empty (story map CS-4). Enforced by the generated JSON Schema;
    the generated SHACL does not express LinkML rules.