Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

It is tempting to think of the models of the Servlet Context as equivalent to the unfiltered models of the Request. And in fact, they may represent the very same data. However, the unfiltered models in the Request go out of scope when the Request has been satisfied. As such, it is much easier to manage the resources required by these models. By contrast, the models of the Servlet Context never go out of scope until VIVO is shut down. Any resources such as database connections or processor memory are not easily reclaimed from these models.

Initializing the Models

When VIVO starts up, OntModel objects are created to represent the various data models. The configuration models are created from the datasource connection, usually to a MySQL database. The content models are created using the new RDFService layer. By default this also uses the datasource connection, but it can be configured to use any SPARQL endpoint for its data.

Some of the smaller models are "memory-mapped" for faster access. This means that they are loaded entirely into memory at startup. Any changes made to the memory image will be replicated in the original model.

Some of the models are initialized from files if they are found to be empty. Others load data from disk every time that VIVO starts. Still others combine these methods.

Initializing Content

Note

TBD - Mention the criteria, the file paths. Include the filegraph and other directories and files.

...

  • in Vitro, displayModelListViews.rdf
  • In VIVO, homePageDataGetters.n3, localeSelectionGUI.n3, vivoDepartmentQueries.n3, vivoListViewConfig.rdf, vivoSearchProhibited.n3

Display TBox

Name: http://vitro.mannlib.cornell.edu/default/vitro-kb-displayMetadataTBOX

Source: the application Datasource (MySQL database)

Every time, read /WEB-INF/ontologies/app/menuload/displayTBOX.n3 (old statements are not cleared)

DisplayDisplay

Name: http://vitro.mannlib.cornell.edu/default/vitro-kb-displayMetadata-displayModel

Source: the application Datasource (MySQL database)

Every time, read /WEB-INF/ontologies/app/menuload/displayDisplay.n3 (old statements are not cleared)

User Accounts

Name: http://vitro.mannlib.cornell.edu/default/vitro-kb-userAccounts

...

  • None in Vitro
  • In VIVO, geopolitical.ver1.1-11-18-11.individual-labels.rdf, vocabularySource-labels.n3

Every time, read the files in /WEB-INF/filegraph/abox, and create named models in the RDFService. Add them as sub-models to the base ABox.

  • In Vitro, none
  • In Vivo, academicDegree.rdf, continents.n3, dateTimeValuePrecision.owl, documentStatus.owl, geopolitical.abox.ver1.1-11-18-11.owl, us-states.rdf, vocabularySource.n3

inference ABox

Name: http://vitro.mannlib.cornell.edu/default/vitro-kb-inf

...

  • In Vitro, none
  • In VIVO, geopolitical-ver1.1-11-18-11-annotations.rdf, isDefinedBy-1.5-annotations.rdf, scires-1.5-annotations.rdf, vitro-0.7-annotations.rdf, vivo-core-1.5-annotations.rdf, vivo-core-1.5-labels_es_ES.n3

Every time, read the files in /WEB-INF/filegraph/tbox, and create named models in the RDFService. Add them as sub-models to the base TBox.

  • In Vitro, vitro-0.7.owl, vitroPublic.owl
  • In VIVO, geopolitical.tbox.ver1.1-11-18-11.owl, isDefinedBy-1.5.owl, scires-1.5.owl, vivo-bibo-1.5.owl, vivo-c4o-1.5.owl, vivo-core-1.5.owl, vivo-dcelements-1.5.owl, vivo-dcterms-1.5.owl, vivo-event-1.5.owl, vivo-fabio-1.5.owl, vivo-foaf-1.5.owl, vivo-pws-1.5.owl, vivo-skos-1.5.owl

inference TBox

Name: http://vitro.mannlib.cornell.edu/default/inferred-tbox

...

Source: union of base ABox and inference ABox

union TBox

Source: union of base TBox and inference TBox

base Full

Source: union of base ABox and base TBox

inference Full

Source: union of inference ABox and inference TBox

union Full

Source: union of union ABox and union TBox

The ModelAccess class

...