Classifying Frames

Namespaces#

Every frame in FNBr belongs to exactly one namespace. Where a semantic type or a filler restriction says something about a frame element's possible fillers, the namespace says something about the frame itself: what fundamental kind of thing is this frame's Description about? An occurrence, an entity, an attribute, a relation between things, or something more structural?

This is a coarse, single-valued classification, and it's deliberately kept that way. A namespace answers what kind of thing is this, not which particular view does this frame take of it β€” that finer question belongs to the conceptual dimension's own machinery (grounding schemas and profiles), not to the namespace. Keeping the two separate matters: a namespace has to be able to say "this is definitely wrong" when a frame is put in the wrong category, and it can only do that reliably if it isn't also trying to capture every nuance of construal at the same time.

The namespace inventory#

By design, the namespace values form one flat list β€” there's no additional layer of grouping stored above them. @eventive is a family label, not a namespace value. Agentive, Change, Experiential, Phenomenon, Process, Stative, and Undergoing are each their own namespace, independently β€” a frame is stored with exactly one of these seven, never with @eventive itself. No frame anywhere carries @eventive as a stored value. The other nine namespaces below are each the only member of their own family, which is why they don't need a family name distinct from their own.

Fifteen namespaces, seven of them grouped under one family label, eight of them families of one β€” that arithmetic is what makes "the namespace inventory" a well-defined, closed list rather than an open-ended one. It was sixteen briefly: a since-retired @condition namespace β€” promoted from Attributes' own CONDITION profile β€” was folded back into @stative after the split proved not to be a namespace-shaped fact; see Stative's merge note for why.

Frames about an occurrence β€” the eventive family

Namespace What it profiles
Agentive An Agent (intentional) or Cause (non-intentional) bringing something about β€” either by performing an activity or by causing a Patient to reach a resultant state.
Change An entity that comes to be in a new condition β€” a resulting state, or a directed shift along some named dimension (spatial or abstract).
Undergoing A Patient affected by, exposed to, or subjected to an event whose external instigator is inherent to the scene but backgrounded.
Experiential A sentient participant β€” an Experiencer or a Cognizer β€” undergoing a perceptual, emotional, cognitive, or attitudinal event.
Phenomenon A bare occurrence, with no agent, no cause, and no experiencer, read as a single happening β€” the residual eventive category.
Process An extended occurrence with a genuine part-way β€” many sub-events or phases, read as one unfolding whole.
Stative A condition tied to a force, in either tense β€” actively held in place against change right now, or left behind by a producing force now spent β€” never a plain, force-free property.

Each of these seven is documented on its own page (starting with Agentive), with its own scope, subtypes, characteristic participant signature, and diagnostic tests β€” the detail that belongs at the level of one namespace, not repeated seven times on this page. What belongs here is only the shared fact that motivates keeping them distinct rather than collapsing them back into @eventive: each of the seven now anchors its own DUL Situation class (see Situations, below) β€” a fact the conceptual dimension's profile layer cannot carry on its own, and the concrete, permanent reason the split is not a pending collapse.

Frames about a participant rather than an occurrence β€” the ontological family

Namespace What it profiles
@entity Frames that represent entities.
@attribute Frames that represent attributes or attribute values, borne with no producing event on record at all, in either tense β€” a plain, brute property.
@relational Frames that represent relations between entities or events.

Structural and scaffolding namespaces

Namespace What it profiles
@structural Highly schematic frames β€” the FrameNet-native realization of the image-schema tradition: spatial and topological primitives (a figure located relative to a ground, containment, path, force) that other frames lean on as the abstract structure their own meaning is read against.
@microframe The microframes β€” binary relations reified as their own frames, each with exactly two arguments. See Microframes for what these are and why they exist.
@class Frames that exist purely to represent a DUL class inside FNBr's own frame inventory, rather than to be evoked by any lexical unit.

Frames belonging to another dimension entirely

Namespace What it profiles
@domain Frames belonging to the domain dimension's own coverage taxonomy β€” an area of human experience (cooking, football, law) rather than a kind of structure. Carried here only because every frame needs some namespace value.
@pragmatic Frames about discourse- and interaction-level meaning, rather than about propositional content.

Why these last several are kept as separate categories rather than merged into one. They share only a negative fact β€” none of them is a view over an event β€” and a shared negative isn't itself a real category. @structural frames provide abstract scaffolding other frames lean on; @microframe is the relation inventory that scaffolding is wired together with; @class exists purely to represent DUL's own classes inside the frame inventory; @domain belongs to an entirely different dimension of the resource, and unlike the others, it does have lexical units attached to it. Collapsing distinct facts into one shared bucket just because none of them is eventive would throw away exactly the distinctions that make each one useful on its own.

