A Document to add in a VSMIndex

Introduced properties

init defaultinit(title: String, uri: String, terms_count: Vector)

vsm :: Document :: defaultinit

fun terms_count: Vector

vsm :: Document :: terms_count

Count of all terms found in the document
protected fun terms_count=(terms_count: Vector)

vsm :: Document :: terms_count=

Count of all terms found in the document
fun terms_frequency: Vector

vsm :: Document :: terms_frequency

Frequency of each term found in the document
protected fun terms_frequency=(terms_frequency: Vector)

vsm :: Document :: terms_frequency=

Frequency of each term found in the document
fun tfidf: Vector

vsm :: Document :: tfidf

Term frequency–Inverse document frequency for each term
protected fun tfidf=(tfidf: Vector)

vsm :: Document :: tfidf=

Term frequency–Inverse document frequency for each term
fun title: String

vsm :: Document :: title

Document title
protected fun title=(title: String)

vsm :: Document :: title=

Document title
fun uri: String

vsm :: Document :: uri

Document URI
protected fun uri=(uri: String)

vsm :: Document :: uri=

Document URI

Redefined properties

redef type SELF: Document

vsm $ Document :: SELF

Type of this instance, automatically specialized in every class
redef fun to_s: String

vsm $ Document :: to_s

User readable representation of self.

All properties

fun !=(other: nullable Object): Bool

core :: Object :: !=

Have self and other different values?
fun ==(other: nullable Object): Bool

core :: Object :: ==

Have self and other the same value?
type CLASS: Class[SELF]

core :: Object :: CLASS

The type of the class of self.
type SELF: Object

core :: Object :: SELF

Type of this instance, automatically specialized in every class
protected fun class_factory(name: String): CLASS

core :: Object :: class_factory

Implementation used by get_class to create the specific class.
fun class_name: String

core :: Object :: class_name

The class name of the object.
init defaultinit(title: String, uri: String, terms_count: Vector)

vsm :: Document :: defaultinit

fun get_class: CLASS

core :: Object :: get_class

The meta-object representing the dynamic type of self.
fun hash: Int

core :: Object :: hash

The hash code of the object.
init init

core :: Object :: init

fun inspect: String

core :: Object :: inspect

Developer readable representation of self.
protected fun inspect_head: String

core :: Object :: inspect_head

Return "CLASSNAME:#OBJECTID".
intern fun is_same_instance(other: nullable Object): Bool

core :: Object :: is_same_instance

Return true if self and other are the same instance (i.e. same identity).
fun is_same_serialized(other: nullable Object): Bool

core :: Object :: is_same_serialized

Is self the same as other in a serialization context?
intern fun is_same_type(other: Object): Bool

core :: Object :: is_same_type

Return true if self and other have the same dynamic type.
intern fun object_id: Int

core :: Object :: object_id

An internal hash code for the object based on its identity.
fun output

core :: Object :: output

Display self on stdout (debug only).
intern fun output_class_name

core :: Object :: output_class_name

Display class name on stdout (debug only).
fun serialization_hash: Int

core :: Object :: serialization_hash

Hash value use for serialization
intern fun sys: Sys

core :: Object :: sys

Return the global sys object, the only instance of the Sys class.
fun terms_count: Vector

vsm :: Document :: terms_count

Count of all terms found in the document
protected fun terms_count=(terms_count: Vector)

vsm :: Document :: terms_count=

Count of all terms found in the document
fun terms_frequency: Vector

vsm :: Document :: terms_frequency

Frequency of each term found in the document
protected fun terms_frequency=(terms_frequency: Vector)

vsm :: Document :: terms_frequency=

Frequency of each term found in the document
fun tfidf: Vector

vsm :: Document :: tfidf

Term frequency–Inverse document frequency for each term
protected fun tfidf=(tfidf: Vector)

vsm :: Document :: tfidf=

Term frequency–Inverse document frequency for each term
fun title: String

vsm :: Document :: title

Document title
protected fun title=(title: String)

vsm :: Document :: title=

Document title
abstract fun to_jvalue(env: JniEnv): JValue

core :: Object :: to_jvalue

fun to_s: String

core :: Object :: to_s

User readable representation of self.
fun uri: String

vsm :: Document :: uri

Document URI
protected fun uri=(uri: String)

vsm :: Document :: uri=

Document URI
package_diagram vsm::Document Document core::Object Object vsm::Document->core::Object

Parents

interface Object

core :: Object

The root of the class hierarchy.

Class definitions

vsm $ Document
# A Document to add in a VSMIndex
class Document

	# Document title
	var title: String

	# Document URI
	var uri: String

	# Count of all terms found in the document
	#
	# Used to compute the document `terms_frequency`.
	var terms_count: Vector

	# Frequency of each term found in the document
	#
	# Used to match the document against the `VSMIndex::inverse_doc_frequency`.
	var terms_frequency: Vector is lazy do
		var all_terms = 0.0
		for t, c in terms_count do all_terms += c

		var vector = new Vector
		for t, c in terms_count do
			vector[t] = c / all_terms
		end
		return vector
	end

	# Term frequency–Inverse document frequency for each term
	#
	# A high weight in tf–idf is reached by a high term frequency
	# (in the given document) and a low document frequency of the term in the
	# whole collection of documents
	var tfidf: Vector = terms_count is lazy

	redef fun to_s do return "{title}"
end
lib/vsm/vsm.nit:337,1--373,3