wiki:SchemaCat

Responsible for this page: Menzo Windhouwer?. Content checked: see last modified date.

Purpose

The purpose of this page is to collect relevant information about SCHEMAcat.

Project: SCHEMAcat

The schema registry, aka SCHEMAcat, is a store for resource schemas and their metadata.


Contents

  1. Project: SCHEMAcat
    1. Contents
    2. People
    3. Status
    4. Functionality
    5. Service dependencies
    6. Getting code
    7. System Requirements
    8. Building and Deploying
    9. Tickets


People


Status

Alpha available: http://lux17.mpi.nl/schemacat


Functionality

  • Shibboleth based access and user management (for upload and maintenance)
  • Upload a schema (in any textual form)
    • Enter some metadata
  • Maintain the metadata
  • Share the schema
  • Publish the schema
    • a PID gets assigned to the schema
  • Browse/search the schema registry
  • Version and lifecycle management
  • (Interface with RELcat)
  • (Schema type specific functionality, e.g., instance validation)

Service dependencies

SCHEMAcat is envisioned to interface with other Web Services and CLARIN registries trough their REST API:


Getting code

  • You can browse the code here
  • Check out SCHEMAcat code from: https://svn.clarin.eu/cats/SCHEMAcat
    • You will also need our 'SLOOT' (TOOLS) module for NetKernel 5 from : https://svn.clarin.eu/cats/shared/urn.org.isocat.sloot/trunk

System Requirements


Building and Deploying

NetKernel

  1. Download the 1060 NetKernel 5.2.1 Standard Edition Developer Kit distribution JAR file from the NetKernel Portal.
  2. Boot NetKernel from the JAR file.
    #java -jar 1060-NetKernel-SE-5.2.1.jar
    
  3. Point your browser to http://localhost:1060 to access the NetKernel management panels.
  4. Select the 'Install' tab, the 'Install NetKernel' service and then follow the directions.
    Initially NetKernel boots directly from its distribution JAR and can be explored immediately. Use the installation service to create a custom installation of NetKernel on your disk.
  1. With NetKernel installed on your computer, use the Apposite repository to obtain updates to the installed modules, this will ensure you are running with the latest updates and capabilities. To access 'Apposite', select the 'Apposite' tab and then the 'Apposite' client service.
  2. Download and install the missing modules used by SCHEMAcat which are not installed by default:
    • html5-frameworks
    • saxon-xml
    • lang-javascript



SLOOT NetKernel module

  1. Checkout the SLOOT NetKernel module, which is an in-house developed module with generic NetKernel tools, from cats/shared into an own folder
  2. Add the following (adapt the path to point to your SLOOT source directory) to the end (before </modules>) of path-to-1060-NKSEDK-5.2.1/etc/modules.xml to enable this module
    <module>/path-to-SLOOT/src/urn.org.isocat.sloot/</module>
    



SCHEMAcat NetKernel modules

  1. Checkout the 5 SCHEMAcat NetKernel modules, from https://svn.clarin.eu/cats/SCHEMAcat/trunk into own folders.
    • urn.org.isocat.schemacat.interface.rest
    • urn.org.isocat.schemacat.site
    • urn.org.basex.rest
    • urn.org.isocat.schemacat.access.data
    • urn.org.isocat.schemacat.admin
  2. Add the following (adapt the path to point to your SCHEMAcat source directory) to the end (before </modules>) of path-to-1060-NKSEDK-5.2.1/etc/modules.xml to enable this module
    <module>/path-to-SCHEMAcat/src/urn.org.isocat.schemacat.interface.rest/</module>
    <module>/path-to-SCHEMAcat/src/urn.org.isocat.schemacat.site/</module>
    <module>/path-to-SCHEMAcat/src/urn.org.isocat.schemacat.admin/</module>
    <module>/path-to-SCHEMAcat/src/urn.org.basex.rest/</module>
    <module>/path-to-SCHEMAcat/src/urn.org.isocat.schemacat.access.data/</module>
    



SCHEMAcat BaseX database

SCHEMAcat data is expected to be loaded into a BaseX collection named SCHEMAcat by default. Menzo has created a little script to help with that: https://svn.clarin.eu/cats/SCHEMAcat/trunk/various/scripts/create-BaseX-database.bxs

  1. Checkout the 'data' folder containing the initial SCHEMAcat data, from https://svn.clarin.eu/cats/SCHEMAcat/trunk
  2. Edit the script file 'create-BaseX-database.bxs' and adapt the path inside pointing it to your checked-out 'data' folder.
  3. Run the script with basexclient -c.
  4. Configure the file /path-to-SCHEMAcat/urn.org.isocat.schemacat.access.data/etc/BaseXConfig.xml to use your local BaseX configuration. i.e.
    • REST interface host.
    • REST interface port.
    • REST interface path.
    • Collection name ('SCHEMAcat' if the create-BaseX-database.bxs script was used to bootstrap the database).
    • BaseX username.
    • BaseX password.

The last step can also be achieved in the SCHEMAcat control panel in the NetKernel backend:

  • load http://localhost:1060/
  • select Extras from the top menu bar
  • select SCHEMAcat from the additional control panel
  • configure the BaseX access and press save


If you want to refresh the database you can execute the following commands in the basexclient"

  • DROP DATABASE SCHEMAcat
  • set CREATEFILTER *.schemacat
  • set UPDINDEX ON
  • set FTINDEX ON
  • CREATE DB SCHEMAcat /path-to-the-SCHEMAcat-data-directory

Run SCHEMAcat

With both NetKernel and BaseX running in your machine, access SCHEMAcat by surfing to:

http://localhost:8080/schemacat/site/index.html


Tickets

List of all open tickets for this component:

Ticket Summary Version Type Priority Owner Reporter
No tickets found

Last modified 10 years ago Last modified on 05/09/14 13:21:35