Pedigree and Provenance Model and Notation Avatar
  1. OMG Specification

Pedigree and Provenance Model and Notation — Open Issues

  • Acronym: PPMN
  • Issues Count: 28
  • Description: Issues not resolved
Open Closed All
Issues not resolved

Issues Summary

Key Issue Reported Fixed Disposition Status
SCE-46 Fundamental problem - cannot represent the properties/characteristics of an Element PPMN 1.0b1 open
PPMN-109 EntitySnapshotType is redundant PPMN 1.0b1 open
PPMN-108 Unclear how to use EntitySnapshot and whether it includes EntityRelationships PPMN 1.0b1 open
PPMN-107 Inconsistent and redundant model for DerivedFrom PPMN 1.0b1 open
PPMN-106 Documentation for AlternateOf lacks how the properties are used PPMN 1.0b1 open
PPMN-105 Specializes mentioned but not modeled PPMN 1.0b1 open
PPMN-104 Missing OccurrenceDependencyKind for Guide PPMN 1.0b1 open
PPMN-103 No capability to distinguish creation/generation from output PPMN 1.0b1 open
PPMN-102 Confusion between OccurrenceRelationship and OccurrenceDependency PPMN 1.0b1 open
PPMN-101 Mentions of non-existent class ActivityType PPMN 1.0b1 open
PPMN-100 Definition unnecessarily excludes a person being an Entity. PPMN 1.0b1 open
PPMN-99 Need more precise definition of Custody PPMN 1.0b1 open
PPMN-98 AttributedTo could be useful when Occurrences are known PPMN 1.0b1 open
PPMN-97 isUnique properties need more explanation PPMN 1.0b1 open
PPMN-96 The Parties model is missing typical identification and contact information PPMN 1.0b1 open
PPMN-95 Locations are independent of Parties PPMN 1.0b1 open
PPMN-94 Grammar error in definition of Input PPMN 1.0b1 open
PPMN-93 Unclear difference between Output and Product OccurrenceDependencyKinds PPMN 1.0b1 open
PPMN-92 The word derivee means the opposite from its usage in DerivedFrom PPMN 1.0b1 open
PPMN-84 Unclear semantics of OccurrenceDependency::time PPMN 1.0b1 open
PPMN-81 OccurrenceChain should be a subclass of Occurrence PPMN 1.0b1 open
PPMN-91 InterestedParty could be better defined and related to other Roles PPMN 1.0b1 open
PPMN-88 Should provide a Library of common EntityFormats PPMN 1.0b1 open
PPMN-89 (Structural) split out types from instance modeling PPMN 1.0b1 open
PPMN-87 Metamodel diagram for AcquisitionKind does not show SCE inhteritance PPMN 1.0b1 open
PPMN-86 DerivedFrom::role should use a Kind not a String PPMN 1.0b1 open
PPMN-85 No Vocabulary Terms in the PPMN Library have a conceptURI PPMN 1.0b1 open
PPMN-82 Unclear semantics of sequence in occurrenceHistory PPMN 1.0b1 open

Issues Descriptions

Fundamental problem - cannot represent the properties/characteristics of an Element

  • Key: SCE-46
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    ElementType seems to have no way to represent the properties of the type, and TypedElement seems to have no way to represent the values of any properties.
    All you can represent is ElementRelationships.
    8.1.3 says "entity-type “Thoroughbred Horse” that is used to specific the basic characteristics of thoroughbred horses." but there is nothing I can see that could represent those characteristics, nor their values for the Element Secretariat.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:55 GMT
  • Updated: Tue, 18 Jul 2023 18:55 GMT

EntitySnapshotType is redundant

  • Key: PPMN-109
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It adds nothing over EntityType

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:46 GMT
  • Updated: Tue, 18 Jul 2023 18:46 GMT

Unclear how to use EntitySnapshot and whether it includes EntityRelationships

  • Key: PPMN-108
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It's unclear how to use Snapshot generally, and how the creationDate is supposed to tie in with the Occurrence(s) that updated it.

    The scope of a snapshot is not clear, and EntityRelationship is not timestamped in the same way.
    If an Occurrence creates and removes some EntityRelationships involving an Entity, how is that represented? ActivityOccurrence::resultingEntityRelationship is not sufficient.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:45 GMT
  • Updated: Tue, 18 Jul 2023 18:45 GMT

Inconsistent and redundant model for DerivedFrom

  • Key: PPMN-107
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    Unlike other relationships this has subclasses for the different types of derivation. But also a DerivationKind (though indirectly linked via DerivationType) with largely the same Library of instances (DerivedFrom, QuotedFrom, RevisionOf, SourcedFrom), though missing subclass DescendantOf (which is self-referentially defined).

    BTW there's a missing word "one" in the following under Figure 24
    "DerivationTypes support the definition of the expected kinds of derivations that might result in the generation of one EntityType from or more others."

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:21 GMT
  • Updated: Tue, 18 Jul 2023 18:21 GMT

