Project

General

Profile

Task #864

Story #912: Fix known TODOs in the metacat code base

Metacat not downloading urls listed in xml_catalog table

Added by Robert Waltz about 14 years ago. Updated about 14 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Chad Berkley
Category:
Metacat
Target version:
Start date:
Due date:
% Done:

100%

Milestone:
Product Version:
*
Story Points:
Sprint:

Description

My understanding is that schemas that have a system_id with an URL should have their schema downloaded from the URL instead of looking for their schema in knb/schema folder.

However, and entry that is created from this insert statement:

INSERT INTO xml_catalog (entry_type, public_id, system_id) VALUES ('Schema', 'http://www.loc.gov/METS/', 'https://repository.dataone.org/software/cicore/tags/D1_SCHEMA_0_4/dryadMetsAny.xsd')

results in the following error:
knb 20100917-14:12:13: [WARN]: XMLService.populateRegisteredSchemaList - Schema file: /var/lib/tomcat6/webapps/knb/schema/dryadMetsAny.xsd is registered in the database but does not exist on the file system. [edu.ucsb.nceas.metacat.service.XMLSchemaService]

History

#1 Updated by Chad Berkley about 14 years ago

  • Parent task set to #912

#2 Updated by Chad Berkley about 14 years ago

  • Status changed from New to In Progress

#3 Updated by Chad Berkley about 14 years ago

  • Status changed from In Progress to Closed

I added code in Metacat to perform this task. I tested with the dryadMetsAny.xsd schema and it worked. If you put a url into the xml_catalog for a schema, it will attempt to download the schema when a document is parsed. The schema is cached to disk then used for validation. See XMLSchemaService in metacat for implementation details.

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 14.8 MB)