Proactive Risk Disclosure Principle
Class
http://proethica.org/ontology/intermediate#ProactiveRiskDisclosurePrinciple
Class Hierarchy
- Thing
- ↳ entity (bfo)
- ↳ continuant (bfo)
- ↳ generically dependent continuant (bfo)
- ↳ information content entity (iao)
- ↳ directive information entity (iao)
- ↳ Principle (proethica-core)
- ↳ Fundamental Ethical Principle (proethica-intermediate)
- ↳ ProactiveRiskDisclosurePrinciple
Definition
Professional principle requiring engineers to disclose known or reasonably anticipated risks to affected parties, including clients and the public, as soon as those risks are identified, without waiting for the risks to materialize or for a convenient moment in the project lifecycle. The obligation to disclose is not suspended by project interruptions, financial pressures, or client reluctance.
Case Provenance
Discovered in
- Case 8: Balancing Client Directives and Public Welfare: Stormwater Management Dilemma first
- Case 76: Public Health, Safety, and Welfare—Drinking Water Quality
This class was discovered during extraction of the case(s) above; the supporting verbatim quotes are in Source Evidence.
Properties
Abstract Nature
Open-textured value requiring judgment about when a risk is sufficiently identified to trigger disclosure, and to whom disclosure must be made beyond the immediate client.
Confidence
0.88
Derived Obligations
Disclose identified risks to the client at the time of identification, not deferred to a later phase
Document risk communications in writing
Escalate to appropriate authorities when client declines to act on disclosed risks affecting third parties
Extensional Examples
BER Case 76-4 where an engineer failed to disclose pollution risk to a regulatory authority
Engineer L case where work suspension did not relieve the obligation to communicate identified drinking water risks
Operationalization
Requires engineers to communicate identified risks to clients at the time of identification, regardless of project status, and to escalate to regulatory authorities or the public when client action is insufficient to protect third parties.
Potential Conflicts
Client Loyalty
Confidentiality
Principle Category
professional_virtue
Value Basis
Engineers possess specialized knowledge that affected parties lack; withholding identified risks deprives those parties of the ability to protect themselves or seek alternative measures.
Property Structure
1 · Object and Data Properties
rdfs:domain on this class or ancestor
| Property | Range | Description |
|---|---|---|
| establishedBy inherited | CodeProvision | Indicates which code provision establishes this ethical concept. |
| invokedBy inherited | Agent | Relates a Principle to the Agent(s) that invoke it in the case scenario (the parties who appeal to the principle to justify or evaluate conduct). May name several agents. |
2 · Definitional Attributes
SHACL definitional shape
| Attribute | Property (sh:path) | Description |
|---|---|---|
| principle kind | principleCategory | The controlled principle kind, which drives the four-kind subClassOf typing: FundamentalEthicalPrinciple, ProfessionalVirtuePrinciple, RelationalPrinciple, DomainSpecificPrinciple. The canonical leaf label becomes the rdf:type; the category is a routing input, not stored as a literal. |
| extensional cases | extensionalCases | Class-level prior cases that instantiate the principle (McLaren extensional grounding); an optional class-mint field. |
3 · Bearer Attributes
SHACL property shape
individual data
| Attribute | Property (sh:path) | Description |
|---|---|---|
| interpretation | interpretation | Per-case reading of what the principle requires in this situation (a defeasibility-pipeline source field). |
| concrete expression | concreteExpression | How the principle is concretely expressed in the case (a defeasibility-pipeline source field). |
| applied to | appliedTo | What the principle is applied to in the case (the situation or party it bears on). |
| balancing with | balancingWith | The competing principle or value this principle is balanced against in the case, recorded as a literal; extraction records the tension but asserts no defeat or precedence, and the defeasibility edges are materialized by a separate pass from this field. |
| tension resolution | tensionResolution | How the case resolves the tension involving this principle (a defeasibility-pipeline source field). |
| invoked by | invokedBy | The agent who invokes the principle, via the P->Agent invokedBy edge (resolved to a case Agent by embedding shortlist + LLM select; a Board-pattern invoking party resolves deterministically to the case-scoped NSPE Board of Ethical Review Agent). Range: Agent. |
4 · Referenced By
rdfs:range on this class or ancestor
| From | Property | Description |
|---|---|---|
| Action | guidedByPrinciple inherited | Relates an action to a principle that directs it. The principle supplies the value the action is taken to serve. |
| Code Provision | establishes inherited | Relates a code provision to the ethical concepts (principles, obligations, constraints) it establishes or defines. |
| Obligation | derivedFromPrinciple inherited | Relates an obligation to the principle or principles it operationalizes. The obligation gives concrete directive force to the more abstract value the principle expresses (Dennis et al. 2016). |
| Role | adheresToPrinciple inherited | Relates a role to principles that guide its conduct; the role-relative applicability edge of the R->P->O chain (the role determines which principles apply to conduct in that standing). |
Source Evidence
Text references
Engineer L becomes concerned that the risk of impact to the community drinking water source will potentially increase, as the likelihood of heavy stormwater flows will increase over time
Engineer L does not mention to Client X the potential increased risk of impact to the community drinking water source
Source text
Engineer L does not mention to Client X the potential increased risk of impact to the community drinking water source
Used in cases 2
@prefix core: <http://proethica.org/ontology/core#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix pcsh: <http://proethica.org/shapes/core#> .
@prefix proeth: <http://proethica.org/ontology/intermediate#> .
@prefix proeth-prov: <http://proethica.org/provenance#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
proeth:ProactiveRiskDisclosurePrinciple a owl:Class ;
rdfs:label "Proactive Risk Disclosure Principle" ;
proeth:abstractNature "Open-textured value requiring judgment about when a risk is sufficiently identified to trigger disclosure, and to whom disclosure must be made beyond the immediate client." ;
proeth:confidence "0.88" ;
proeth:derivedObligations "Disclose identified risks to the client at the time of identification, not deferred to a later phase",
"Document risk communications in writing",
"Escalate to appropriate authorities when client declines to act on disclosed risks affecting third parties" ;
proeth:extensionalExamples "BER Case 76-4 where an engineer failed to disclose pollution risk to a regulatory authority",
"Engineer L case where work suspension did not relieve the obligation to communicate identified drinking water risks" ;
proeth:operationalization "Requires engineers to communicate identified risks to clients at the time of identification, regardless of project status, and to escalate to regulatory authorities or the public when client action is insufficient to protect third parties." ;
proeth:potentialConflicts "Client Loyalty",
"Confidentiality" ;
proeth:principleCategory "professional_virtue" ;
proeth:textReferences "Engineer L becomes concerned that the risk of impact to the community drinking water source will potentially increase, as the likelihood of heavy stormwater flows will increase over time",
"Engineer L does not mention to Client X the potential increased risk of impact to the community drinking water source" ;
proeth:valueBasis "Engineers possess specialized knowledge that affected parties lack; withholding identified risks deprives those parties of the ability to protect themselves or seek alternative measures." ;
proeth-prov:discoveredInCase 8,
76 ;
proeth-prov:discoveredInPass 2 ;
proeth-prov:discoveredInSection "facts" ;
proeth-prov:firstDiscoveredAt "2026-06-04T10:01:19.883840+00:00"^^xsd:dateTime ;
proeth-prov:firstDiscoveredInCase 8 ;
proeth-prov:matchConfidence 0.0 ;
proeth-prov:matchesExisting false ;
proeth-prov:sourceText "Engineer L does not mention to Client X the potential increased risk of impact to the community drinking water source" ;
rdfs:comment "Professional principle requiring engineers to disclose known or reasonably anticipated risks to affected parties, including clients and the public, as soon as those risks are identified, without waiting for the risks to materialize or for a convenient moment in the project lifecycle. The obligation to disclose is not suspended by project interruptions, financial pressures, or client reluctance." ;
rdfs:subClassOf proeth:FundamentalEthicalPrinciple,
proeth:ProfessionalVirtuePrinciple ;
skos:definition "Professional principle requiring engineers to disclose known or reasonably anticipated risks to affected parties, including clients and the public, as soon as those risks are identified, without waiting for the risks to materialize or for a convenient moment in the project lifecycle. The obligation to disclose is not suspended by project interruptions, financial pressures, or client reluctance." ;
prov:generatedAtTime "2026-06-04T10:01:19.883840+00:00"^^xsd:dateTime ;
prov:wasAttributedTo "Case 8 Extraction",
"claude-sonnet-4-6" .
pcsh:CaseAnnotationShape a sh:NodeShape ;
rdfs:label "Shared per-case annotation schema (all nine components)"@en ;
rdfs:comment "The cross-component annotation fields on committed case individuals: proeth:confidence (extraction confidence, decimal; all components except Action, whose Step-3 contract carries no confidence field), proeth:textReferences (verbatim supporting quotes, universal), proeth-prov sourceText (the source snippet, on the Step-1/2 provenance layers; Step-3 A/E individuals ground via textReferences only), and the involvement gloss (proeth:caseInvolvement on role individuals, proeth:caseContext on obligation, capability, and constraint individuals). Values are per-individual; the fields do not individuate any type."@en ;
sh:property [ sh:description "Extraction confidence for this individual (0 to 1)." ;
sh:name "confidence" ;
sh:order 1 ;
sh:path proeth:confidence ],
[ sh:description "Verbatim case quotes supporting this individual." ;
sh:name "text references" ;
sh:order 2 ;
sh:path proeth:textReferences ],
[ sh:description "How this individual figures in the case narrative (role individuals; the same text is routed into rdfs:comment)." ;
sh:name "case involvement" ;
sh:order 3 ;
sh:path proeth:caseInvolvement ],
[ sh:description "Grounding context in this case (obligation, capability, and constraint individuals)." ;
sh:name "case context" ;
sh:order 4 ;
sh:path proeth:caseContext ] ;
sh:targetClass core:Action,
core:Capability,
core:Constraint,
core:Event,
core:Obligation,
core:Principle,
core:Resource,
core:Role,
core:State .
pcsh:PrincipleDefinitionShape a sh:NodeShape ;
rdfs:label "Principle definition schema (type-level, descriptive, field contract)"@en ;
rdfs:comment "What individuates a principle TYPE: its canonical kind (drives the four-kind subClassOf typing; the canonical leaf becomes the rdf:type) and the extensional cases that ground it (McLaren). The five per-case narrative literals and the invokedBy edge are per-individual and now declared on PrinciplePropertyShape, mirroring the RoleDefinitionShape/ProfessionalRolePropertyShape split so the {{ principle_schema }} prompt separates the type judgment from what the case supplies. Descriptive only (no validation result); principle_category is a routing input, not stored as a literal."@en ;
sh:property [ sh:description "The controlled principle kind, which drives the four-kind subClassOf typing: FundamentalEthicalPrinciple, ProfessionalVirtuePrinciple, RelationalPrinciple, DomainSpecificPrinciple. The canonical leaf label becomes the rdf:type; the category is a routing input, not stored as a literal." ;
sh:name "principle kind" ;
sh:order 1 ;
sh:path proeth:principleCategory ],
[ sh:description "Class-level prior cases that instantiate the principle (McLaren extensional grounding); an optional class-mint field." ;
sh:name "extensional cases" ;
sh:order 2 ;
sh:path proeth:extensionalCases ] ;
sh:targetClass core:Principle .
pcsh:PrinciplePropertyShape a sh:NodeShape ;
rdfs:label "Principle per-case schema (individual data, non-definitional)"@en ;
rdfs:comment "What a principle INDIVIDUAL is described by in a specific case: the five narrative literals the defeasibility pipeline consumes and the agent that invokes it. These do NOT individuate the principle TYPE (that is PrincipleDefinitionShape); their values are per-case, asserted on the individual. Descriptive only."@en ;
sh:property [ sh:description "Per-case reading of what the principle requires in this situation (a defeasibility-pipeline source field)." ;
sh:name "interpretation" ;
sh:order 1 ;
sh:path proeth:interpretation ],
[ sh:description "How the principle is concretely expressed in the case (a defeasibility-pipeline source field)." ;
sh:name "concrete expression" ;
sh:order 2 ;
sh:path proeth:concreteExpression ],
[ sh:description "What the principle is applied to in the case (the situation or party it bears on)." ;
sh:name "applied to" ;
sh:order 3 ;
sh:path proeth:appliedTo ],
[ sh:description "The competing principle or value this principle is balanced against in the case, recorded as a literal; extraction records the tension but asserts no defeat or precedence, and the defeasibility edges are materialized by a separate pass from this field." ;
sh:name "balancing with" ;
sh:order 4 ;
sh:path proeth:balancingWith ],
[ sh:description "How the case resolves the tension involving this principle (a defeasibility-pipeline source field)." ;
sh:name "tension resolution" ;
sh:order 5 ;
sh:path proeth:tensionResolution ],
[ sh:description "The agent who invokes the principle, via the P->Agent invokedBy edge (resolved to a case Agent by embedding shortlist + LLM select; a Board-pattern invoking party resolves deterministically to the case-scoped NSPE Board of Ethical Review Agent). Range: Agent." ;
sh:name "invoked by" ;
sh:order 6 ;
sh:path core:invokedBy ] ;
sh:targetClass core:Principle .
Metadata
Extraction details
Discovered in case
['8', '76']
Discovered in pass
2
Discovered in section
facts
First discovered
2026-06-04T10:01:19.883840+00:00
First case
8
Match Confidence
0.0
Matches Existing
false
Generated
2026-06-04T10:01:19.883840+00:00
Attributed to
['Case 8 Extraction', 'claude-sonnet-4-6']