Data Loading in OLE

Data Loading in OLE happens via different sets of processes, some of which are internal to OLE and some are available as external APIs for clients to call. Depending on the types of data that needs to be ingested, different processes are used. 

 

Data TypeFormatProcessAPIs (http or RESTful)
Financial data for initial setup.xml & .csvLiquibase and Impex processes convert the data expressed in .xml and .csv and generate sql that then gets inserted by the OLE db process.NA
KIM Users, Roles, Responsibilities etc..csvLiquibase process takes the .csv and converts them into sql that gets inserted by the OLE db process.Rice APIs already exist for roles, creating entities,principals etc.. (Internal at the moment)
Locations.xml

Polling Service that polls specific directory for location xml files to be ingested. The directory paths are controlled by the following parameter(s)

<param name="locations.xml.root.location">${project.home}/locations</param>
<param name="locations.xml.pending.location">${locations.xml.root.location}/pending</param>


The poller polls every minute and picks up files and moves them to the loaded or problem directories as appropriate.

 

Class responsible:OleLocationsXMLPollerServiceImpl.java

Can be a RESTful API
Patrons.xml

Polling Service that polls specific directory for Patron xml files to be ingested. The directory paths are controlled by the following parameter(s)

<param name="patrons.xml.root.location">${project.home}/patrons</param>
<param name="patrons.xml.pending.location">${patrons.xml.root.location}/pending</param>


The poller polls every minute and picks up files and moves them to the loaded or problem directories as appropriate.

 

Class responsible:OlePatronsXMLPollerServiceImpl.java

Can be a RESTful API
Circulation Policies.xml

Polling Service that polls specific directory for circulation policies xml files to be ingested. The directory paths are controlled by the following parameter(s)

<param name="circ.xml.root.location">${project.home}/circulation-policies</param>
<param name="circ.xml.pending.location">${circ.xml.root.location}/pending</param>


The poller polls every minute and picks up files and moves them to the loaded or problem directories as appropriate.

 

Class responsible:OleCircPoliciesXMLPollierServiceImpl.java

 Can be a RESTful API
Bibliographic/Holdings/Items.xmlThere are batch processes by which bib/holdings/items can be imported via specific profile.

https://docs.google.com/a/kuali.org/document/d/1pbtM4y5aC-4rB_mY44FeArwmTWVu7fhP47FbpF6JPWo/edit?disco=AAAAAGc599E# (Section 8).

The section describes the various APIs that are available for importing bibs/holdings/items.

Continuing Orders???Can be RESTful API
Circulation Desks???Can be RESTful
Current Loan Status???RESTful
Maint. types data (loc levels, patron types etc)???RESTful

Operated as a Community Resource by the Open Library Foundation