Principles v1
Viewer
Template
Preview
History

Loading preview...

Version History

No version history yet. Save changes to create versions.

Reference
Template Variables
{{ existing_principles_text }}
Formatted list of existing principle classes from ontology (plus the reuse-bias guidance block)
{{ cross_concept_context }}
Roles already extracted in this case, injected so invoked_by grounds in a named role-bearer (R->P dependency)
{{ principle_boundary }}
{{ pass_directive }}
Per-pass directive; one body serves facts+discussion, differing only by this runtime slot
{{ principle_schema }}
Principle definitional/individual field schema, resolved live from the SHACL PrincipleDefinitionShape (single source shared with the OntServe Principle entity page). principle_category drives the four-kind subClassOf typing; the canonical leaf becomes the rdf:type; invoked_by resolves to the invokedBy edge; the five narrative fields are per-individual literals
{{ principle_individuation }}
{{ case_text }}
The case text to analyze
{{ principle_definition }}
Governing definitional anchor: the ontology iao:0000115 definition plus the iao:0000116 extraction framing, citation-trimmed at injection (the generalized Role definition pattern)
Output Schema
new_principle_classes
label* string
confidence number
definition* string
match_decision* object
text_references* array
extensional_cases array
principle_category* string
principle_individuals
applied_to array
confidence number
identifier* string
invoked_by array → Agent
balancing_with array
interpretation string
principle_class* string
text_references* array
tension_resolution string
concrete_expression string
JSON Wrapper
Appended to the prompt by the extractor:
IMPORTANT: Wrap your response as a JSON object with exactly two keys:
{"new_principle_classes": [...], "principle_individuals": [...]}
If there are no individuals to report, use an empty array for "principle_individuals".

REQUIRED FIELDS on every class: label, definition, confidence (float 0-1), match_decision (object with matches_existing, matched_label, confidence, reasoning), principle_category (fundamental_ethical | professional_virtue | relational | domain_specific), text_references (list of direct quotes)
REQUIRED FIELDS on every individual: identifier, principle_class, confidence (float 0-1), text_references (list of direct quotes)
Every new class MUST include a match_decision object. If the class matches an existing ontology class, set matches_existing=true and matched_label to the existing label.