This one that will live on the dark web initially; while it is being written.
Coming from the background of a world that depended on RDBMS heavily for business applications the introduction of XML for standardized document storage and transfer ...leaves like thinking people with the challenge of translating the 'relational' view of a problem domain (do they still use that phrase?) into a thing...that bridges the XML world view.
I know (knew?) instincively that the 'relational view' provided a set of semi-rigid rules that applied to application design across the board; such that if for instance the data stored, transferred and viewed conformed to a thing call 'normalization' (a process) then the software was well written and could be expected to perform reliably going into the future.
Enter XML as a standard for storage, transfer and presentation of data...22 years ago.
XML which I 'still' view as being that departure from relational design that continually seeks to find a way back (connection?) to relational design conformance.
And so that is where my designs start when using XML 'data' in a relational way. Relational, because a relational approach conforms to a certain intuitive logic that ...to my estimation is the objective of all software design to some degree; that it be so logically intutive that it is not only usable, but easy to use. And also the array of tools used to actually do something useful with Data do still lend themselves to finding value based on relationships.
Total count of 'type' equals 'P'. But have to reliably filter out items of 'type' in order to reliably arrive at 'P'. Enter 'Relationships', and XML while great for storing data, and to some degree 'describing' said data; XML way too oftern does not do enough to allow itself to be friendly in a Relational universe.
So, I have several areas that I address using software. I pride myself in being Omnipotent where it comes to creating software to address a problem. In the case of this hereunto unbranded and officially unnamed software project, I am using several things. Three languages, two server software (postgresq, httpd), my code and other peoples code (but not just any knucklehead code) and a couple of additional API's to tie it all together.
Check out the picture here (click). It took me two days to be able to utilize these peoples work; without it I could not bring the various parts of this thing together in the way that I origionally envisioned it. Just wanted to stop and brag a minute about them.