pub enum InformationStatus {
New,
Inferrable,
Evoked,
Unused,
}Expand description
Information status of a discourse entity.
Following Prince (1981) “Toward a Taxonomy of Given-New Information” and Strube’s (1998) hearer-old/hearer-new distinction.
§Hearer-Old vs Hearer-New
The key distinction is whether the entity is already in the hearer’s discourse model:
- Hearer-old:
Evoked,Unused,Inferrable— the hearer can identify the referent - Hearer-new:
New— introduces a new discourse entity
Hearer-old entities rank higher in the S-list because they are already salient to the hearer.
§Example
use anno::discourse::centering::InformationStatus;
// "the man" after "a man walked in" — evoked
assert!(InformationStatus::Evoked.is_hearer_old());
// "a dog" first mention — new
assert!(!InformationStatus::New.is_hearer_old());
// Evoked entities get salience boost
assert!(InformationStatus::Evoked.salience_boost() >
InformationStatus::New.salience_boost());Variants§
New
First mention, indefinite NP (“a man walked in”). Introduces a new entity to the discourse model.
Inferrable
First explicit mention but inferrable from context. E.g., “the door” after “John entered a room” — the room implies a door.
Evoked
Previously mentioned in discourse (“the man” referring back to “a man”). Most common status for anaphoric expressions.
Unused
Known from world knowledge or situational context. E.g., “the sun”, “the president” — identifiable without prior mention.
Implementations§
Source§impl InformationStatus
impl InformationStatus
Sourcepub const fn is_hearer_old(&self) -> bool
pub const fn is_hearer_old(&self) -> bool
Is this hearer-old? (Known or inferrable by hearer)
Sourcepub const fn salience_boost(&self) -> f64
pub const fn salience_boost(&self) -> f64
Salience boost for hearer-old entities.
Strube (1998): “hearer-old entities are ranked higher than hearer-new”
Trait Implementations§
Source§impl Clone for InformationStatus
impl Clone for InformationStatus
Source§fn clone(&self) -> InformationStatus
fn clone(&self) -> InformationStatus
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for InformationStatus
Source§impl Debug for InformationStatus
impl Debug for InformationStatus
Source§impl Default for InformationStatus
impl Default for InformationStatus
Source§fn default() -> InformationStatus
fn default() -> InformationStatus
Source§impl<'de> Deserialize<'de> for InformationStatus
impl<'de> Deserialize<'de> for InformationStatus
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<InformationStatus, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<InformationStatus, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
impl Eq for InformationStatus
Source§impl Hash for InformationStatus
impl Hash for InformationStatus
Source§impl PartialEq for InformationStatus
impl PartialEq for InformationStatus
Source§fn eq(&self, other: &InformationStatus) -> bool
fn eq(&self, other: &InformationStatus) -> bool
self and other values to be equal, and is used by ==.Source§impl Serialize for InformationStatus
impl Serialize for InformationStatus
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl StructuralPartialEq for InformationStatus
Auto Trait Implementations§
impl Freeze for InformationStatus
impl RefUnwindSafe for InformationStatus
impl Send for InformationStatus
impl Sync for InformationStatus
impl Unpin for InformationStatus
impl UnsafeUnpin for InformationStatus
impl UnwindSafe for InformationStatus
Blanket Implementations§
impl<T> Boilerplate for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more