Documentation for AlternateOf lacks how the properties are used

  • Key: PPMN-106
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It inherits source and target but does not explain the meaning of the direction. I'd guess that the target is the more canonical and the source is the alternate but it should be spelled out.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:14 GMT
  • Updated: Tue, 18 Jul 2023 18:14 GMT

Specializes mentioned but not modeled

  • Key: PPMN-105
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It's described in the text of 8.9 but not shown in a diagram or included in the metamodel. It seems useful, to represent the relationship from PROV.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:12 GMT
  • Updated: Tue, 18 Jul 2023 18:12 GMT

Missing OccurrenceDependencyKind for Guide

  • Key: PPMN-104
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    This is one of the 4 classic types of process communication e.g. https://www.brcommunity.com/articles.php?id=b634 - we have the other 3 (input, output, enabler).

    [IDEF0 uses different terms - Control instead of Guide and Mechanism instead of Enabler. Use of MVF would enable this]

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:09 GMT
  • Updated: Tue, 18 Jul 2023 18:09 GMT

No capability to distinguish creation/generation from output

  • Key: PPMN-103
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    Unlike PROV which makes it explicit.
    All we have is creationDate, which could refer to a snapshot.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:03 GMT
  • Updated: Tue, 18 Jul 2023 18:03 GMT

Confusion between OccurrenceRelationship and OccurrenceDependency

  • Key: PPMN-102
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It's not helped that the descriptions of the properties of OccurrenceRelationship use "dependent", and the properties of Occurrence (Table 14) use "dependency" for both predecessor (OccurrenceRelationships) and occurrenceDependency. It's pretty hard to determine what's canonical vs what's derived. I think that OccurrenceRelationship is intended to be derived from OccurrenceDependency (which involves the more detailed flow of Entities). Another confusing aspect is that OccurrenceDependency is used for outputs: the source of such Dependencies is the Occurrence rather than the Entity produced. Normally (e.g. in UML) the source of a Dependency would be an Entity and it's dependent on the Occurrence that generated/updated it. I think it might be better to rename it. Further confusing is that the PPMNLibrary has a PPMNRelationshipKind of Dependency.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 18:00 GMT
  • Updated: Tue, 18 Jul 2023 18:00 GMT

Mentions of non-existent class ActivityType

  • Key: PPMN-101
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    3 mentions in the text of 8.2 and 8.2.1: should be ActivityOccurrenceType

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 00:53 GMT
  • Updated: Tue, 18 Jul 2023 00:53 GMT

Definition unnecessarily excludes a person being an Entity.

  • Key: PPMN-100
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    At the moment people would be excluded, based on the definition "An individual concept or informational or physical artifact". However there may be use cases where it's required to track chain of custody of a person e.g. a prisoner, a baby/minor, a patient, a VIP, a witness, an asylum seeker, a dead body, a mummy. All being held and transported and transferred between parties.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 00:12 GMT
  • Updated: Tue, 18 Jul 2023 00:12 GMT

Need more precise definition of Custody

  • Key: PPMN-99
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    At the moment it's self-referential "Custody indicates that the source element has custody of the target element."
    There are nuances and legal aspects to consider.
    For example, if someone is working for a company does the company or the employee have "custody" of the Entity they're working on? Legally it's the Company.
    If an Entity is lost or stolen does the finder, or thief, have custody? Legally they do not, apparently.

  • Reported: PPMN 1.0b1 — Tue, 18 Jul 2023 00:02 GMT
  • Updated: Tue, 18 Jul 2023 00:02 GMT

AttributedTo could be useful when Occurrences are known

  • Key: PPMN-98
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    The definition says "The AttributedTo relationship is a kind of AssociatedWith relationship that captures the fact that an Entity was created or transformed by some unknown activity or action of a Party."

    However even if the activity detail is known, there may still be value in giving someone specific (out of all those who may have played some role) credit or responsibility for the Entity e.g. in case of support or other inquiries.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 23:57 GMT
  • Updated: Mon, 17 Jul 2023 23:57 GMT

isUnique properties need more explanation

  • Key: PPMN-97
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It's not clear what isUnique means in practice. For example 8.4.9, what does it mean for a ResponsibilityRelationship to be unique?
    I assume it means unique to a specific Entity (it should say) but, if isUnique=true, does it allow any time overlap of responsibilities? What if the responsibility is delegated - won't the original still hold?

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 23:42 GMT
  • Updated: Mon, 17 Jul 2023 23:42 GMT

The Parties model is missing typical identification and contact information

  • Key: PPMN-96
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It's not clear whether this should be in scope (probably not), but at minimum something should be said about it. There are other standards that could be used for contact info, e.g. vCard, and OMG Commons has basic support for identifiers, and the GLEIF ontology has registration information. In general there are several aspects not addressed, several important for provenance - especially being able to identify the party.

    • naming
    • registration (for companies)
    • jurisdiction
    • identification (many schemes, including for non-human agents)
    • entity type (for companies, but could be used for minors/prisoners)
    • date created/born and ceased
    • software/hardware version (for non-human agents)
  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 23:33 GMT
  • Updated: Mon, 17 Jul 2023 23:33 GMT

