Opened 13 years ago
Closed 13 years ago
#620 closed defect (fixed)
CSW Transaction Update operation fixes to be according CSW spec
Reported by: | josegar74 | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | v2.6.5 |
Component: | Metadata standards | Version: | v2.6.3 |
Keywords: | Cc: |
Description
Actual implementation of Transaction Update requires full update of metadata record not supporting updates of individual metadata properties.
Attached patch to review with these changes:
- Update of full metadata doesn't require the Csw:Constraint
- Support for csw:RecordProperty to update individual metadata properties. The properties can be referenced by Xpath or by ISO property name.
For the ISO property name, in the file config-csw.xml to the queryable properties has been added the xpath property that represents (to check better about all mappings)
Attachments (2)
Change History (6)
by , 13 years ago
Attachment: | CSW_Transaction_Update_method.patch added |
---|
comment:1 by , 13 years ago
comment:2 by , 13 years ago
Thanks Simon for feedback. I'll check to fix about namespaces.
About the hardcoded xpaths in config_csw.xml file, maybe should be change a bit so can be specified the xpath for each profile. Will check how to modify this.
by , 13 years ago
Attachment: | CSW_Transaction_Update_method1.patch added |
---|
comment:3 by , 13 years ago
Updated patch with suggestions from Simon and allowing to configure in config-csw.xml
the xpath for each ISO property depending on metadata schema
comment:4 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Hi Jose,
Nice enhancement!
Just checking: Seems like the xpaths can be specified in the propertyName (line 367-370)? This would be good as otherwise all profiles will be broken by the hardcoded xpaths in the config file?
Also, instead of hardcoding the namespaces in the code (HashMap mapNs eg. lines 284-288), can you get the namespaces for the record to be updated from the MetadataSchema object which is available for a metadata record from the SchemaManager? That way the schema will determine the namespaces.
There are also some xpath utils in Jeeves.utils.Xml which might help too.
Cheers, Simon