Ошибка определения плана валидатора HL7: - PullRequest
0 голосов
/ 10 июня 2019

Мне пришлось обновить библиотеки Hl7.Fhir.STU3 и Hl7.Fhir.Specification.STU3, и теперь я получаю сообщение об ошибке, что не удается разрешить профиль PlanDefinition. Я вижу в отладчике, что файл spec.zip извлекается Извлечено в 'C: \ Users \ dev \ AppData \ Local \ Temp \ FhirArtifactCache-1.2.1-Hl7.Fhir.STU3.Specification \ification'}

Почему это не найдет PlanDefinition?

{"Overall result: FAILURE (1 errors and 0 warnings)\r\n\r\n[ERROR] Resolution of profile at 'http://hl7.org/fhir/StructureDefinition/PlanDefinition' failed: Cannot prepare ZipSource: file 'D:\\Users\\mcdevitt\\Documents\\Visual Studio 2015\\FHIRValidatorFile\\FHIRValidatorFile\\FHIRValidatorFile\\bin\\Debug\\CustomProfiles' was not found (at PlanDefinition)"}

var HL7obj = new FhirXmlParser().Parse<PlanDefinition>(HL7FileData);
var coreSource = ZipSource.CreateValidationSource();
var cachedResolver = new CachedResolver(
            new DirectorySource(CustomProfilesPath, includeSubdirectories: true));

var combinedSource = new MultiResolver(cachedResolver, coreSource);

var ctx = new ValidationSettings()
        {
            ResourceResolver = combinedSource,
            GenerateSnapshot = true,
            Trace = false,
            EnableXsdValidation = true,
            ResolveExteralReferences = false
        };

var HL7validator = new Validator(ctx);
var result = HL7validator.Validate(HL7obj);

1 Ответ

0 голосов
/ 10 июня 2019

Эта ошибка возникает из-за того, что ZipSource не может найти заархивированный файл по указанному пути.Вместо пути к папке, укажите zip-файл, который вы хотите использовать в качестве источника.

Из имени 'coreSource' я предполагаю, что вы хотите указать на базовую спецификацию FHIR.Вместо того, чтобы предоставить свой собственный zip-файл для этого, вы можете изменить его на следующую строку:

var coreSource = ZipSource.CreateValidationSource();

Библиотека найдет прилагаемый к ней файл spec.zip и сможет использовать его для проверкиосновная спецификация.

...