Re: [jats-list] 'xlink' namespace prefix definition in JATS

Subject: Re: [jats-list] 'xlink' namespace prefix definition in JATS
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxx>
Date: Mon, 11 Mar 2013 10:44:08 -0400
Hi,

Not being able to speak to the issue at hand, still I can't help but
remarking that what Markos apparently considers to be a bug ("all XMLs
using the 'xlink' namespace prefix will be forced to define it?") is
at least for some systems a feature.

For some systems, asserting that all XML documents will always have
their DTDs available, along with their declarations (for fixed or
defaulted attributes), is an acceptable constraint. Especially if you
rely on many entity declarations, and if your data set is well
controlled internally, this can be an acceptable price to pay for
being able to amend your data model by means of the DTD. In this sort
of system, declaring xmlns:xlink the way Markos wants (as a FIXED
attribute) works well.

For others, it might be best to treat XML documents as standalone and
to be sure that they are. This means no reliance on declarations for
entities or attributes (at least not declared in an internal subset)
to supplement the information in the file. In such systems, XML files
can always be processed even if a DTD is broken, missing or
unavailable. But it means seeing to it that attributes -- including
those representing namespace declarations -- are always given as a
literals (not defaulted or fixed by the DTD) whenever they are needed.

My personal feeling is that either choice may be fine, depending on
local contingencies. The trouble starts when it's either/or or
both/and (if you sometimes have a DTD dependency but not always).

Enforcing a rule that the namespace declaration always be given
explicitly at the top of the file can also be done, with a DTD or (a
bit more gracefully) with Schematron using XPath 2.0.

Cheers, Wendell

On Sat, Mar 9, 2013 at 1:45 PM, Tommie Usdin <btusdin@xxxxxxxxxxxxxxxx>
wrote:
> This is intentional. It was a compromise based on the recognition that Xlink
is rarely used but there are:
>
> 1. existing documents with the namespace declared that should not be
unnecessarily orphaned by a non-backwards compatible change, and
>
> 2. a few applications that do use XLINK and want/need the namespace
declaration.
>
> (Off topic, but I can't resist: I was both surprised and disappointed in the
popular failure of Xlink. I still think it includes some concepts that we as a
community would benefit from significantly. I think the failure was/is caused
by failure to communicate and an overly-complex specification.)
>
> -- Tommie
>
>
>
> On Mar 5, 2013, at 1:01 PM, Nikos Markantonatos <nikos@xxxxxxxxxx> wrote:
>
>> I happened to notice a difference in the definition of the xlink:href
attribute in JATS compared to NLM DTD v3.0. In common3.ent, NLM DTD v3.0
defines it with a default FIXED value:
>>
>> <!ENTITY % might-link-atts
>>    "xmlns:xlink CDATA                             #FIXED
>>                            'http://www.w3.org/1999/xlink'
>>
>> whereas JATS defines it with no default value:
>>
>> <!ENTITY % might-link-atts
>>    "xmlns:xlink CDATA                           #IMPLIED
>>
>> Wouldn't this mean that all XMLs using the 'xlink' namespace prefix will be
forced to define it? Is this intentional?
>>
>> Nikos Markantonatos
>> Atypon
>>
>> --
>> Confidentiality Notice:  This email and any attachments are for the sole
use of the intended recipient(s) and contain information that may be
confidential and/or legally privileged.  If you have received this email in
error, please notify the sender by reply email and delete the message.  Any
disclosure, copying, distribution or use of this communication by someone
other than the intended recipient is prohibited.
>>
>
> ======================================================================
> B. Tommie Usdin                        mailto:btusdin@xxxxxxxxxxxxxxxx
> Mulberry Technologies, Inc.                http://www.mulberrytech.com
> 17 West Jefferson Street                           Phone: 301/315-9631
> Suite 207                                    Direct Line: 301/315-9634
> Rockville, MD  20850                                 Fax: 301/315-8285
> ----------------------------------------------------------------------
> Mulberry Technologies: A Consultancy Specializing in SGML and XML
> ======================================================================
>



--
Wendell Piez | http://www.wendellpiez.com
XML | XSLT | electronic publishing
Eat Your Vegetables
_____oo_________o_o___ooooo____ooooooo_^

Current Thread