Locations are independent of Parties

  • Key: PPMN-95
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    Occurrences may be linked to Locations regardless of a Party, so it does not make sense to include the Locations package in the Parties model.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 23:13 GMT
  • Updated: Mon, 17 Jul 2023 23:13 GMT

Grammar error in definition of Input

  • Key: PPMN-94
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It repeats "is an input":
    Input indicates that the target Entity is an input to the source Occurrence is an input during the course of the Occurrence

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 22:51 GMT
  • Updated: Mon, 17 Jul 2023 22:51 GMT

Unclear difference between Output and Product OccurrenceDependencyKinds

  • Key: PPMN-93
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    One says "Output indicates that the target Entity is an output of some kind of the Occurrence.."
    and the other says "Product indicates that the source Occurrence produces or creates the target Entity during the course of the Occurrence."
    It seems both Product and By-product should be subtypes of Output (should at least be documented if not supported by the metamodel) but there is no definition of what would make a Product.

    It's unclear if either would encompass destroying the Entity.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 22:49 GMT
  • Updated: Mon, 17 Jul 2023 22:49 GMT

The word derivee means the opposite from its usage in DerivedFrom

  • Key: PPMN-92
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    In PPMN DerivedFrom::derivee is used to represent the Entity FROM which something was derived; however in English it means the derived element - which is the other named end.
    Quoting a definition:
    "In linguistics, a derivee is a word that is formed from another word by adding affixes or changing the shape of the root. For example, the word "runner" is a derivee of the word "run".

    In general, the word "derivee" means something that is derived from something else. The specific meaning of the word will depend on the context in which it is used.

    Here are some examples of how the word "derivee" is used in a sentence:

    In mathematics, the derivative of a function is its derivee.
    In linguistics, the word "runner" is a derivee of the word "run"."

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 22:32 GMT
  • Updated: Mon, 17 Jul 2023 22:32 GMT

Unclear semantics of OccurrenceDependency::time

  • Key: PPMN-84
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    The definition "The time that the Occurrence had the dependency on the Entity” is unclear in usage when the Occurrences themselves have both a start and end.
    I think the property could safely be deleted.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 18:33 GMT
  • Updated: Mon, 17 Jul 2023 19:53 GMT

OccurrenceChain should be a subclass of Occurrence

  • Key: PPMN-81
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    That would allow for treating a whole chain as a single occurrence for purposes of abstraction/drill down, and address inconsistencies in the current metamodel (e.g. it would seem that a single Occurrence cannot have a subject Entity or interestedParty since they are properties specific to OccurrenceChain).

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 18:24 GMT
  • Updated: Mon, 17 Jul 2023 19:45 GMT

InterestedParty could be better defined and related to other Roles

  • Key: PPMN-91
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    For example, I would have thought a Performer would always have an interest.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 19:24 GMT
  • Updated: Mon, 17 Jul 2023 19:24 GMT

Should provide a Library of common EntityFormats

  • Key: PPMN-88
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    If only as an exemplar. For example, the standard graphical formats, HTML, PDF, programming languages, XML, XMI etc

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 19:00 GMT
  • Updated: Mon, 17 Jul 2023 19:16 GMT

(Structural) split out types from instance modeling

  • Key: PPMN-89
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    Many people will want to use PPMN just for tracking occurrences (which is the level that PROV works at). Understanding how to do this is made a lot more complex by the fact that all the metamodels are presented along with the type/process level information.
    Proposal: have the instance/occurrence level information in their own self-contained metamodels and the Type extensions separate.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 19:06 GMT
  • Updated: Mon, 17 Jul 2023 19:06 GMT

Metamodel diagram for AcquisitionKind does not show SCE inhteritance

  • Key: PPMN-87
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    Figure 52 should show AcquisitionKind inheriting from SemanticReference. the other vocabs do have this.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 18:47 GMT
  • Updated: Mon, 17 Jul 2023 18:47 GMT

DerivedFrom::role should use a Kind not a String

  • Key: PPMN-86
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    For best practice and consistency

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 18:40 GMT
  • Updated: Mon, 17 Jul 2023 18:40 GMT

No Vocabulary Terms in the PPMN Library have a conceptURI

  • Key: PPMN-85
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    These terms all inherit from SCE::SemanticElement which is supposed to have a conceptURI. Though not mandatory in the metamodel it seems bad practice that none of the official library elements have such.

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 18:37 GMT
  • Updated: Mon, 17 Jul 2023 18:37 GMT

Unclear semantics of sequence in occurrenceHistory

  • Key: PPMN-82
  • Status: open  
  • Source: Adaptive ( Pete Rivett)
  • Summary:

    It's unclear what the sequence should be, or even the meaning of grouping the Occurrences into a Chain. Is the "succession" to be based on timing, dependency, causation? Is it an error if they are not in time sequence?
    How are the occurrenceHistory related to occurrenceRelationships and/or Dependencies?

    BTW the definition should say "in the life of some Entity" as opposed to "NamedElement"

  • Reported: PPMN 1.0b1 — Mon, 17 Jul 2023 18:30 GMT
  • Updated: Mon, 17 Jul 2023 18:30 GMT