Reference
This area is dedicated for more information on various areas in the registry and some tips and tricks in certain areas. Please read the eXist guide as well.
Properties
Here is a more detailed list of each property in the registry. There are a lot of properties and the majority you will not ever change. But they are there for you to tweak. See following
sections on other certain ideas on manipulating the properties to help you in certain objectives you wish to do with the registry.
Below are a list of all the properties of the registry, most are custom and require no changing, but you might want to have a read through in case of another version of the registry schema or small tweaks you wisht to perform.:
- reg.amend.authorityid -- The Main Authority ID for this Registry (Authority ID used for the Registry type)
- xmldb.uri --
The XMLDB server location url. By default it is set to use the internal eXist db.
You may set it to xmldb:exist://host:port/exist/xmlrpc for external eXist db. e.g. xmldb:exist://localhost:8080/exist/xmlrpc.
In general you can switch to another db that supports xmldb but this is untested read more below on that.
- xmldb.driver --
The XMLDB driver to be the registered xml database.
- xmldb.query.service --
What type of query service, XQueryService or XPathQueryService.
- xmldb.admin.user --
The user used to create Resources or collections, and shutdown the internal eXist database if it is internally being ran.
- xmldb.admin.password --
The admin password used to create Resources or collections, and shutdown the internal eXist database if it is internally being ran.
- xmldb.query.user --
The user used to create Resources or collections, and shutdown the internal eXist database if it is internally being ran.
- xmldb.query.password --
The query password used to create Resources or collections, and shutdown the internal eXist database if it is internally being ran.
- reg.amend.defaultversion --
The default registry version used, May be overriden on updates and queries based on vr namespace.
- reg.amend.validate --
Have validation on or off.
- reg.amend.quiton.invalid --
Quit on validation; if a document being updated is invalid then don't update it.
- reg.amend.returncount --
The maximum number of results to return from queries.
- reg.amend.harvest --
Does this registry need to do harvesting.
- reg.oaipublish.0.9 --
The url to the oai publishing url for 0.9, default is set to astrogrid servlet, but is not required to use.
- reg.amend.oaipublish.0.10 --
The url to the oai publishing url for 0.10, default is set to astrogrid servlet, but is not required to use.
- reg.custom.exist.configuration --
Point to another exist configuration file on your disk hence a different data directory as well. (only for internal db use). This is recommended if you want to use the internal database, but not have the configuration file and data directory of eXist db with the war file so undeploying/updating wars will not lose data. Also use if servlet container does not unpack war file.
- reg.custom.harvest.interval_hours --
Number of hours between harvest (if harvest is enabled)
- reg.amend.identify.repositoryName --
Used for the Identify verb in OAI. The repository Name.
- reg.amend.identify.adminEmail --
Used for the Identify verb in OAI. The administration Email of this OAI repository.
- reg.custom.identify.earliestDatestamp --
Used for the Identify verb in OAI. The earliest date stamp for records/metadata being published.
- reg.custom.updatestylesheet.0.9 --
(Advanced) Specify stylesheets to be used on updates for particular versions.
- reg.custom.harveststylesheet.0.9 --
(Advanced) Specify stylesheets to be used on harvest updates for particular versions.
- reg.custom.harveststylesheet.0.10 --
(Advanced) Specify stylesheets to be used on harvest updates for particular versions.
- reg.custom.keywordxpaths.0.9 --
(Advanced) Specify xpath for keyword search based on various versions in the registry.
- reg.custom.keywordxpaths.0.10 --
(Advanced) Specify xpath for keyword search based on various versions in the registry.
- reg.custom.identifier.hasauthorityid.0.9 --
(Advanced) Does the Identifier split up with an AuthorityID element based on version in registry.
- reg.custom.rootNode.default --
(Advanced) The default root node for elements in the Registry. Can override on various versions in the registry.
- reg.custom.rootNode.0.10 --
(Advanced) The default root node for elements in the Registry. Can override on various versions in the registry.
- reg.custom.rootNode.0.9 --
(Advanced) The default root node for elements in the Registry. Can override on various versions in the registry.
- reg.custom.declareNS.0.9 --
(Advanced) Declare the namespaces used on the registry, based on registry versions.
- reg.custom.declareNS.0.10 --
(Advanced) Declare the namespaces used on the registry, based on registry versions.
How to Manage other authority id's
Normally you just need your main authority id which is your default authority id being managed, but sometimes you may need to
manage more, such as other departments, instead of setting up another registry just simply manage an authority id for another department. There
are two ways of doing this:
1.) The preferred way is to add a "Authroity Type" xml resource, once added it will then automatically change your Registry Type xml entry to put this as a managed
authority you can use.
2.) The easy quick way is go and edit your main Registry Type xml entry to add more {managedAuthority} elements.
Extend Registry
Lets say you needed to extend some of the xml resources, meaning add your own namespaces with your own element extensions. Well you can add this already now, you won't be able to validate
the xml though, but you can add it into the registry. Now for querying on it though you will need to change the property "reg.custom.declareNS.0.10" (if your on an older 0.9 version then change that one. In
here add your declare namespace for your extensions. Now you are able to query on your data.
Unfortunately Tomcat 5.0 versions have an error and does not allow you to update through the Administration GUI such a long value its max is 70 characters. You
will need to change it manually in {tomcat install}/conf/Catalina/localhost/{context name}.xml in there you can find the value and change it manually, does not require a restart.
Another XMLDB
This has not been tested and assumes you are an expert on this other xml database such as xhive, xindice, and others. First it must support
the xmldb api. And you will need to change the "xmldb.uri" and the "xmldb.driver" to the proper settings. A final note when something is
performed on the database such as opening a collection it always has "/db" as part of the path hence opening a collection for updating for version 0.10 would open
"xmldb:exist:///db/astrogridv0_10" hence you must make sure "/db" can be concatenated with your uri. Also read the "changing queries" in the next section, most likely you will
need to change the queries up to conform to your xml database.
Changing Queries
You might find a more powerfull way of doing xqueries or decide to experiment on the xqueries on your own. Currently not located in the JNDI/web.xml piece, but located in the file
"astrogrid.properties" in the WEB-INF/classes directory under your {context name} directory. You will find a set of internal queries that you may change. Also in the WEB-INF/classes/xsl directory
you will find the xsl stylesheets that take a ADQL (xml) and convert it to XQuery.