XML validation Cannot Resolve The Name

26 Views Asked by At

I have never really worked with XML. Trying to validate a document

When validating the below this error is returned? What does it mean?

Src-resolve: Cannot Resolve The Name 'kontekst:HovedOplysninger' To A(n) 'element Declaration' Component.

XML

<?xml version="1.0" encoding="UTF-8"?>
<urn:VirksomhedKalenderHent_I xmlns:urn="urn:oio:skat:nemvirksomhed:ws:1.0.0"
                              xmlns:ns="http://rep.oio.dk/skat.dk/basis/kontekst/xml/schemas/2006/09/01/"
                              xmlns:ns1="http://rep.oio.dk/skat.dk/motor/class/virksomhed/xml/schemas/20080401/"
                              xmlns:urn1="urn:oio:skat:nemvirksomhed:1.0.0">
    <ns:HovedOplysninger>
        <ns:TransaktionIdentifikator>33593B0D-E7CF-40A2-AE76-530B72DE6AE3</ns:TransaktionIdentifikator>
        <ns:TransaktionTid>2017-04-24T12:00:00.146+02:00</ns:TransaktionTid>
    </ns:HovedOplysninger>
    <ns1:VirksomhedSENummerIdentifikator>12345678</ns1:VirksomhedSENummerIdentifikator>
    <urn1:AngivelseTypeNavn>qwerty</urn1:AngivelseTypeNavn>
    <urn:AngivelseBetalingFristHentFra>
        <urn1:SoegeDatoFraDate>2017-01-01</urn1:SoegeDatoFraDate>
        <urn1:SoegeDatoTilDate>2017-03-31</urn1:SoegeDatoTilDate>
    </urn:AngivelseBetalingFristHentFra>
</urn:VirksomhedKalenderHent_I>

XSD

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:nemvirksomhedws="urn:oio:skat:nemvirksomhed:ws:1.0.0"
           xmlns:xs="http://www.w3.org/2001/XMLSchema"
           targetNamespace="urn:oio:skat:nemvirksomhed:ws:1.0.0"
           elementFormDefault="qualified" attributeFormDefault="unqualified"
           version="1.0" xmlns:nemvirksomhed="urn:oio:skat:nemvirksomhed:1.0.0"
           xmlns:virksomhed="http://rep.oio.dk/skat.dk/motor/class/virksomhed/xml/schemas/20080401/"
           xmlns:kontekst="http://rep.oio.dk/skat.dk/basis/kontekst/xml/schemas/2006/09/01/"
           xml:lang="DA">
    <xs:annotation>
        <xs:documentation/>
    </xs:annotation>
    <xs:import namespace="http://rep.oio.dk/skat.dk/basis/kontekst/xml/schemas/2006/09/01/"
               schemaLocation="../../../../../../skat_dk/basis/kontekst/xml/schemas/2006/09/01/HovedOplysninger.xsd"/>
    <xs:import namespace="urn:oio:skat:nemvirksomhed:1.0.0"
               schemaLocation="../../1_0_0/SoegeDatoTilDate.xsd"/>
    <xs:import namespace="urn:oio:skat:nemvirksomhed:1.0.0"
               schemaLocation="../../1_0_0/SoegeDatoFraDate.xsd"/>
    <xs:import namespace="http://rep.oio.dk/skat.dk/motor/class/virksomhed/xml/schemas/20080401/"
               schemaLocation="../../../../../../skat_dk/motor/class/virksomhed/xml/schemas/20080401/VirksomhedSENummerIdentifikator.xsd"/>
    <xs:import namespace="urn:oio:skat:nemvirksomhed:1.0.0"
               schemaLocation="../../1_0_0/AngivelseTypeNavn.xsd"/>
    <xs:element name="VirksomhedKalenderHent_I"
                type="nemvirksomhedws:VirksomhedKalenderHent_IType">
    </xs:element>
    <xs:complexType name="VirksomhedKalenderHent_IType">
        <xs:sequence>
            <xs:element ref="kontekst:HovedOplysninger"/>
            <xs:element ref="virksomhed:VirksomhedSENummerIdentifikator"/>
            <xs:element ref="nemvirksomhed:AngivelseTypeNavn"/>
            <xs:element name="AngivelseBetalingFristHentFra">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element ref="nemvirksomhed:SoegeDatoFraDate"
                                    minOccurs="0"/>
                        <xs:element ref="nemvirksomhed:SoegeDatoTilDate"
                                    minOccurs="0"/>
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>
</xs:schema>
1

There are 1 best solutions below

0
Michael Kay On

The XSD has a namespace declaration

xmlns:kontekst="http://rep.oio.dk/skat.dk/basis/kontekst/xml/schemas/2006/09/01/"

and it has an xs:import for that namespace -- so that's a good start.

You haven't shown us the schema document that's being imported, and my guess (from the error message) is that it doesn't contain an element declaration for the name HovedOplysninger.

When you solve that problem you'll need to tackle the references to elements in namespaces virksomhed and nemvirksomhed which don't appear to be imported at all.