[pycsw-devel] CSW 2.0.2 - APISO 1.0 Implementation

Angelos Tzotsos gcpp.kalxas at gmail.com
Wed Mar 23 18:37:03 EDT 2011


Hi,

As I am trying to find the best strategy to keep the original code of dc 
core intact and at the same time to add all the apiso code into separate 
files and classes.

At this point, I have added a apiso module that includes a class named 
iso. When the Server _init_ fuction is called, a check is made to the 
configuration file to test if apiso profile is active. Then, through a 
server.get_profile function, a profile sub-object is created under the 
server object containing the additional info needed (mappings, model 
additions, namespaces etc).

The original plan was to add specific functions in this profile object 
for specific requests (getcapabilities, etc).
Then, redirect by adding checks in front of the dc code to point to the 
new functions when needed. This way only few lines of code would be 
added to the initial code.

At that point I got the idea that perhaps the dc itself should be 
reshaped into a profile object, in order to have consistency, and leave 
the original code only with the csw server parts.

Now I see that apiso, can respond to core csw requests by mapping to dc 
core queryables when asked to.... which means recursiveness:  
server-->apiso profile-->server in case of dc.

Also the mapping has to be decided after parsing the request, so this 
seems to change things a bit.

Any ideas?

Regards,
Angelos

-- 
Angelos Tzotsos
Remote Sensing Laboratory
National Technical University of Athens
http://users.ntua.gr/tzotsos





More information about the Pycsw-devel mailing list