Situations#

Recall from Introduction that DUL separates an Event β€” something that occurs, with one stable identity β€” from a Situation, a particular contextualized view over that event. DUL itself already recognizes several named kinds of Situation, and it turns out that FNBr's seven eventive namespaces line up with exactly this idea: each one names a characteristic kind of view, not a different kind of event. This is also the concrete, structural reason the seven stay independent namespace values rather than collapsing into @eventive: a namespace value can carry its own link to a DUL class (the same mechanism a frame, an FE, or an LU uses), so keeping each of the seven as its own row is what makes it possible for each to anchor its own Situation class in the first place. Collapse them into one @eventive value and there is only one row left to hang seven different classes on.

The now-retired @condition namespace never needed a Situation-class mint of its own β€” it grounded in Attributes, the same static schema @attribute grounds in, differing only by one ordinary relation rather than by aspect. That lighter weight is exactly why folding it into @stative was a coarsening rather than a category error: @stative's minted StativeSituation class now covers the resultant reading too, accepted as a legitimate (if coarser) Situation-view in its own right β€” see Stative's merge note for the reasoning.

Two frames can describe the very same real-world happening β€” JoΓ£o quebrou o vaso ("JoΓ£o broke the vase") and o vaso quebrou ("the vase broke") β€” while taking two different views of it: one foregrounding the breaker, one foregrounding the result. Under DUL's own logic, that's one Event, read under two different Situations. It's exactly this insight that lets each of the seven eventive namespaces connect outward to its own named DUL Situation class, rather than staying an FNBr-only label with no wider meaning:

