Ethical Code

Class
http://proethica.org/ontology/intermediate#EthicalCode
Class Hierarchy
Definition

A formal document that codifies ethical principles and professional conduct requirements for a profession (e.g. the NSPE, IEEE, or ACM code of ethics). As a document (IAO:0000310 via Guideline) it contains principles, obligations, and constraints, and is itself a professional-knowledge Resource; it is not itself a principle.

Scope note

The code TYPE is the kind of formal document; a specific code present in a case (the NSPE Code of Ethics) is an INDIVIDUAL of this class, and its provisions are CodeProvisions linked by containsProvision, not Resources.

Editor note

Grounded in Frankel (1989), for whom a code is an enabling document, a distillation of collective experience and reflection that offers guidance by simplifying the moral universe, and Davis (1991), for whom a code is a convention between professionals. McLaren (2003) uses codes as extensional inputs but does not originate this resource type.

Definition source
  • Frankel (1989). Professional codes: why, how, and with what impact? Journal of Business Ethics 8(2-3): 109-115 (doi:10.1007/BF00382575).
  • Davis (1991). Thinking like an engineer: the place of a code of ethics in the practice of a profession. Philosophy & Public Affairs 20(2): 150-167.
Mappings & provenance
Property Structure
1 · Object and Data Properties rdfs:domain on this class or ancestor
PropertyRangeDescription
availableTo inherited Agent Indicates which Agent(s) in the case scenario use or have access to this resource. Distinguishes resources used by case participants from those cited by analysts (citedByAgent).
citedByAgent inherited Agent Indicates which Agent(s) cited this resource as an authoritative source in their ethical analysis. Distinguishes citations (the Discussion-section authority signal) from resources used by case participants (availableTo).
containsProvision inherited CodeProvision Relates a guideline to the provisions it contains.
2 · Definitional Attributes SHACL definitional shape
AttributeProperty (sh:path)Description
source kindsourceKindThe controlled source kind, which drives the five-kind typing: ethical_code, technical_standard, case_precedent, legal_resource, reference_material (professional_code was merged into ethical_code 2026-07-01). EthicalCode is typed subClassOf Guideline subClassOf Resource; the other four subClassOf Resource. A routing input, not stored as a literal.
governed by codegovernedByCodeFor a code resource, the incoming governedByCode relation from ProfessionalRole (a TBox restriction, range EthicalCode); relevant only to EthicalCode resources.
3 · Bearer Attributes SHACL property shape individual data
AttributeProperty (sh:path)Description
document titledocumentTitleThe title of the specific source document (the separately-citable INDIVIDUAL the scopeNote names).
topictopicThe subject the resource addresses, carried on the first-class proeth:topic datatype property, not the otherAttribute overflow; context, not class identity.
available toavailableToThe case actor who relied on the resource (the Facts-section signal), via the availableTo edge. Range: Agent.
cited by agentcitedByAgentThe agent who cited the resource as authority (the Discussion-section signal), via the citedByAgent edge, resolved deterministically to the case-scoped NSPE Board of Ethical Review Agent when the text names the Board. Range: Agent.
provision codesprovisionCodesThe provision designations the case cites the resource for (e.g. 'II.3.a'), kept verbatim on the individual; each designation that resolves against the NSPE provision registry is also materialized as a containsProvision edge, and an unresolvable designation (a Canon, an external-standard paragraph) survives only in this literal.
contains provisioncontainsProvisionFor a code resource, the nspe: CodeProvisions the case cites for it, via the containsProvision edge materialized deterministically from the resolvable provisionCodes designations. Range: CodeProvision.
4 · Referenced By rdfs:range on this class or ancestor
FromPropertyDescription
Professional Role governedByCode Relates a professional role to an ethical code that states the obligations and norms of the role in codified form. The code is a convention among professionals that binds whoever claims the professional standing, independent of licensure (Davis 1991); it does not exhaust role morality, since the norms of the profession remain answerable to the proper ends of the profession (Oakley and Cocking 2001, p. 75). Domain is :ProfessionalRole rather than the universal core:Role, because code-governance is a professional-side relation; the ProfessionalRole restriction (governedByCode some EthicalCode) carries the existence commitment.
Action usesResource inherited Relates an action to resources it utilizes. Reserved as the canonical Action-to-Resource edge for the Step-4 enrichment emitters (the survivor named by the 2026-07-07 hasResource deletion); zero corpus uses are expected until those emitters land. Do not deprecate on the zero-use test.
Code Provision partOfGuideline inherited Relates a code provision to the guideline document it belongs to.
Used in cases 14

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 6 Case 7 Case 8 Case 9 Case 10 Case 16 Case 20 Case 56 Case 57 Case 58 Case 59 Case 121
@prefix core: <http://proethica.org/ontology/core#> . @prefix dcterms: <http://purl.org/dc/terms/> . @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:EthicalCode a owl:Class ; rdfs:label "Ethical Code"@en ; iao:0000115 "A formal document that codifies ethical principles and professional conduct requirements for a profession (e.g. the NSPE, IEEE, or ACM code of ethics). As a document (IAO:0000310 via Guideline) it contains principles, obligations, and constraints, and is itself a professional-knowledge Resource; it is not itself a principle."@en ; iao:0000116 "Grounded in Frankel (1989), for whom a code is an enabling document, a distillation of collective experience and reflection that offers guidance by simplifying the moral universe, and Davis (1991), for whom a code is a convention between professionals. McLaren (2003) uses codes as extensional inputs but does not originate this resource type."@en ; iao:0000119 "Davis (1991). Thinking like an engineer: the place of a code of ethics in the practice of a profession. Philosophy & Public Affairs 20(2): 150-167.", "Frankel (1989). Professional codes: why, how, and with what impact? Journal of Business Ethics 8(2-3): 109-115 (doi:10.1007/BF00382575)." ; dcterms:source <https://doi.org/10.1007/BF00382575>, <https://www.jstor.org/stable/2265293> ; rdfs:comment "A formal document that codifies ethical principles and professional conduct requirements for a profession (e.g. the NSPE, IEEE, or ACM code of ethics). As a document (IAO:0000310 via Guideline) it contains principles, obligations, and constraints, and is itself a professional-knowledge Resource; it is not itself a principle."@en ; rdfs:subClassOf core:Guideline ; skos:changeNote "v2.4.2: Changed rdfs:subClassOf from proeth-core:Principle to proeth-core:Guideline. An ethical code is a document that contains principles, obligations, and constraints. Classifying it as a Principle conflated the container with its contents. 2026-07-01: absorbed :ProfessionalCode (then owl:equivalentClass, deprecated; the alias class has since been deleted from this file in the 2026-07-04 slim); the two denoted the same code-of-ethics document; the Frankel/Davis grounding moved here."@en ; skos:scopeNote "The code TYPE is the kind of formal document; a specific code present in a case (the NSPE Code of Ethics) is an INDIVIDUAL of this class, and its provisions are CodeProvisions linked by containsProvision, not Resources."@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:ResourceDefinitionShape a sh:NodeShape ; rdfs:label "Resource definition schema (type-level, descriptive, field contract)"@en ; rdfs:comment "What individuates a resource TYPE: its source kind (the category of professional knowledge, which drives the five-kind subClassOf typing). The specific document title, its topic, and the relying/citing agents are per-individual context declared on ResourcePropertyShape, mirroring the R/P/O/S Definition/Property split: per the Resource definition and scope note, the TYPE is a bare category, a specific named or numbered document is an INDIVIDUAL, and topic, relying actor, and citing authority are context rather than class identity. The incoming governedByCode restriction from ProfessionalRole is informational context for code resources, not an individuating coordinate. Descriptive only (no validation result); source_kind is a routing input, not stored as a literal."@en ; sh:property [ sh:description "The controlled source kind, which drives the five-kind typing: ethical_code, technical_standard, case_precedent, legal_resource, reference_material (professional_code was merged into ethical_code 2026-07-01). EthicalCode is typed subClassOf Guideline subClassOf Resource; the other four subClassOf Resource. A routing input, not stored as a literal." ; sh:name "source kind" ; sh:order 1 ; sh:path proeth:sourceKind ], [ pcsh:informationalOnly true ; sh:description "For a code resource, the incoming governedByCode relation from ProfessionalRole (a TBox restriction, range EthicalCode); relevant only to EthicalCode resources." ; sh:name "governed by code" ; sh:order 2 ; sh:path proeth:governedByCode ] ; sh:targetClass core:Resource . pcsh:ResourcePropertyShape a sh:NodeShape ; rdfs:label "Resource per-case schema (individual data, non-definitional)"@en ; rdfs:comment "What a given resource INDIVIDUAL is described by in a specific case: the specific document it is (its title), the subject it addresses, the agents who relied on or cited it, and for a code resource the provision designations the case cites (kept as the provisionCodes literal and resolved to containsProvision edges). These do NOT individuate the resource TYPE (that is ResourceDefinitionShape, keyed on source kind); their values are per-case, asserted on the individual. Descriptive only."@en ; sh:property [ sh:description "The title of the specific source document (the separately-citable INDIVIDUAL the scopeNote names)." ; sh:name "document title" ; sh:order 1 ; sh:path proeth:documentTitle ], [ sh:description "The subject the resource addresses, carried on the first-class proeth:topic datatype property, not the otherAttribute overflow; context, not class identity." ; sh:name "topic" ; sh:order 2 ; sh:path proeth:topic ], [ sh:description "The case actor who relied on the resource (the Facts-section signal), via the availableTo edge. Range: Agent." ; sh:name "available to" ; sh:order 3 ; sh:path core:availableTo ], [ sh:description "The agent who cited the resource as authority (the Discussion-section signal), via the citedByAgent edge, resolved deterministically to the case-scoped NSPE Board of Ethical Review Agent when the text names the Board. Range: Agent." ; sh:name "cited by agent" ; sh:order 4 ; sh:path core:citedByAgent ], [ sh:description "The provision designations the case cites the resource for (e.g. 'II.3.a'), kept verbatim on the individual; each designation that resolves against the NSPE provision registry is also materialized as a containsProvision edge, and an unresolvable designation (a Canon, an external-standard paragraph) survives only in this literal." ; sh:name "provision codes" ; sh:order 5 ; sh:path proeth:provisionCodes ], [ pcsh:informationalOnly true ; sh:description "For a code resource, the nspe: CodeProvisions the case cites for it, via the containsProvision edge materialized deterministically from the resolvable provisionCodes designations. Range: CodeProvision." ; sh:name "contains provision" ; sh:order 6 ; sh:path core:containsProvision ] ; sh:targetClass core:Resource .
Metadata
Type
Class
Last Updated
2026-07-07 17:16