Skip to content

About

The LLM Persona Ontology provides a structured model for representing personas used to guide, configure, describe, or evaluate LLM-based agents and roles.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

20 Commits

Folders and files

Repository files navigation

LLM Persona Ontology

The LLM Persona Ontology provides a structured model for representing personas used to guide, configure, describe, or evaluate LLM-based agents and roles. It models both Identity (demographic, biographical, and social characteristics) and Behaviour (personality, goals, preferences, reasoning styles, and behavioural constraints), enabling personas to be represented, queried, compared, and edited independently of natural-language prompts.

Rather than describing personas as free-text prompts, it encodes identity, behavioural characteristics, preferences, goals, and constraints as structured RDF knowledge. This enables semantic querying, validation, comparison, reuse, and automatic generation of persona prompts while remaining interoperable with existing Semantic Web vocabularies.

📄 READ THE PAPER @ISWC2026

Design choices

  • Main ontology namespace: https://w3id.org/llm-persona/.
  • Controlled-vocabulary namespace: https://w3id.org/llm-persona/vocab/.
  • Persona components are organised through two feature pillars: Identity and Behavior
  • Pillar-level properties such as llmp:hasIdentityFeature and llmp:hasBehaviorFeature organise more specific properties, for example llmp:hasPersonalIdentity and llmp:hasTaskBehavior.
  • Controlled terms are modelled as SKOS concepts in separate vocabularies and referenced from the OWL ontology with skos:Concept ranges.
  • Reused vocabularies include FOAF, Schema.org, BIO, REL, PROV-O, SKOS, Dublin Core Terms, RDF, RDFS, OWL, and XSD. VANN is used only in SKOS vocabulary files.
  • Where possible, LLMP properties are aligned through rdfs:subPropertyOf, for example with schema:affiliation, schema:memberOf, schema:hasOccupation, bio:event, foaf:knows, rel:parentOf, and dcterms:description.
  • Datatypes were refined with xsd:date, xsd:nonNegativeInteger, xsd:integer, xsd:decimal, and rdf:langString.
  • All concept URIs and local names follow PascalCase (UpperCamelCase) naming convention for consistency.

Files

  • llmp-ontology.ttl: main OWL ontology in Turtle.
  • llmp-identity-skos.ttl: identity controlled vocabularies.
  • llmp-behavior-skos.ttl: behaviour controlled vocabularies.

Documentation

The documentation has been automatically generated using OWL Coat.

Install:

npm install -g owl-coat

After editing the template in res, regenerate the documentation using

owlcoat generate

Citation

If you use this ontology, please cite (bibtex):

Sillano, Andrea, Lisena, Pasquale, Troncy, Raphaël and De Russis, Luigi. Formalising personas for large language models: An ontological approach. In: 25th International Semantic Web Conference (ISWC 2026), Posters and Demos Track, 25-29 October 2026, Bari, Italy

Read the paper: https://www.eurecom.fr/en/publication/8935


This work is licensed under a Creative Commons Attribution 4.0 International License.

CC BY 4.0

About

The LLM Persona Ontology provides a structured model for representing personas used to guide, configure, describe, or evaluate LLM-based agents and roles.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages