From 4e8e79a5bbecdde4bd1823ef03fb67d73f123d36 Mon Sep 17 00:00:00 2001 From: Andreas Romeyke <andreas.romeyke@slub-dresden.de> Date: Thu, 20 Jul 2023 11:57:32 +0200 Subject: [PATCH] - added handling for nonvalidating --- .../plugin/ValidationResourceResolver.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/java/org/slub/rosetta/dps/repository/plugin/ValidationResourceResolver.java b/java/org/slub/rosetta/dps/repository/plugin/ValidationResourceResolver.java index b0795d3..1b063f8 100644 --- a/java/org/slub/rosetta/dps/repository/plugin/ValidationResourceResolver.java +++ b/java/org/slub/rosetta/dps/repository/plugin/ValidationResourceResolver.java @@ -34,6 +34,14 @@ public class ValidationResourceResolver implements LSResourceResolver { public ValidationResourceResolver(Set<ValidationSchema> namespaceSchemaMap, ValidationResultHandle resultHandle) { this.namespaceSchemaMap = namespaceSchemaMap; this.resultHandle = resultHandle; + /* + System.out.println("MAP: " ); + var i = namespaceSchemaMap.iterator(); + while (i.hasNext()) { + var e = i.next(); + System.out.println( e.nameSpace + " " + e.schemaURI ); + } + */ } public Optional<ValidationSchema> find_by_ns(String nameSpaceUri) { @@ -106,6 +114,10 @@ public class ValidationResourceResolver implements LSResourceResolver { resultHandle.info("RESOURCE_RESOLVER: --> No entry in schemacatalog found for " + nameSpace + "!"); return new DOMInputImpl(null, null, null); // disabled } + if (validationSchemaOptional.get().schemaType == ValidationSchemaType.nonvalidating) { + resultHandle.warning("RESOURCE_RESOLVER: --> found a namespace ("+nameSpace+") with nonexisting schema, try to ignore for validation"); + return null; // ignore schema + } DOMInputImpl domInput = new DOMInputImpl(); resultHandle.debug("RESOURCE_RESOLVER: --> Found entry in schemacatalog for " + nameSpace); /* if schemauri is local AND basename(SystemID) in dirname(schemaURI) exists -- GitLab