OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
How to discover data's "natural" structure?

Hi Folks,

XML is well-suited for structuring data into a hierarchy, e.g.,


JSON is well-suited for structuring data into a set of name-value pairs, e.g.,

	Temperature: 21 degrees
	Humidity: 52%
	Precipitation: 10%

or into a list of values, e.g.,

	John, Mary, George, Bill, Susan

or into a combination of the two.

Comma-separated value (CSV) is well-suited for structuring data into a series of columns, e.g.,

	ID, 	Name, 		Age
	1, 	John, 		21
	2, 	Mary, 		25
	3, 	George, 	30

Recently I have been working on a project to migrate CSV-structured data to XML. But at the back of my mind is a gnawing question: is a hierarchical structuring the data's natural structuring?

Of course any data can be forced into a hierarchical structure; but that doesn't mean it's right.

Does data have an inherent, natural structuring? 

Has it been your experience that when data is structured in its natural way, everything feels right: it's easy to understand the data, it's easy to process the data, everything about it is easy?

Perhaps there is no natural structuring of data - the structuring of data is entirely dependent on the processing to be performed on the data. So the processing dictates the structure of the data, not the data itself. Yes? No? 

Or, perhaps at some level data seeks to be structured in a certain way, independent of its processing. Yes? No?

Let me give an example (a sketch of an example, actually). In the data that I am currently working with, I have found that the natural structure of the data is as Lego building blocks. Some building blocks must not assemble with certain other building block, else rules of the domain are violated. So there is a kind of repulsion between those building blocks. The data naturally groups into building blocks where some building blocks have an affinity for other building blocks and some building blocks have a repulsion for other building blocks. I am not sure how to design data building blocks that have affinity and repulsion properties. It doesn't seem to fall into any of the structuring categories listed above. 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS