Print

Print


On Tue, 2001-09-11 at 01:15, Alexander Nakhimovsky wrote:
> Is it possible your data is making references to a DTD somewhere?
>
> In what way did it stop working?
>
> If you post or email to me the XSLT, a sample of data and the error
> messages you're getting I'll be glad to take a look at them.

From a couple of messages that I recieved yesterday, I have deduced that
the following construct is no longer legal:
<dc:Identifier dcq:IdentifierType="issn">0001-3072</dc:Identifier>

I used the W3C RDF validator (http://www.w3.org/RDF/Validator/), and
tested the following code:

<?xml version="1.0"?>
<rdf:RDF
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:dcq="http://purl.org/dc/qualifiers/1.1/"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   >
  <rdf:Description rdf:about="http://www.w3.org/">
    <dc:title>World Wide Web Consortium</dc:title>
    <dc:Identifier dcq:IdentifierType="issn">0001-3072</dc:Identifier>
 </rdf:Description>
</rdf:RDF>

which gave me this error:
Error: {E201} Syntax error when processing "0001-3072". Encountered
"0001-3072" Was expecting one of: end element tag property attributes
attribute rdf:type [Line = 9, Column = 46]

Further testing has shown that the RDF sybtax imposes a restriction such
that no sub-elements may contain both attributes and values - even if I
add my own name-space.

Thus (with an added name-space) either of the following are valid:
   <dc:Identifier>
    <myspace:Type>issn</myspace:Type>
    <myspace:Value>0001-3072</myspace:Value>
   </dc:Identifier>
or
   <dc:Identifier myspace:Type="issn" myspace:Value="0001-3072" />

but not:
   <dc:Identifier myspace:Type="issn">
    <myspace:Value>0001-3072</myspace:Value>
   </dc:Identifier>


This format of attribute and value was parseable at the end of August
(30/8/01 to be exact), and then working (discovered 5/9/01). I only
noticed this because a prototype that I had had working, had stopped
working when I went back to it after a couple of weeks away.

I am using Perl Modules to parse, so I first assumed that they had
altered, however (a) the server had not been updated, and (b)testing on
another machines gave the same error.
I then had it tested on a completely different server, using a
Java-based system to parse the data - and still got the same error.
Next I checked the XML data, and tested the xsl with my test-data (that
was known to work in late August).

My conclusion is that something in the spec has changed - is this wrong?
is there something I've missed?

--

--==++
Ian Stuart
A man in serious need of a Brain Transplant