Ethical Constraint
Class
http://proethica.org/ontology/intermediate#EthicalConstraint
Class Hierarchy
- Thing
- ↳ entity (bfo)
- ↳ continuant (bfo)
- ↳ generically dependent continuant (bfo)
- ↳ information content entity (iao)
- ↳ directive information entity (iao)
- ↳ Constraint (proethica-core)
- ↳ Ethical Constraint
- ↳ Advisory Scope Completeness Constraint (proethica-intermediate-extended)
- ↳ AI Disclosure Constraint (proethica-intermediate-extended)
- ↳ Benevolent Motive Justification Constraint (proethica-intermediate-extended)
- ↳ Bid Adequacy Reflection Constraint (proethica-intermediate-extended)
- ↳ Client Advocacy Boundary Constraint (proethica-intermediate-extended)
- ↳ Client Budget Override Safety Continuation Constraint (proethica-intermediate-extended)
- ↳ Client Economic Pressure Continuation Constraint (proethica-intermediate-extended)
- ↳ Client Economic Pressure Safety Continuation Constraint (proethica-intermediate-extended)
- ↳ Client Instruction Override Constraint (proethica-intermediate-extended)
- ↳ Client Override Safety Withdrawal Constraint (proethica-intermediate-extended)
- ↳ Commercial Solicitation Reliance Constraint (proethica-intermediate-extended)
- ↳ Complete Report Inclusion Constraint (proethica-intermediate-extended)
- ↳ Complete Reporting Constraint (proethica-intermediate-extended)
- ↳ ConflictOfInterestAvoidanceConstraint (proethica-intermediate-extended)
- ↳ Consent-Independent Safety Reporting Constraint (proethica-intermediate-extended)
- ↳ ContractAwardInfluenceProhibitionConstraint (proethica-intermediate-extended)
- ↳ Contradictory Evidence Omission Constraint (proethica-intermediate-extended)
- ↳ Cost Assumption Neutrality Constraint (proethica-intermediate-extended)
- ↳ Covert Review Prohibition Constraint (proethica-intermediate-extended)
- ↳ Deadline Pressure Disclosure Constraint (proethica-intermediate-extended)
- ↳ Diploma Mill Equivalence Constraint (proethica-intermediate-extended)
- ↳ Dishonest Enterprise Association Constraint (proethica-intermediate-extended)
- ↳ Dual Role Safety Constraint (proethica-intermediate-extended)
- ↳ Expert Neutrality Constraint (proethica-intermediate-extended)
- ↳ FaithfulAgentLimitConstraint (proethica-intermediate-extended)
- ... more subclasses
Definition
Professional ethical boundaries beyond legal requirements.
Property Structure
1 · Object and Data Properties
rdfs:domain on this class or ancestor
| Property | Range | Description |
|---|---|---|
| constrainedEntity inherited | Agent | Relates a Constraint to the Agent whose conduct it limits in the case scenario. Distinct from constrainedBy (Action -> Constraint), which records that an action is subject to a constraint. |
| establishedBy inherited | CodeProvision | Indicates which code provision establishes this ethical concept. |
2 · Definitional Attributes
SHACL definitional shape
| Attribute | Property (sh:path) | Description |
|---|---|---|
| boundary type | boundaryType | The controlled boundary type, which drives the subClassOf typing into one of the ten closed boundary-type classes: LegalConstraint, RegulatoryConstraint, ResourceConstraint, CompetenceConstraint, JurisdictionalConstraint, ProceduralConstraint, EthicalConstraint, SafetyConstraint, ConfidentialityConstraint, TemporalConstraint. The prohibition/boundary content that individuates the type. A routing input, not stored as a literal. |
| established by | establishedBy | The source CodeProvision that establishes the constraint, via the establishedBy edge. The second type-individuating coordinate: per the scopeNote a constraint type is the boundary it states plus its source provision. Range: CodeProvision. |
3 · Bearer Attributes
SHACL property shape
individual data
| Attribute | Property (sh:path) | Description |
|---|---|---|
| severity | severity | The severity of the constraint in this case (critical, high, medium, low); a per-occasion assessment (Dennis severity ordering) that can differ across cases sharing the same boundary. |
| applicability condition | applicabilityCondition | The situational TRIGGER: the circumstances under which the prohibition applies in this case (the Dennis specification-by-context condition); temporalScope carries the durational window. |
| constrained entity | constrainedEntity | The agent whose conduct the constraint limits, via the outgoing constrainedEntity edge. Range: Agent. |
| temporal scope | temporalScope | The durational WINDOW during which the boundary is in force in this case (e.g. for the duration of the engagement); applicabilityCondition carries the situational trigger under which it applies. |
| source | source | The provision or authority string as extracted, kept verbatim on the individual; each dotted NSPE designation that resolves against the provision registry is also materialized as the establishedBy edge (a non-code source survives only in this literal). |
| constraint statement | constraintStatement | The operative must-not clause, kept verbatim; mirrors skos:definition and is one of the narrative source fields the defeasibility harvest reads from committed TTLs. |
4 · Referenced By
rdfs:range on this class or ancestor
| From | Property | Description |
|---|---|---|
| Action | constrainedBy inherited | Relates an action to constraints that limit or restrict it. The ratified D1 producer (an Action-pass action_constraints field resolved to this edge) shipped without its emitter; the edge is reserved with the Action-side enrichment family (usesResource pattern) and the producer lands with the Step-4 enrichment or the 119 rebuild. Do not deprecate on the zero-use test. |
| Code Provision | establishes inherited | Relates a code provision to the ethical concepts (principles, obligations, constraints) it establishes or defines. |
| State | activatesConstraint inherited | Relates a State to a Constraint that the obtaining of the State activates, bounding the actions available to the role-bearers the state concerns (the S->Cs linkage). |
Used in cases 52
Case ontologies that instantiate this class or one of its base-ontology descendants. Computed from each individual's type, so the list stays current as cases are extracted. The originating case is shown under Extraction details.
Case 4 Case 5 Case 8 Case 9 Case 10 Case 11 Case 12 Case 13 Case 14 Case 15 Case 16 Case 18 Case 20 Case 57 Case 58 Case 71 Case 73 Case 76 Case 78 Case 79 Case 82 Case 83 Case 85 Case 86 Case 87 Case 88 Case 89 Case 91 Case 92 Case 94 Case 100 Case 103 Case 107 Case 108 Case 109 Case 110 Case 111 Case 112 Case 113 Case 118 Case 120 Case 133 Case 135 Case 136 Case 137 Case 140 Case 157 Case 158 Case 160 Case 165 Case 173 Case 175@prefix core: <http://proethica.org/ontology/core#> .
@prefix iao: <http://purl.obolibrary.org/obo/IAO_> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix pcsh: <http://proethica.org/shapes/core#> .
@prefix proeth: <http://proethica.org/ontology/intermediate#> .
@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:EthicalConstraint a owl:Class ;
rdfs:label "Ethical Constraint"@en ;
iao:0000115 "Professional ethical boundaries beyond legal requirements."@en ;
rdfs:comment "Professional ethical boundaries beyond legal requirements."@en ;
rdfs:subClassOf core:Constraint ;
skos:changeNote "2026-07-07 (Cs citation layer, content-level verify-or-drop): the Benzmüller et al. 2020 reference moved to core:Constraint, where the claim it supports lives: the paper designs ethico-legal normative theories for formal verification and does not distinguish professional ethics beyond legal requirements (the differentia of this kind, which stays as design language)."@en .
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:ConstraintDefinitionShape a sh:NodeShape ;
rdfs:label "Constraint definition schema (type-level, descriptive, field contract)"@en ;
rdfs:comment "What individuates a constraint TYPE: the boundary it states (boundary_type, which drives the subClassOf typing into one of the ten closed boundary-type classes) and the source provision that establishes it. The per-case severity and applicability, the agent it limits, and the action it bounds are per-individual and declared on ConstraintPropertyShape, mirroring the R/P/O/S/Rs/Ca Definition/Property split and the constraint scopeNote (the TYPE is the prohibition plus its source provision; the constrained party, per-occasion applicability, and any exception attach to the case individual). Descriptive only (no validation result); the routing input is the constraint_type schema field (the boundaryType property is its shape-path anchor), not stored as a literal."@en ;
sh:property [ sh:description "The controlled boundary type, which drives the subClassOf typing into one of the ten closed boundary-type classes: LegalConstraint, RegulatoryConstraint, ResourceConstraint, CompetenceConstraint, JurisdictionalConstraint, ProceduralConstraint, EthicalConstraint, SafetyConstraint, ConfidentialityConstraint, TemporalConstraint. The prohibition/boundary content that individuates the type. A routing input, not stored as a literal." ;
sh:name "boundary type" ;
sh:order 1 ;
sh:path proeth:boundaryType ],
[ pcsh:informationalOnly true ;
sh:description "The source CodeProvision that establishes the constraint, via the establishedBy edge. The second type-individuating coordinate: per the scopeNote a constraint type is the boundary it states plus its source provision. Range: CodeProvision." ;
sh:name "established by" ;
sh:order 2 ;
sh:path core:establishedBy ] ;
sh:targetClass core:Constraint .
pcsh:ConstraintPropertyShape a sh:NodeShape ;
rdfs:label "Constraint per-case schema (individual data, non-definitional)"@en ;
rdfs:comment "What a given constraint INDIVIDUAL is described by in a specific case: its per-occasion severity and applicability window, the agent whose conduct it limits, and the action it bounds. These do NOT individuate the constraint TYPE (that is ConstraintDefinitionShape, keyed on the boundary it states and its source provision); their values are per-case, asserted on the individual. Descriptive only."@en ;
sh:property [ sh:description "The severity of the constraint in this case (critical, high, medium, low); a per-occasion assessment (Dennis severity ordering) that can differ across cases sharing the same boundary." ;
sh:name "severity" ;
sh:order 1 ;
sh:path proeth:severity ],
[ sh:description "The situational TRIGGER: the circumstances under which the prohibition applies in this case (the Dennis specification-by-context condition); temporalScope carries the durational window." ;
sh:name "applicability condition" ;
sh:order 2 ;
sh:path proeth:applicabilityCondition ],
[ sh:description "The agent whose conduct the constraint limits, via the outgoing constrainedEntity edge. Range: Agent." ;
sh:name "constrained entity" ;
sh:order 3 ;
sh:path core:constrainedEntity ],
[ sh:description "The durational WINDOW during which the boundary is in force in this case (e.g. for the duration of the engagement); applicabilityCondition carries the situational trigger under which it applies." ;
sh:name "temporal scope" ;
sh:order 4 ;
sh:path proeth:temporalScope ],
[ sh:description "The provision or authority string as extracted, kept verbatim on the individual; each dotted NSPE designation that resolves against the provision registry is also materialized as the establishedBy edge (a non-code source survives only in this literal)." ;
sh:name "source" ;
sh:order 5 ;
sh:path proeth:source ],
[ sh:description "The operative must-not clause, kept verbatim; mirrors skos:definition and is one of the narrative source fields the defeasibility harvest reads from committed TTLs." ;
sh:name "constraint statement" ;
sh:order 6 ;
sh:path proeth:constraintStatement ] ;
sh:targetClass core:Constraint .