Re: [xml-dev] When converting XML to JSON, you can safely drop all id attributes

From: David Carlisle <d.p.carlisle@gmail.com>

To: "xml-dev@lists.xml.org" <xml-dev@lists.xml.org>

Date: Mon, 15 Jun 2015 19:11:20 +0100

On 15/06/2015 17:19, Costello, Roger L. wrote:
> Hi Folks,
>
> Common practice in XML design is to liberally sprinkle id attributes
> throughout the XML. Why? Because it facilitates intra-document linking
> (via the id-idref mechanism) and inter-document linking.
>
> The following example shows the use of an id attribute to facilitate an
> intra-document reference:
>
> JSON does not have attributes. The JSON Reference specification [1]
> defines a syntax for intra-document and inter-document references and it
> does not use anything like an id attribute. The above intra-document
> reference is expressed like this:
>
> { "$ref": "#/Library/BookCatalogue/Book" }
>
> *Lesson Learned*: when converting XML to JSON you can safely drop all id
> attributes.
>
> /Roger
>
An id attribute is an attribute like any other, you can only drop it if
you don't need the information it contains.
In this case that's the ISBN of one edition of that book, so it would
seem that by dropping the attribute you lose the information about which
edition is being recorded, which may or may not matter depending on what
you are doing.
Especially in the case you show the id attribute is (presumably) just a
normal attribute not an attribute of declared type ID as its value
begins with a digit, so it would not be valid as an ID attribute (in DTD
or XML schema)
David
[I replied before but it never made the archive, trying again after
resubscribing from a new address , sorry if you get this twice]