Registry Reference
This area is dedicated for more information on various areas in the registry and some tips and tricks in certain areas.
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 wish to perform. These are either a JNDI property (environment entry) or in the WEB-INF/classes/astrogrid.properties in your webapp/context:
- 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.admin.user --
The user used to create Resources or collections, and startup/shutdown the internal eXist database if it is internally being ran.
- xmldb.admin.password --
The admin password used to create Resources or collections, and startup/shutdown the internal eXist database if it is internally being ran.
- xmldb.query.user --
The user used to query.
- xmldb.query.password --
The query user password.
- server.cache -- Default is 'false' set to 'true' to turn on server side caching, not much gain except for workshop
situations or stress testing.
- server.cache.resource.count -- Default 100, what is the number of Resources returned from the that must be reached to store in the cache.
- reg.amend.returncount --
The maximum number of results to return from queries except for the main XQuery interface that accepts straight XQuery and has no limit.
- reg.custom.restrict.ipaddresses
The ip addresses restricted for WebDav and XMLRPC servlet. You may use expressions as well ex: 127.* by default it is set to 127.0.0.1.
- reg.custom.restrict.ipaddresses.updates
The ip addresses restricted for web service Update calls normally from other components. You may use expressions as well ex: 127.* by default it is set to 127.0.0.1.
- reg.custom.loggingdirectory
The logging directory where logs are placed.
- reg.amend.harvest --
Does this registry need to do harvesting.
- reg.amend.oaipublish.1.0 --
The url to the oai publishing url for 1.0, default is set to astrogrid servlet, needs to be changed if your context is not astrogrid-registry.
- 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. Ignored if xmldb.uri is pointed to an exteranl eXist db.
- 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.keywordxpaths.1.0 --
(Advanced) Specify xpath for keyword search based on various versions in the 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.declareNS.1.0 --
(Advanced) Declare the namespaces used on the registry, based on registry resource version 1.0.
- several xquery properties that can be customized.
- reg.custom.harvest.set-{main authority id} -- allows you to harvest only a particular set for a registry. By default ivo_managed set is what is used.
- Finaly various properties used in the OAI servlet and should not need changing.
Extend the XML Resources and Schema
Lets say you needed to extend some of the xml resources, meaning add your own namespaces with your own element extensions. You can already do this by default, be sure your xml instance documents has schemaLocations or what is needed
to make it valid xml. If your schema uses qualified namespace elements which is frowned upon in the 1.0 version, but if used you will need to change the property reg.custom.declareNS.1.0 (see above properties).
This property allows you to declare a namespace with a prefix for queries. This property is not used for the XQuery search though because you declare your full xquery with namespaces on this interface method.
Changing the XQueries
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 environment entries 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. These internal queries are for the Search and KeywordSearch along with OAI queries that can occur. It is not
used for the XQuery interface because this method you can define your own XQuery.