''Responsible for this page: [wiki:andmor André Moreira]. Content checked: see last modified date.'' {{{ #!html

Purpose

}}} The purpose of this page is to collect relevant information about SCHEMAcat. = Project: SCHEMAcat = The schema registry, aka SCHEMAcat, is a store for records with information about resource schemas. ---- == Contents == [[PageOutline(1-2, , inline)]] ---- == People == * [[mwindhouwer|Menzo Windhouwer]] * [[andmor|André Moreira]] ---- == Status == Alpha available: http://lux13.mpi.nl/schemacat ---- == Functionality == * Shibboleth based access and user management (for upload and maintenance) * Upload a schema (in any textual form) * Assign a PID (EPIC API) * Enter some metadata (CMDI schema) * Maintain the metadata * Download a schema * Browse the schema registry * Version management * (Interface with RELcat and CMDI Registry) ---- == Service dependencies == SCHEMAcat is envisioned to interface with other webservices and CLARIN registries trough their REST API: * [[http://corpus1.mpi.nl/pid/service/|MPI handle server - PID management]] * [[ISOcat|Data Category Registry (ISOcat)]] * [[RelationRegistry|Relation registry (RELcat)]] * [[ComponentRegistryAndEditor|CMDI component registry and editor]] ---- == Getting code == * You can browse the code [source:cats 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 == * [[http://java.oracle.com/|Java 5]] * [[http://download.netkernel.org/nkse/|1060 NetKernel 5.1.1 Standard Edition Developer Kit]] and extra !NetKernel modules: * !NetKernel 5 'html5-frameworks' module. * !NetKernel 5 'xml-saxon' module. * !NetKernel 5 'lang-javascript' module. * [[http://basex.org/products/download/all-downloads/|BaseX 7.6]] ---- == Building and Deploying == '''''!NetKernel''''' 1. Download the [[http://download.netkernel.org/nkse/|1060 NetKernel 5.1.1 Standard Edition Developer Kit]] distribution JAR file from the !NetKernel Portal. 1. Boot !NetKernel from the JAR file. {{{ #java -jar 1060-NetKernel-SE-5.1.1.jar }}} 3. Point your browser to http://localhost:1060 to access the !NetKernel management panels. 3. Select the 'Install' tab, the 'Install !NetKernel' service and then follow the directions.[[BR]] 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. 5. 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. 5. Download and install the missing modules used by SCHEMAcat which are not installed by default: * html5-frameworks * saxon-xml * lang-javascript [[BR]][[BR]] '''''SLOOT !NetKernel module''''' 1. Checkout the SLOOT !NetKernel module, which is an in-house developed module with generic !NetKernel tools, from [[https://svn.clarin.eu/cats/shared/urn.org.isocat.sloot/trunk|cats/shared]] into an own folder 1. Add the following (adapt the path to point to your SLOOT source directory) to the end (before {{{}}}) of {{{path-to-1060-NKSEDK-5.1.1/etc/modules.xml}}} to enable this module {{{ /path-to-SLOOT/src/urn.org.isocat.sloot/ }}} [[BR]][[BR]] '''''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 1. Add the following (adapt the path to point to your SCHEMAcat source directory) to the end (before {{{}}}) of {{{path-to-1060-NKSEDK-5.1.1/etc/modules.xml}}} to enable this module {{{ /path-to-SCHEMAcat/src/urn.org.isocat.schemacat.interface.rest/ /path-to-SCHEMAcat/src/urn.org.isocat.schemacat.site/ /path-to-SCHEMAcat/src/urn.org.isocat.schemacat.admin/ /path-to-SCHEMAcat/src/urn.org.basex.rest/ /path-to-SCHEMAcat/src/urn.org.isocat.schemacat.access.data/ }}} [[BR]][[BR]] '''''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]] 1. Edit the script file 'create-BaseX-database.bxs' and adapt the path inside pointing it to your checked-out 'data' folder. 1. Run the script with ''basexclient -c''. 1. 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. [[BR]] '''''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: [[TicketQuery(status=accepted|assigned|new|reopened,component=SCHEMAcat,order=priority,format=table,version=SCHEMAcat-beta|SCHEMAcat-1.0|SCHEMAcat-1.1,col=summary|version|type|priority|owner|reporter)]]