Namespace Characteristic view Connects to
@change An entity comes to be in a new condition β€” a resulting state, or a directed shift along some dimension. Identified with DUL's own Transition β€” "a situation of change between states" is exactly DUL's own definition, so no new class is minted.
@agentive An Agent (intentional) or Cause (non-intentional) brings something about. A minted AgentiveSituation class.
@undergoing A Patient is affected by, exposed to, or subjected to something instigated externally. A minted UndergoingSituation class β€” the declared converse of the agentive view.
@experiential A sentient participant β€” an experiencer or a cognizer β€” undergoes a mental, perceptual, or attitudinal event. A minted ExperientialSituation class.
@phenomenon A bare occurrence, with no agent, no cause, and no experiencer β€” read as a single, punctual happening. A minted PhenomenonSituation class.
@process An extended occurrence made up of many sub-events, read as a whole β€” a procedure, a history, an ongoing course of events. A minted ProcessSituation class (its procedural subtype identified with DUL's own WorkflowExecution).
@stative A condition tied to a force, in either tense β€” a posture maintained, a state sustained by some ongoing force, or a condition a now-spent force left behind. A minted StativeSituation class β€” the sibling of Transition: force held in balance or already resolved, rather than mid-resolution.

Two of these deserve a short additional note, because it's easy to reach for the wrong comparison. Agentive and Phenomenon frames are not classified by which participants the underlying event actually had β€” DUL already has classes for that (an event with an agent versus one without), but those classify the event itself. What the eventive namespaces classify instead is what the frame's own description chooses to profile β€” which is exactly why o vaso quebrou and JoΓ£o quebrou o vaso can be, and are, treated as the same underlying event read two different ways, rather than as two events that happen to look similar.

Stative is narrower than it might first appear, but along one axis only. A frame only belongs here if a force is genuinely on record, in some tense β€” either being held in place against change right now (a posture sustained, a state actively maintained), or having produced a condition it no longer holds ("the door is broken", ← quebrar, force spent but on record). A frame that states a plain, unforced property with no force ever, in either tense ("the door is red") belongs instead in @attribute. A frame stating a bare relation belongs in @relational. Neither of those two is @stative, and mixing either in would blur the one real boundary this namespace has to hold β€” some force on record, at some point, vs. none at all. See Stative for how this boundary was arrived at β€” the namespace's documented scope was first pulled back to a force-maintained-only core (excluding scenarios, plain properties, resultant conditions, and bare relations that had accumulated in it), then deliberately widened back out to include the resultant-condition reading once a separate @condition namespace for that reading proved not to earn its keep as its own category.

Not every namespace pair that looks like a perspective alternation actually is one. @experiential and @process are each minted on a structural fact β€” constitutive sentience, and a genuinely graduated middle, respectively β€” rather than on a foregrounding choice, so a frame with that structural fact grounds there regardless of which participant its bindings happen to trace. A frame with a constitutively sentient participant is always @experiential, never optionally @change or @agentive; a frame with a graduated ground is always @process, never optionally @phenomenon.

Perspective pairs#

Some namespace pairs, by contrast, genuinely are two Situations profiling the same underlying Event. AGENTIVE, UNDERGOING, and CHANGE are each their own schema object in the conceptual dimension β€” independent siblings minted directly over EVENT, rather than profiles over one shared grounding the way they used to be β€” and Phenomenon's own grounding, OCCURRENCE, has been retired outright, folded into bare EVENT itself. None of that changes the ontological story here: three separate conceptual-layer grounding targets can still be, and still are, three DUL Situations over one Event, exactly the way three profiles over one shared target used to be β€” the Situation-class question is about what kind of view a frame takes, not about how the conceptual dimension happens to implement recording that view underneath. A frame in one of these pairs is distinguished from its partner by which schema it grounds in and what its own description foregrounds β€” judged by a human, and the model must therefore never auto-flag a frame merely because it could also fit the partner namespace:

Pair Distinguished by
Agentive ↔ Change is the Agent/Cause profiled? (subject = causer vs. affected entity) β€” the causative/change alternation
Agentive ↔ Undergoing is the causer profiled (Agentive) or the undergoer (Undergoing)? β€” a semantic profiling choice, independent of grammatical voice
Undergoing ↔ Change is an external causer inherent but backgrounded (Undergoing) or suppressed / spontaneous with the result-state profiled (Change)? β€” the passive/anticausative contrast
Change ↔ Phenomenon is the resultant state profiled (Change) or the occurrence (Phenomenon)?
Agentive ↔ Change (motion) is manner / activity profiled (Agentive) or a directed path (Change, motion subtype)?

The alternation is real and expected; recording it here at the level of the namespaces means the evaluation tooling treats partner-namespace membership as legitimate, not as an error to flag.

Scenarios#

It's worth flagging one thing explicitly, because the two are easy to confuse: Scenario is not a namespace value. It's a separate frame type, marking a frame that scaffolds together a more complex scene β€” one that might decompose into ordered sub-phases, or that might support two or more alternative construals of the same participants, or both at once. A frame carrying the Scenario type still has its own namespace, chosen the ordinary way, based on what the scenario itself is about β€” an obligation scenario, for instance, sits comfortably in @stative, while a commerce scenario sits in @agentive. Scenario and namespace are genuinely independent facts about a frame, the same way Domain is independent of namespace too: a single frame can be a scenario, sit in a particular namespace, and belong to a particular domain, all at once and all without any tension between the three.

Modality is cross-cutting, not a namespace#

There is no @modal namespace, by deliberate decision. Modality (possibility, probability, necessity, obligation, permission, capability) is a feature that cuts across namespaces, not a namespace of its own. Inspection of the candidate frames shows they do not form one class β€” they distribute by modal flavor (epistemic / deontic / dynamic):

Modal flavor Senser in core? Routes to Example frames
Epistemic β€” likelihood of a proposition No (predicated of a State_of_affairs) @attribute (modal-attribute sub-kind, see below) Possibilidade, Probabilidade
Epistemic β€” a thinker's confidence Yes (Cognizer required) @experiential (cognition) Certeza (its definition requires the #Pensador)
Deontic β€” obligation, as a scenario n/a frame type Scenario (namespace @stative) Obligation_scenario
Deontic β€” imposing a duty Yes (implicit imposer acts) @agentive Impor_obrigaΓ§Γ£o
Deontic β€” obligation holding of a party No @stative Ser_obrigado, Ser_obrigatΓ³rio (profiling alternation)
Dynamic β€” capability/disposition of an entity No (predicated of an Entity) @attribute Capacidade_aΓ§Γ£o, Capacidade_volume

Two consequences:

  1. Deontic modality decomposes by perspective into @agentive (imposing) and @stative (the obligation holding), bound together by a Scenario frame (Obligation_scenario) β€” using the same distinctions the event model already uses. A @modal namespace would compete with these and force an arbitrary choice; the perspective decomposition is cleaner and is recorded as a perspective set over the scenario.

    Obligation_scenario itself sits in @stative, which is worth revisiting: a scaffold binding an @agentive and a @stative perspective arguably takes neither view itself, and a non-perspectivized scaffold may want a different namespace than the perspective it scaffolds.

  2. The only residue without a pre-existing home is Senser-less epistemic predication of a proposition (Group 1: Possibilidade, Probabilidade). This is a narrow class and is housed in @attribute, distinguished from ordinary entity-attributes by the bearer's semantic type:

    @attribute sub-kind Bearer (semantic type) Examples
    Entity-attribute Entity inteligΓͺncia, cor, tamanho, Capacidade_volume
    Modal-attribute State_of_affairs Possibilidade, Probabilidade

    The semantic-type layer carries this distinction; no new namespace is needed. Revisit only if the modal-attribute class grows large enough to justify the overhead β€” current evidence (two frames) says it will not.