Slashdot Mirror


What Do You Know About Databases And XML?

Dare Obasanjo writes: "XML has become a pervasive part of significant segments of software development in a relatively short time. From file formats to network protocols to programming langauges, the influence of XML has been felt. I have written an overview of XML schemas, XML querying languages, XML-Enabled databases and native XML databases. Below is a shortened version of the article." Obasanjo's original OODBMS article has been updated to reflect more of the disadvantages between picking an OODBMS over an RDBMS.

257 comments

  1. Super short intro to XML by Ars-Fartsica · · Score: 3, Flamebait
    XML solves the interchange problem.

    By this, it is meant that XML allows two systems that do not share a predetermined data exchange protocol to share data.

    Thats it.

    Where two systems share a common predetermined protocol, it is almost always more efficient than XML.

    Applications of XML to programming lang design (XSL) and other domains are largely a waste of time and won't last.

    1. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      Where two systems share a common predetermined protocol, it is almost always more efficient than XML

      You'd have to work pretty damn hard to come up with a protocol less efficient than XML on known data... :-)

    2. Re:Super short intro to XML by Procrasti · · Score: 1

      What about compressed XML. Its small, cause the compression deals with the redundancy, and its robust / reasonably self documenting and all the other good things about XML.

    3. Re:Super short intro to XML by mmacdona86 · · Score: 1

      This misses the other big application of XML that is going to be successful: separating content information from formatting information. Presenting data using XSL to format data supplied in XML is a huge step over HTML and other data formats that commingle content and presentation.

    4. Re:Super short intro to XML by Skapare · · Score: 3, Insightful

      So if someone designs a new (not like XML) format for exchanging data, and manages to get it standardized, then won't this also allow two systems that do not share a predetermined data exchanged protocol to share data? One could also be careful in this design and make sure it is more efficient than XML, not only in space and bandwidth, but also in CPU time and programming time. Now does such a format need to be text based as XML is?

      --
      now we need to go OSS in diesel cars
    5. Re:Super short intro to XML by revscat · · Score: 2, Informative

      Wow, this guy posts early but it looks good so he gets modded up. What a crock.

      XML solves the interchange problem. By this, it is meant that XML allows two systems that do not share a predetermined data exchange protocol to share data. Thats it.

      That is a VAST oversimplification. What if instead you had said "computers allow us to carry out a repeated set of instructions. That's it." Doesn't quite tell the whole story, does it? Nor does your kindergarten-level definition of XML tell the whole story.

      Applications of XML to programming lang design (XSL) and other domains are largely a waste of time and won't last.

      Hmmm.... And will the stock market rebound in the next six months? Will Jesus FINALLY return and lift the Believers up into heaven? Will it rain next Friday?

      You can speak out of your ass all you like. Doesn't mean it's gonna happen. XSL/XSLT has been around for a while now, and its user base has only been expanding.

      He's a moron, obviously has done nothing more than skimmed a few chapters in some cheap-ass Wrox text, and he gets modded up to 5. There is no justice, I tell you!

    6. Re:Super short intro to XML by Rogerborg · · Score: 5, Funny
      • Where two systems share a common predetermined protocol, it is almost always more efficient than XML

      I hear you. The product that I'm working on right now is XML heavy. It's using entirely proprietary data formats, and the XML processing is taking up 80% of the query time. After achieving full buzzword compliance, we decided that the system is way too slow, and now have to strip the whole bloody lot back out again.

      Note that there was no reason to use XML in the first place, other than some designers wanted to put it on their resumes. I kid you not.

      --
      If you were blocking sigs, you wouldn't have to read this.
    7. Re:Super short intro to XML by Ars-Fartsica · · Score: 2

      Yet its the working definition you'll find in many articles at XML.com. Why would you presume XML serves some larger purpose?

      XSL/XSLT has been around for a while now, and its user base has only been expanding.

      Once again, XML.com has some very informed articles trashing XSL, and they aren't naive posts by someone who just read the WROX book. Stop by and read them.

    8. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      It does not need to be text based. Even if the format is binary as long as the protocol is implemented correctly by the sending party, the receiving party will be able to decode it.

    9. Re:Super short intro to XML by xmedar · · Score: 2

      XML solves the interchange problem.

      If you can agree on the schemas of course. Given the large amount of wrangling / discussion / argument over what schemas to adopt, e.g. ebXML, XML is getting bogged down, for those of us that would like to actually create something better than EDI that can be the basis for lowering transaction costs and making the world a saner place for doing business it is a pain to have to deal with all this. I'm wondering is a better way of doing things would be to use RDF as the semantics are embedded with the data, and the syntax is easy to read both for machines and humans.

      --
      Any sufficiently advanced man is indistinguishable from God
    10. Re:Super short intro to XML by sporty · · Score: 3, Interesting
      Well it really depends on what you are doing and how youare trying to do things. Perfect example is internal documentation. It isn't in a 2d format (usually).


      Lord knows how annoying it is to write a document so generic, that translating it to other forms can be possible. XML is the perfect format since there is always some middle ware that can turn XML say, into PDF's or HTML. To html, you have XSLT, its a no brainer. But to say a PDF, you can use another scripting language to process the XML and write out the PDF binary. Now we can create a handbook and have some cool stuff on the web without destroying the site.


      XML can also have internal uses for say, templating. Using XSLT, you can build a tempalte that would do cool stuff like

      [html][body]Hi [username/][/body][/html]

      which would be translated into something like

      [html]
      [body]
      [script language="php"]
      getUsername();
      [/script]
      [/body]
      [/html]

      VERY nice stuff for designers to use.

      Yes, I know my php tags and html open/close entities are arcane/wrong... but this is to make it easier to type on my part :)

      --

      -
      ping -f 255.255.255.255 # if only

    11. Re:Super short intro to XML by NineNine · · Score: 1

      Well, look at most applications. Most applications written today are web-based, and we already have technology that separates the design and the data: ASP, PHP, Cold Fusion, etc. XML only adds 2 more layers into this, doing nothing other than slowing the whole process down. XML is good if you don't understand ASP, PHP, etc., but overall, it's a waste of time if you're doing a web app.

    12. Re:Super short intro to XML by KyleCordes · · Score: 2

      If the XML processing is in a separate layer of the application from the "real work", you could have multiple implementation of the data representation mechanism... an XML implementation for full buzzword compliance, and a more native implementation for maximum performance.

      On the other hand, if you've let the XML-aware code permeate all parts of the system, it's going to be a lot of work to strip it out.

    13. Re:Super short intro to XML by Captain+Pedantic · · Score: 0

      The obvious answer is because first you have the hit of decompressing, and then you are left traversing a potentially huge file keeping track of end tags or spaces or whatever. That's why.

      --

      None are more hopelessly enslaved than those who falsely believe they are free. Johann Wolfgang von Goethe.
    14. Re:Super short intro to XML by Skapare · · Score: 2

      Define "correctly". Perhaps your idea of that is like mine, which is more along the lines of "do the right thing". When I see some discussions of XML, though, "correct" tends to be more a case of pedantic completeness. But how can all of this solve problems if transferring data between databases of different design, where not only are relationships different, but names and tables are as well. Someone still has to establish some kinds of localized semantics, regardless of the DTD. The transfer data simply becomes a sort of "data Esperanto" if carefully designed. But how does XML aid in that?

      --
      now we need to go OSS in diesel cars
    15. Re:Super short intro to XML by Shimmer · · Score: 1

      Can you provide specific links to such articles? Thanks.

      -- Brian

      --
      The most rabid believers in American Exceptionalism are the exact same people whose policies are destroying it.
    16. Re:Super short intro to XML by Ars-Fartsica · · Score: 2
      What about compressed XML

      Then why not compress the other more efficient protocol and receive the proportionately larger gains?

    17. Re:Super short intro to XML by brer_rabbit · · Score: 1

      you must of worked at my previous job!

      The java jockeys kept pushing for the client / server to talk XML. After pointing out that the majority of their protocal was XML overhead (never mind that it was *neatly* *formatted* XML [the perl CGI stuff produces ugly looking html for a reason: newlines take up bandwidth!]) they claimed it was only the "1.0" implementation. Huh??? Solidifying a protocol should be high priority, unless you're happy pissing off your customers with constantly changing specs.

    18. Re:Super short intro to XML by Ars-Fartsica · · Score: 1, Flamebait
      Find one useful site that profitably uses XSL and XML.

      I'm not trolling, its just a fact - you're almost always better off using CSS for presentation tweaks, and PHP on the server for serious logic.

    19. Re:Super short intro to XML by Twylite · · Score: 2

      [Start Flamebait] Please would the moderators have some knowledge of the topic BEFORE flagging things as "Interesting" or "Informative"[End flamebait]

      XML solves the data format problem, and nothing more. It does not solve the interchange problem because apps still need to know where to locate relevant information in an XML doc, and how to interpret it. i.e. they have to have knowledge of the DTD and translate from the XML (structured according to the DTD) into their own internal format.

      So instead of needing to create a reader for a binary EDI format, you plug in a bog standard parser and get named values. So it makes interchange EASIER for the programmer. Especially those with languages that don't do binary data very well.

      God only knows what XSL has to do with "programming language design". XSL has two explicit goals: 1. (XSLT) a generic translation from one XML format to another. Why? Because everyone wants to use their OWN XML DTD, so to interact with umpteen other products you need to understand the DTDs of each ... or you write an XSL for each to change it into your format. 2. (XSL:FO) display primitives to allow an XML document to be transformed into a display language, so we can see the damn thing.

      --
      i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
    20. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      Ah, I thought you were actually arguing *for* XML originally. :-)

      Yep, if you don't have an extra layer between the communicating apps, the data Esperanto doesn't work. The real reason you can't do anything special with XML is that it is just encapsulating data. It's always up to the receiving app to decide what to do with it. The next step beyond data is logic, and we've got Java now and .NET coming soon.

      It doesn't seem like we're moving away from overhead any time soon.

    21. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      perhaps redundancy in the xml markup would allow for better compression than the "other more efficient" protocol. Thus reducing the gap between xml and the other more efficient protocol.

    22. Re:Super short intro to XML by Ars-Fartsica · · Score: 2
      But the target compression should still result in a smaller size as the inefficiencies in XML aren't simply syntactic, they are semantic (by design).

      The optimized protocol will always win.

    23. Re:Super short intro to XML by Anonymous Coward · · Score: 0
      We use XSL to transform Word documents made into Docbook by Logictran. I'm not sure how profitable it is but it keeps the five of us employed.

      And no, I won't give you an URL. The "profitably" bit already shows that you're not reasonable.

    24. Re:Super short intro to XML by Ars-Fartsica · · Score: 2
      XML solves the data format problem, and nothing more.

      Actually, less. It solves the metaformat problem.

      It does not solve the interchange problem because apps still need to know where to locate relevant information in an XML doc

      A simple policy is to reject any file without a valid DOCTYPE.

      As for what meaning you infer from tagged data, no standard is ever going to tell you that.

    25. Re:Super short intro to XML by friedmud · · Score: 1

      I agree.

      And if you want to do object oriented stuff with it just use mysql_fetch_object() with php. This will return a nice object for you made out of the results of a mysql query.

      PHP is sooo sweet.

      Derek

    26. Re:Super short intro to XML by Skapare · · Score: 2

      Non-profitable dot.coms didn't last very long. How long will a non-profitable XML implementor last? eh?

      --
      now we need to go OSS in diesel cars
    27. Re:Super short intro to XML by Anonymous Coward · · Score: 1, Informative
      Er, but you after reading your comment again I'm confused. You don't actually think CSS and XSL compete for the same space do you? They're completely different.

      If i've just misunderstood your comment then my little animal apologies go to you.

    28. Re:Super short intro to XML by Ars-Fartsica · · Score: 2
      We use XSL to transform Word documents made into DocbookMy former employer was doing that six years ago with OmniMark.

      The "profitably" bit already shows that you're not reasonable.

      No - profitability is ultimately the only viable test for any technology.

    29. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      For the record, although XSL:FO could be used as display postscript/PDF or viewed onscreen its more generally regarded to be for the printed page. There are no problems using XSL to format XML into HTML.

    30. Re:Super short intro to XML by Skapare · · Score: 2

      What? Me *for* XML? When did that happen? :-)

      And why do I need to have my data encapsulated? And why is XML redundantly closing contexts? Why not just close everything with </> instead of having to repeat the name? This is not human (error prone) data entry, this is machine generated data. If an implementation generates bad XML, you find out in the testing phases and go back and fix or redesign. Doing verification on every instance of usage is like leaving all the debug prints enabled and writing them to a log file.

      Java is not any more capable than say, C, for adding in logic. You still have to code the logic and that could be done in most languages.

      The data Esperanto concept can work, as long as both the speaker and listener (sender and receiver ... encoder and decoder) know the same language. And that comes about from standardization. Now the next thing I'm likely to hear about in the XML world is that if you don't like one DTD, there are plenty more to choose from to do the same thing. DTDs are almost like standards themselves now ... without the thought being really put into them.

      --
      now we need to go OSS in diesel cars
    31. Re:Super short intro to XML by statusbar · · Score: 2

      "....XML allows two systems that do not share a predetermined data exchange protocol to share data..."

      Isn't that statement an oxymoron? If both systems understand XML then they DO 'share a predetermined data exchange protocol.'

      --jeff

      --
      ipv6 is my vpn
    32. Re:Super short intro to XML by maraist · · Score: 3, Informative

      The obvious answer is because first you have the hit of decompressing

      You're thinking LZ or huffman. But you could very easily perform utilize tag-id,data-length,data.
      If tag-id and data-length are binary integers, then you reduce any tag combination to 8 bytes (which, except for single character tag-names is shorter). It most definately produces faster read-times, since you read entire chunks without lexical comparisons.

      For 1-level-deep data-structures, this is pretty good.. You can even reduce the tag-size down to 1 Byte (thus have only 5 bytes overhead per CDATA). This is especially good for protocols between web-server apps, and the like. For multi-levels data-structures, you have the choice of either combining all the levels into new tag-types (though this doesn't allow for recursion), or have the reader keep track of state.

      Since this can easily be converted back and forth between XML, what this could mean is that externally XML is used, internally compressed XML is used.

      Note that even this has limited usefulness; only at all useful when interacting with 3'rd party apps, or when being saved to disk (to allow vi-modification).

      -Michael

      --
      -Michael
    33. Re:Super short intro to XML by Winged+Cat · · Score: 1

      Agreed. And the problem is...if two applications agree to use a certain XML schema, then they have a predetermined interchange format by definition.

      I'm wondering is a better way of doing things would be to use RDF as the semantics are embedded with the data, and the syntax is easy to read both for machines and humans.

      Some format where the machines can extract meaning from the data itself, without prior knowledge of the specifics of the data format (that is, beyond "it's in an XML tag-like structure" or something like that) is what XML was sold as. Unfortunately, as XML is typically implemented, it falls short.

    34. Re:Super short intro to XML by Skapare · · Score: 2

      With compressed XML, you have to use some tool like "zcat" to read it. Isn't the whole idea of XML to make it with with "cat"? :-)

      Seriously, what is the readability issue all about, anyway? What's so wrong with using a tool to read a format that happens to be in a binary form? I personally find XML is harder to read than HTML and HTML is not that easy to read. And XML is only getting worse.

      --
      now we need to go OSS in diesel cars
    35. Re:Super short intro to XML by maraist · · Score: 2
      we already have technology that separates the design and the data: ASP, PHP, Cold Fusion, etc


      Hello! I whole-heartedly disagree that ASP / PHP / JSP performs any separation (though not familiar enough with Cold Fusion). Instead they perform the exact opposite.. They interlace content, presentation and even security. They do not natively allow for the separation of work a hacker, an artist, and a DBA performs, since they all require arbitrarily aggreed apon artificial APIs.

      Presentation is only separateable when function calls to "header", "footer", URIs are made. A new developer wouldn't necessarily know which file(s) to use for such linkage. Login authentication / authorization are often relegated to the individual web pages, which makes the vulnerability dependent on the bug-free-ness of each page (weakest link is weakest/buggiest URI). Granted, there are propritary means within each system to enforce authen/authz.

      Though I'm not a great fan on XML, XSL allows a 100% separation of style (beyond even that of style-sheets). Even the use of head/foot within PHP/ASP doesn't allow external formatting of the individual tables as XSL does. What's more, theoretically future XML / XSL compliant browsers can off-load the server overhead of the presentation layer completely. Thus there is zero "extra layers" of work for the server. You generate XML however you please (just as you would HTML), then associate static style sheets / XSL sheets from which the future browser renders the image.

      For the time being, all this technology is in flux. As I said, I'm no big fan of XML, but I've had to produce proprietary solutions to the data/format separation problem, since no existing "ASP-style" architecture solved it to my company's satisfaction.

      -Michael
      --
      -Michael
    36. Re:Super short intro to XML by maraist · · Score: 2
      you're almost always better off using CSS for presentation tweaks


      Tweak being the keyword. Tweaking fonts / colors is completely different than structure. The goal of an web art designer is to "structure" the web site in an erogonic and visually pleasing manner. Being a pure-hacker, I find distaste for such tweaks. I focus on just getting the data in and out of the users's head. I long for the ability of our graphic's designer to be able to take the data generated by my "business logic" and format it properly.

      ASP/PHP/JSP/CGI generation of tables / forms does not easily lend to "tweaking" of format (only primative CSS tweaks). Instead what we want is a "winamp" style skinnability where each widget can be relocated at the graphic's designers whim, completely independant of how those widgets work.

      There are only two technologies today that I can imagine that do this.. One is XSL, and the other is *gack* component-based programming. From this the components generate zero HTML, but instead internal data-structures which the front-end designer attaches to various HTML widgets (and can thus choose between drop-downs, check-boxes, tables, etc).

      In another post, I suggest that if future browsers are XSL compliant, then we can offload all formatting to the browser and just render raw XML. The CSS and XSL would be static pages mapped to the XML data, which thus augments performance incredibly.

      -Michael
      --
      -Michael
    37. Re:Super short intro to XML by The+Panther! · · Score: 1

      This is called IFF format. It was invented by Electronic Arts in 1985 and used by Amiga OS for audio files (AIFF). It was the first portable interchange format, predating XML by over a decade.

      I've personally used IFF in years past to great advantage where XML was bulky or wasteful or didn't exist yet. That's one of the reasons I haven't gotten a stiffy over XML, because the problem was largely addressed prior, only it was missing standardized attributes retrieval and arbitrary length tag names. As a format for speedy reading, it's almost unbeatable (with a couple of logical conventions for data formats).

      --
      Any connection between your reality and mine is purely coincidental.
    38. Re:Super short intro to XML by NineNine · · Score: 1

      They interlace content, presentation and even security. They do not natively allow for the separation of work a hacker, an artist, and a DBA performs, since they all require arbitrarily aggreed apon artificial APIs.


      The API has nothing to do with it. The database guy can change anything in the database, and with ASP, PHP, etc., the pages change to reflect the new content, irregardless of layout. Likewise, a graphics guy can change graphics on the page without interfering with the data at all. Most of the projects that I work on have specialists and they work exactly like this.

      On top of that, if you leave the rendering to the browser, then you have the possiblity of many more variations on the display of data. If you let ASP/PHP build the pages on the back end (spitting out HTML, DHTML, CSS, whatever), then you have much greater control of the content, while also having the data and the design completely separate.

    39. Re:Super short intro to XML by ThePilgrim · · Score: 2

      I don't think you are right hear. If you had said that most applications where transmittion based I would have aggreaded with you.

      Hear at the PA in the UK we handle a vast amount of Sports data from football (soccer) to athletics, more and more of that data is being generated, transmitted and processed as XML.

      There are several reasions for this, the three I can think of off the top of my head are

      1) is that XML is mostly repeated text which allows very good compression rates
      2) XML makes it easy to grab just the data you require out of a stream and discard the rest.
      3) XML must meet sertan criteria in order to be valid, which allows most of the processing to be done by pre built modules sutch as expat

      That does not mean that things can go wrong. I have one feed, I won't say from whome, that isn't well formed and another with 160 diffrent DTDs most of which could have been merged if somone had thaught about things first.

      --
      Wouldn't it be nice if schools got all the money they wanted and the army had to hold jumble sales for guns
    40. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      I just have {{dynamic-bit}} and throw it through PHP fast template. It has a huge string overhead so you'll need lots of fast ram but it's more than worth it. I prefer this method over components or header/footer as designers can just use Dreamweaver (or whatever) and type {{blah}} and know that it'll be dynamically replaced.

    41. Re:Super short intro to XML by pyrrho · · Score: 1

      I agree on the issue of interchange... however, you don't understand XSL if you don't see why it's needed for interchange! XSL will transform XML into XML... because you made a meta-language for your database BASED on XML which will be different from my XML based ml, even though the data is similar... XSLT is a language for mapping from one XML tagset to another... it's a vital part. If you think XSL is supposed to be a general purpose programming language...read again.

      --

      -pyrrho

    42. Re:Super short intro to XML by pyrrho · · Score: 1

      your Schemas do not have to be the same, that is what XSLT is for... exposing the data in even a crummy XML tagset allows XSLT to be used to transform the data back and forth.

      --

      -pyrrho

    43. Re:Super short intro to XML by xmedar · · Score: 2

      Sure, so how do you write an XSLT that takes a NAME tag and cuts it into FIRSTNAME and LASTNAME, you need the order which has to be coded by knowing how the data in NAME is i.e. (1st,last) or (last, first), (first, initial, last) etc etc like I said the semantics are NOT encoded in the XML therefore you need to code XSLTs yourself, you can't just have an automatic XSLT generator, as the semantics are not part of the XML. Basically what you are saying is that it is easier to have a programmer create an XSLT rather than one doing conversions for binary data structures (like swapping C++ coders for VB coders), my point is why do you have to have the expense of a programmer, if the semantics were with the document the machine could do an automatic translation without a programmer coding XSLTs. If you have in a large business with thousands of XML document types and need to convert them to other formats you still have a hell of a lot of work to do.

      --
      Any sufficiently advanced man is indistinguishable from God
    44. Re:Super short intro to XML by Capsaicin · · Score: 1
      profitability is ultimately the only viable test for any technology

      Which is why space exploration technology is so unviable and why NASA should immediately be closed down and replaced with a company manufacturing a better PIM ...

      --
      Better to be despised for too anxious apprehensions, than ruined by too confident a security. --Edmund Burke
    45. Re:Super short intro to XML by Capsaicin · · Score: 1
      XML solves the interchange problem ... Applications of XML to programming lang design(XSL) and other domains are largely a waste of time and won't last.

      Once you accept that XML solves a problem, any problem sufficient to guarantee its survival (and I think its survival is fairly well guaranteed!), you will have to accept that XML applications such as XSL are similarly necessary. Yes I hate XSL, no I would not want to use it to solve a non-XML problem, but I'm grudingly coming to realise (sic) that it, along with associated standards such as XPath, are uniquely suited to manipulation XML data.

      --
      Better to be despised for too anxious apprehensions, than ruined by too confident a security. --Edmund Burke
    46. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      But then you have to code your own data parser for whatever your data source is. With XML, you can pick a parser that already exists and output it in whatever content format you want. Much simpler and no re-programming of parsers when your source changes

    47. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      Yes, but can you run a 400GB database, complete with a few hundred stored procedures, efficiently and reliably using MySQL?

    48. Re:Super short intro to XML by Anonymous Coward · · Score: 0

      NASA is not in and of itself technology. Whether or not I think NASA should be kept is irrelevent when considering the complete lack of logic you just exhibited. NASA has come up with many technologies, many of which are in fact profitable.

    49. Re:Super short intro to XML by gpmcdermott · · Score: 1

      Oh, so given an ASP page, if the designer decides to rearrange the page, and say move a table cell from one location to another, there is no way in which they could possibly juxtapose some code that is dependant on the order of execution?

      THEY DEFINITELY COULD - and I have seen this happen countless times. If a designer changes some design in the ASP page, then not only the look and feel need to be tested, but also the logic on the page!!! Why do you think that ASP.Net has been developed??? Even the monkeys at Microsoft have acknowledged this as an issue.

      Also, the designer working on an ASP page can only view the resultant HTML after running the ASP code on a server. With XSL all they need is a few samples of resultant XML to apply the XSL to, and they can easilt test their design.

      (PS: The same is true for programmers screwing up the design in ASP pages when making changes - a concession made since my wife is a designer and just kicked me ;) )

    50. Re:Super short intro to XML by AdamD1 · · Score: 1

      > Note that there was no reason to use XML in the first place, other than some designers wanted to put it on their resumes. I kid you not.

      This is honestly what I consider the majority of XML "developers" to be doing. It also doesn't help that many clients throw around the term "XML" as often as most people throw around the term "breakfast." They often just assume that since it's new, it must be something they absolutely must have. Drives me nuts.

      </rant>

      --
      Because I can! [Brainrub.com]
    51. Re:Super short intro to XML by Capsaicin · · Score: 1
      NASA is not in and of itself technology.

      I've never met anyone who said it was.

      NASA has come up with many technologies, many of which are in fact profitable.

      Yes, but a totalitarian insistance on 'profitability' as the sole criterion of the value of any technology, would not allow us to accept that space exploration (or in fact science in toto)is of itself a worthwhile pursuit.

      --
      Better to be despised for too anxious apprehensions, than ruined by too confident a security. --Edmund Burke
  2. More on OODBMS by andres32a · · Score: 2, Informative

    You kind find more on OODBMS and their benefits here.

  3. Same article on kuro5hin by blamario · · Score: 3, Funny

    And they have some intelligent discussion over there too. Please leave it that way.

    1. Re:Same article on kuro5hin by Skapare · · Score: 0, Flamebait

      So you of course you come over here and leak it to the trolls? You trying to sabotage kuro5hin or something? Shame on you.

      --
      now we need to go OSS in diesel cars
  4. XML solutions by VEGETA_GT · · Score: 0, Offtopic

    My company (www.phoenixca.cm) deals with things like Documentum, iMan, domino.doc and things along those lines. We are doing things that basically have never done before. We are mainly doing integrations between different software's and such, and we use XML a lot, it makes moving data between different systems (client / server, server / server.....) simple. So to be honest I am not surprised that XML has taken off like it has.

    my 2 cents plus 2 more

    1. Re:XML solutions by VEGETA_GT · · Score: 0, Flamebait

      doh, well its sopose to be www.phoenixca.com hehehe. thats if anyone is inerested >:)-

    2. Re:XML solutions by Anonymous Coward · · Score: 0

      We are doing things that basically have never done before.

      But of course you are. Nobody anywhere has ever done anything like integrating documentum and iman. YOU THE MAN!

    3. Re:XML solutions by Anonymous Coward · · Score: 0

      Flamebait??!!! Are you moderators on crack? I think that it's time that each act of moderating require a minimum 10-word explanation of WHY it is receiving such a mod.

  5. An other interesting link by Anonymous Coward · · Score: 3, Informative

    There was a good discussion on XML data bases on the XML-Dev mailing list, which is summarized pretty well by Leigh Dodds XML and Databases? Follow Your Nose.

  6. xml is an interchange format, not a storage format by TechnoVooDooDaddy · · Score: 5, Interesting

    Databases are for storing data. End of Story.
    Oracle is taking some BIGTIME performance hits for stacking all that OO crap in there, and MS SQL Server is seeing the same thing now that they've got the XML in theirs. Don't believe me?
    Why is NASA switching to MySQL from Oracle and noticing speed increases?

    Don't get me wrong, I'm a big fan of XML.. as a data interchange format.. but when i want tight storage and quick retrieval, give me a normalized RDBMS any day of the week. Because that's what it's for.

  7. Re:xml is an interchange format, not a storage for by ZaneMcAuley · · Score: 1

    Databases are also for querying data :P heh

    As far as I know, SQL Server is hardware bound. That means, add better hardware on it and u get a perf increase to match.

    XML is great for representing data especially manupilating it with the BCLs in C#. Easy as pie.

    As with everything DB, DB operations are always more expensive than any other storage operations.

    DB operations are always the performance bottlenecks of any server system.

    The only real way to improve on that is to partition the DB and clustering.

    --
    ----- Whats wrong with this picture? http://www.revoh.org:1234/whatswrong
  8. Re:xml is an interchange format, not a storage for by sphealey · · Score: 5, Insightful
    Why is NASA switching to MySQL from Oracle [fcw.com] and noticing speed increases?
    I will defer to you on the advantages/disadvantages of using databases to store OO data.

    However, citing NASA as a source for technology or trends is a bit silly, for a number of reasons. The primary one is this: NASA is so large, and so diverse, that at one of their sites/on one of their projects they use one of just about every technology product you can name.

    I was once running two back-to-back software evaluations for products in the $20-million range. For both applications, the top ten vendors all claimed that their system was "used by NASA for the Space Shuttle". We checked up and guess what - they were all telling the truth.

    So you need a better example.

    sPh

  9. Re:OODBMS vs RDBMS by Skapare · · Score: 1, Offtopic

    It's also a matter of need. Some things need OODB more than RDB. Some things need RDB more than OODB. I've found some things may well work better with a well designed mix.

    --
    now we need to go OSS in diesel cars
  10. Re:xml is an interchange format, not a storage for by ZaneMcAuley · · Score: 1

    If you want tight storage and quick retrieval, why dont you save it in a spreadsheet? Excel or whatever? No DB overhead, data remains as tables (sheets) etc.

    --
    ----- Whats wrong with this picture? http://www.revoh.org:1234/whatswrong
  11. Are there any tools to access XML with SQL? by kryzx · · Score: 2

    The new tools like XPath and XQuery are pretty useful, but do you know of any tool that reads in XML and then allows you to access it via standard SQL? I know it would be a bit of a stretch to make it fit the SQL model, but I think it would be very useful, as lots of people out there are used to using SQL. Anybody doing this?

    --
    "I don't know half of you half as well as I should like, and I like less than half of you half as well as you deserve."
    1. Re:Are there any tools to access XML with SQL? by MikeBabcock · · Score: 2

      An XQL has been proposed by MS if I'm not mistaken. You'd have to search for it though.

      --
      - Michael T. Babcock (Yes, I blog)
    2. Re:Are there any tools to access XML with SQL? by Anaplexian · · Score: 1

      me and a few friends have made DBX - a DB system in PHP that uses SQL as the query lang., and XML files as the storage format at the backend... tediuous, yes; wierd, yes; but beautiful, and FAR FAR easier to install/use than MySQL/anything else if all you've got is a guestbook running. It's available here.

    3. Re:Are there any tools to access XML with SQL? by ShootThemLater · · Score: 1
      Merant produce an ODBC driver that allows you to treat documents as tables. Just about works too...

      Dave

  12. The problem with XML is... by gillbates · · Score: 5, Funny
    that it incurs quite a bit of processing overhead. Not only this, but in order for a validating parser to parse XML, it must read the entire document. This is simply not practical for even modestly sized databases, as most current XML parsers will attempt to read the entire file into memory.

    Granted, XML has some advantages. Data interchange among disimilar clients, for one. But storing XML in a database is a gross waste of space and processing power, and is realistically impossible for all but the smallest of databases.

    --
    The society for a thought-free internet welcomes you.
    1. Re:The problem with XML is... by Anonymous Coward · · Score: 0

      Wow, you really have no idea what you are talking about. First, there is no need to read the entire file into memory for parsing. Second, you generate the XML from the query or do the proper inserts/updates based on the XML provided, you don't typically actually store the XML in the database.

      That being said, yes there is processing overhead, but generally not a show stopping amount.

    2. Re:The problem with XML is... by MikeBabcock · · Score: 2

      We use XML as the format that is returned by the database.

      Requesting a list of clients and their sales will return an XML file that describes this list and sublists.

      We definately would not use XML as the actual storage format.

      --
      - Michael T. Babcock (Yes, I blog)
    3. Re:The problem with XML is... by kubrick · · Score: 1

      Not only this, but in order for a validating parser to parse XML, it must read the entire document.

      Of course. How could it tell if the document were valid otherwise? Should it just be generous ("Well, it *seemed* valid enough, so I let it go by...")?

      This is simply not practical for even modestly sized databases, as most current XML parsers will attempt to read the entire file into memory.

      "most current XML parsers" (I notice you don't say 'validating parsers' there, so you must mean all XML parsers, of well-formed (but invalid due to no DTD) as well as valid documents?) I'd like to see some evidence to back up this assertion. And don't just point me to a couple of random examples, I can provide counter-examples to those and we'd be here for years...

      --
      deus does not exist but if he does
    4. Re:The problem with XML is... by jdfox · · Score: 2

      What you need is some SAX. And drugs.

  13. My experiences with OODBMS by CmdrTroll · · Score: 2, Informative
    A couple of months ago, my employer got bit by the "OO bug" and decided to move several of our internal systems to Java-based solutions. Naturally, they hired several Java zealots who insisted that our DBMS will need to be converted to an OODBMS in order for their programs to work correctly (read: they were too lazy to implement a conversion layer). Although they were able to move things off our old HP 9000 servers and onto cheap PCs running Win2k, the JRE was rather unstable and slow compared to the old system (which, by the way, worked just fine).

    After several weeks of dealing with growing pains and general brokenness, my manager wisely decided to transition our systems back to a UNIX environment. I worked in the group that was responsible for this, and after obtaining source code to several of our accounting and inventory applications, we moved the operation over to a Linux 2.2 (Debian potato) system. Things have worked flawlessly since then, and the OODBMS and Java developers are long gone. The promise of an OO architecture was great, but it just didn't work out in the real world - Linux was the solution for us.

    -CT

    1. Re:My experiences with OODBMS by ergo98 · · Score: 1

      Wow your company is quick. A couple of months ago you started this new transition, hired a couple of Java programmers who implemented a solution, and you then realized it was flawed and moved it all back again giving up the OO pursuit. That's a pretty fast acting company that you have there.

    2. Re:My experiences with OODBMS by tmark · · Score: 2

      Uh, what exactly does converting to an OODBMS and "Java-based solutions" have to do with converting from (or to) a "UNIX environment" ? What does moving "the operation over to a Linux system" mean in the context of abandoning Java and/or OODBMS ? How does an "OO architecture" preclude or relate to using or not using Linux ? Moderators, in case you don't understand, the answer is that running a Linux or Unix system has nothing to do with whether or not use either OODBMSes OR Java - because both run on Linux/Unix, so the original post makes no sense at all.

      Methinks from the above (and your handle) that your post is a joke aimed at highlighting the moderator's ineptness. Shame on the moderator for letting it through - evidence enough that all you need to do be moderated up is throw in enough buzzwords to confuse the moderators (who don't really know much about the issues anyways).

      Now watch me get modded down.

    3. Re:My experiences with OODBMS by egomaniac · · Score: 2

      I'm assuming from your ID that you know perfectly well how silly your comment was, but since the moderators fell for it:

      JAVA RUNS ON UNIX. He just tossed out the Linux reference to get you guys to mod it up: "Ooh, Windows and Java failed! Linux worked! +1, informative!"

      The decision of whether or not you use Linux has absolutely nothing whatsoever to do with the decision to use Java and/or OO techniques. Further, I've never seen an unstable JRE in my life -- the JRE is the single most stable Windows app I have ever used (although the instability of Windows itself still leaves it undesirable). The last time I saw a JRE crash (even once) was, I believe, three years ago using JDK 1.2 beta 4. I program Java seven days a week, and it simply does not crash.

      And I'm also pretty impressed that you could hire new people, redesign a complex system, reimplement the new design in a completely different language/platform/database, realize it wasn't working, fire the new people, assign new people to the project, and transition over to yet *another* new platform in the space of a few short months. That's the quickest turnaround I've ever heard of.

      (Translation: this guy's a troll. Please stop handing the frickin' trolls karma points.)

      --
      ZFS: because love is never having to say fsck
    4. Re:My experiences with OODBMS by CmdrTroll · · Score: 2
      Perhaps I was not clear in my post. The problems we had with the OO system and original system were:

      • The OO system was designed around Windows 2000 and used the proprietary COM/Java interfaces. Porting it to any sort of UNIX system would be nearly impossible. And stability was a huge issue and we had reasons to believe it was the JRE and/or OS, not the software.
      • The old system was running on aging hardware, which was expensive to maintain and support. But since we obtained the source code, we were able to easily recompile it to run on Linux.

      We really didn't have a choice. Porting the original system to Linux was the most cost-effective option available.

      And yes, we did accomplish everything within a few months. Our developers spend significant amounts of time doing actual work (it's part of the corporate culture) and very little time playing your alleged "troll busting" game on Slashdot. That goes a long way toward explaining our unusually high productivity.

      -CT

    5. Re:My experiences with OODBMS by egomaniac · · Score: 2

      Proprietary COM/Java interfaces? As soon as COM gets involved, you're no longer programming Java -- you're using J++ or some other bastardized hybrid. Sounds like you hired idiots and got what you paid for.

      "...we had reasons to believe it was the JRE and/or OS..."

      I obviously have no retort to this other than to stand by my assertion that Sun's JRE is rock-solid. I have already stated that I would never use Windows in a production environment, but that's Windows' problem, not Java's. A real Java program could have been moved to any of the discussed platforms in a few minutes. I actually develop my server software on Windows and then deploy to Solaris, and in three years of doing this I've never had an issue.

      "Our developers spend significant amounts of time doing actual work (it's part of the corporate culture) and very little time playing your alleged 'troll busting' game on Slashdot"

      Yet, here you are posting on Slashdot, same as me. And you're implying that you guys are more efficient because ... why, again? Because 'troll busting' somehow takes more time than posting 'legitimate' messages?

      "That goes a long way toward explaining our unusually high productivity."

      It actually wasn't your high productivity I was commenting on. After all, the net result was that you spent a few months and (presumably) tens of thousands of dollars, and in the end all you accomplished was porting from HP-UX to Linux. That's a remarkably slow and expensive porting job. The bit I was commenting on was how quickly the plans were abandoned and the guys were fired -- you said "a few months", and presumably most of that time was doing the port. How long did you give them to try to fix it? It just sounded like the new plan wasn't given a serious chance for survival, but then I wasn't there so I don't know how long they dicked around with it.

      Everybody hires idiots now and then, and kudos to you guys for getting rid of them so quickly, assuming they really didn't know what they were doing. But these problems were not caused by Java, Windows, or an OODBS -- they were caused by incompetence, plain and simple.

      --
      ZFS: because love is never having to say fsck
    6. Re:My experiences with OODBMS by chris_mahan · · Score: 1
      Our developers spend significant amounts of time doing actual work (it's part of the corporate culture) and very little time playing your alleged "troll busting" game on Slashdot

      People that spend significant amount of time doing actual work appreciate Slashdot.

      --

      "Piter, too, is dead."

    7. Re:My experiences with OODBMS by kubrick · · Score: 1

      Look at the username... CmdrTroll.

      "CmdrKarmaWhoringFromLazyModerators" would be more like it for a comment like that, of course... :)

      --
      deus does not exist but if he does
  14. Re:xml is an interchange format, not a storage for by illtud · · Score: 3, Interesting
    Don't get me wrong, I'm a big fan of XML.. as a data interchange format.. but when i want tight storage and quick retrieval, give me a normalized RDBMS any day of the week. Because that's what it's for.

    But what if your data representation is already an XML schema? And a pretty complicated one at that? For example, look at METS : The METS schema is a standard for encoding descriptive, administrative, and structural metadata regarding objects within a digital library, expressed using the XML schema language of the World Wide Web Consortium. The standard is maintained in the Network Development and MARC Standards Office of the Library of Congress, and is being developed as an initiative of the Digital Library Federation.

    Have a look at that schema and tell me how you'd store that in a traditional RDBMS (I'd be interested if you could, because I know SQL, I don't know OODMBS or XML repositories - this is painful for me). Databases have been for storing data, but when your data is already a complex XML representation of an object, there's little use in saying don't use OODBMS.

  15. Re:OODBMS vs RDBMS by kin_korn_karn · · Score: 1

    I can't see any advantage to an OODB over an RDBMS. RDB is optimized and streamlined. OODB is new and bloated.

    I can see a lot of 'gee whiz' about OODBs, but RDBs are proven, stable, and have a lot of accumulated knowledge. Seems that nobody really knows how to write an OODB. All that object stuff belongs in UML diagrams, anyway.

  16. Re:xml is an interchange format, not a storage for by Anonymous Coward · · Score: 0

    and your shit funnel was "used by NASA for the Space Shuttle", fucking velocity of crap outa you would put anything in orbit. now for fucksake donta take your dads cock outa your arse or we'll end up in orbit beside charon.

  17. Re:xml is an interchange format, not a storage for by ZaneMcAuley · · Score: 1

    Basically, use the storage format that best suits your data and operations.

    Dont just say a generic response "Oh, lets stick it in a DB"

    --
    ----- Whats wrong with this picture? http://www.revoh.org:1234/whatswrong
  18. Resource on XMl Data Base by mir · · Score: 1

    THere was an interesting discussion on XML Data Bases recently on the XML-Dev mailing list, with several XML experts giving pretty interesting and not too biased opinion on the subject. You can find a summary of it by Leigh Dodds in :XML and Databases? Follow Your Nose.

    --
    Look, that's why there's rules, understand? So that you think before you break 'em. (Terry Pratchett)
  19. Re:xml is an interchange format, not a storage for by Skapare · · Score: 3, Insightful

    So what do you think of using XML for system configurations? That tends to be in UNIX systems a lot of separate files, traditionally edited with vi although today the tools are getting more and more dummy friendly and have a smaller space of possibiities.

    --
    now we need to go OSS in diesel cars
  20. Re:xml is an interchange format, not a storage for by ZaneMcAuley · · Score: 1

    .NET applications already do that.

    appname.exe.config which is XML instead of darn .INI files and regkeys.

    --
    ----- Whats wrong with this picture? http://www.revoh.org:1234/whatswrong
  21. Re:xml is an interchange format, not a storage for by Jammerlappen · · Score: 1

    Well, databases are for storing data, that's right. But what you've got inside your XML document is data as well, so there's no reason why you shouldn't store it in a database.

    Of course you'll get into performance trouble, if you import your XML data into a normaized RDBMS (converting it) ard export it afterwards (converting it again). That's exactly the reason why there's a need for XML-native databases (and it's also the reason why "XML-enabled" does not help very much).

  22. Re:xml is an interchange format, not a storage for by ergo98 · · Score: 5, Informative

    xml is an interchange format, not a storage format

    Absolutely, positively agree. Not only is XML only an interchange format, but it only makes sense in some situations (for instance if we have an embedded piece of hardware that we have to communicate with, and we're communicating to it from a Windows box, and there is no shared common data encapsulation format, I'd greatly prefer XML (with XSD) vastly over Jimmy the Programmer making up his own data encapsulation format/documentation method/extraction system, but if I have two Windows machines running SQL Server and they're in a common security context and they'll never change, I'd use DTS or replication, not XML).

    and MS SQL Server is seeing the same thing now that they've got the XML in theirs

    The XML "in" SQL Server is surface fluff (I love SQL Server and I'm saying this as a good thing, not a bad thing). i.e. Some modules that'll convert an XML query to an underlying DB query, and the results back to XML, and some basic XML importing and exporting routines. This hasn't affected the underlying operations of SQL Server whatsoever.

  23. Super short debunking of XML by Anonymous Coward · · Score: 0

    XML doesn't solve anything:

    it is a an immature and clunky form of Lisp, and Lisp has overcome these "interchange" problems decades ago. And Lisp has turned out to be a fine platform for programming language design and "other domains". XML is a buzzword, plain and simple, and will be forgetten in a number of years.

    XML's problem is that it has no provisions for a programming language's semantics. And adding them would be rather pointless, since Lisp has been doing this for far longer than most of you were alive, and in a much more elegant fashion.

    1. Re:Super short debunking of XML by silverbax · · Score: 1

      Lisp is elegant?

    2. Re:Super short debunking of XML by awaterl · · Score: 1

      Thank you for the interesting post. I have a question, though.

      While I find Lisp to be an elegant programming language, I have a hard time conceptualizing how to use it to interchange data. For example, how would you go about defining a structured format for a word processing document in Lisp?

    3. Re:Super short debunking of XML by Convergence · · Score: 2

      You can use sexp's:

      Note that you can have zero or more required arguments, zero or more optional arguments, and zero or more named arguments.

      (document
      :fontlist '((:new-york-12 "/lib/fonts/xxx" (serif xxx xxx xxx))
      :metadata '( ..... )
      :data
      '(
      (paragraph
      (
      "Hello"
      :space
      (style :bold t)
      "World."
      (style :bold f))
      :style ('serif 12 ....))))

      Where paragraph has one required argument, the data in the paragraph, and one or more optional keyword arguments containing the style, formatting, etc.

    4. Re:Super short debunking of XML by Courageous · · Score: 1

      Lisp isn't just a programming language. It's a programming language written using a universal representation that is always parsed the same way. As the other poster pointed out, this is called the "sexp" or "s-expression". It's of the form (something [possible various kinds of optional somethings]). The O.P. was quite correct. Lisp solved the "XML problem" 40 years ago.

      C//

  24. That would be ASN.1 then? by hattig · · Score: 2
    XML has been said to reinvent ASN.1 notation, but in a more readable format. ASN.1 is said to be a lot more compact than XML (I only have used it in SNMP MIB definitions, so I can't comment on size issues). XML is definitely a lot more human readable - great for the debugging stage of writing XML apps and DTDs...

    But a lot of effort has gone into XML, and we can afford the extra overhead now, and it is standard and widely available for most languages and platforms. It isn't time to throw that away. I would use XML for all now application development, however the benefits of migrating old applications and their datatypes to XML is marginal - why fix something that isn't broken?

    1. Re:That would be ASN.1 then? by Skapare · · Score: 2

      At least XML is more open than ASN.1 is. Not that that means a lot. You can debug ASN.1 with something a little more sophisticated than the "cat" or "more" command.

      I recently embarked on writing an XML parser because existing APIs IMHO sucked. But digging into the XML documentation, which was huge, also reveal a "mine field" of bizarre syntax and ambiguities. Meant for human consumption? Certainly machines could have some trouble with it. I went back to using expat, and of course find it to be buggy. But it is huge code and not easy to debug, so I just have to live with it for now.

      The first attempt I saw back in the early 1970's for this, and it appeared to have originated with early PL/1 or Algol work, was something IBM called HDF. Too bad they let it drop, even though I see it all over the place today; it's just not recognized.

      XML was intended for documents, and giving to those documents certain useful properties. The text string "John Smith" might not be so obvious that it is a name, but "<name>John Smith</name>" is. Then if someone wants their browser to make all names be hyperlinks to look them up in the staff directory, that works. But what is good as a document format just doesn't seem to be all that great for bulk data.

      So we have all this storage capacity and bandwidth, so let's waste it? Let XML turn a terabyte of database into two terabytes of text transfer format. That's the ticket! I think I'd rather go with ASN.1 and BER even if documents for them are not so readily available. But if those don't get opened up, I'm sure something new can be built to replace them as well.

      --
      now we need to go OSS in diesel cars
    2. Re:That would be ASN.1 then? by hattig · · Score: 1
      You could define your own subset of XML or ASN.1 for in-house data transmission. The problem comes with all this new fangled "B2B" connections and stuff, where common, standard formats are damn useful.

      Basically, if you, and only you will be needing to transfer the data, then do it in any damn way you want (tar czf data.tar.gz data ; scp data.tar.gz user@host: etc ). If you are transferring the data to third parties however, use a standard format as much as possible.

      Hopefully your B2B transaction will not be a 1TB database (hmmm, spammer email list sales? :) ) transaction. In that case however, you would probably spend some time getting the data to them in another manner, so it isn't relevant there. Yet.

    3. Re:That would be ASN.1 then? by Skapare · · Score: 2

      It doesn't need to be XML to be standard. Part of the problem I see is that XML (with DTDs) is trying to make it possible to have "standards" without a standardizing process. I see many pitfalls in that. But even a DTD doesn't really attach semantics to names. We're going to end up with a huge mess of DTDs all over the place. We'll be swimming in DTDs.

      My email list format is RFC822 addresses separated by newline characters. When you get the first copy you can look at that and see what it is. No DTD lookup needed.

      Who decides what DTD will be used as an interchange between businesses anyway? A committee? Why not just have a standards group decide these things?

      --
      now we need to go OSS in diesel cars
  25. Can we please, please, please append the definition of XML to allow "" to close whatever the last tag was?

    That simple change would probably cut the size of the average XML file in half.

    --
    Sometimes it's best to just let stupid people be stupid.
    1. Re:RFC by Reality+Master+101 · · Score: 2

      Can we please, please, please append the definition of XML to allow "</>" to close whatever the last tag was?

      That simple change would probably cut the size of the average XML file in half.

      (corrected post, please moderate my other one down. I have plenty of Karma...)

      --
      Sometimes it's best to just let stupid people be stupid.
    2. Re:RFC by Reality+Master+101 · · Score: 1

      *sigh* I meant to post this at the top level... RM/101 out of control.

      --
      Sometimes it's best to just let stupid people be stupid.
    3. Re:RFC by Anonymous Coward · · Score: 0

      Really, when people are making a point they should try not to over exagerate things. In the end all it does is weaken your stance. Clearly it's impossible to reduce the size by half using this scheme. You would be better off enforcing scheme that requires you to only use 1 char tag names until they are all exhausted, then goto 2 char, etc.

    4. Re:RFC by ez76 · · Score: 2
      Can we please, please, please append the definition of XML to allow </> to close whatever the last tag was?

      This would take away from the self-documenting nature of XML, I think.

      Inevitably, authors would begin terminating their deeply nested documents with tags like:
      </></></></></>
      which is a lot less informative/helpful/debuggable than:
      </address></contact></vendor>&lt /prospect>
      Know what I mean?
    5. Re:RFC by Reality+Master+101 · · Score: 2

      You would still be able to do it that way, but I don't see the advantage of requiring the trailing tags. If you're creating files that are only ever going to be read by machines, it makes no sense to waste the space. Heck, if you're debugging something that always used the "shortcut", it would be trivial to make a little filter to fill in the trailing tags with the full names.

      The biggest problem with XML is the incredibly wasteful and verbose nature.

      --
      Sometimes it's best to just let stupid people be stupid.
    6. Re:RFC by Anonymous Coward · · Score: 0

      I'm sure you've read the design guidelines for XML from the spec, so:

      You would still be able to do it that way, but I don't see the advantage of requiring the trailing tags.

      The number of optional features in XML is to be kept to the absolute minimum, ideally zero.

      If you're creating files that are only ever going to be read by machines, it makes no sense to waste the space.

      XML documents should be human-legible and reasonably clear.

      The biggest problem with XML is the incredibly wasteful and verbose nature.

      Terseness in XML markup is of minimal importance.

    7. Re:RFC by Reality+Master+101 · · Score: 2

      Look, I respect the Ivory Tower as much as the next guy, but at some point you need to live in the real world.

      The number of optional features in XML is to be kept to the absolute minimum, ideally zero.

      Agreed. It's a cost/benefit analysis. It seems to me that my suggestion has a HUGE benefit at a very slight cost.

      XML documents should be human-legible and reasonably clear.

      Minimal legibility is sacrificed. The opening tag is the important one, not the trailing tag.

      Terseness in XML markup is of minimal importance.

      Apparently it is to you, but not to those of us who have suffered this problem. The average document would get have the size, but many documents would become 1/10th the size. Think about a database with lots of single character data, but with long column names.

      --
      Sometimes it's best to just let stupid people be stupid.
    8. Re:RFC by spitzak · · Score: 2
      Terseness in XML markup is of minimal importance.

      Nonsense. All the XML I have seen insists on using 1-letter command names in order to get things reasonably short. I fully agree with the original poster, having shorter close tags would probably halve the reasons for these short tags and actually make things more readable.

      In my opinion XML is a mistake. We should have copied ASCII design, which reserved 32 control characters for exactly this purpose.

      I would like to see an XML replacement where the text is UTF-8, there are NO "escape" sequences. And "<" is replaced with the control character "^[", ">" is replaced with "^\", close commands replaced with "^]", and '="' is replaced with "^[" and closing quote replaced with "^]".

      This would change "<command arg="foo">data</command>" into "^[command arg^[foo^]^\data^]" and would be much easier for a program to parse and editors could be made to display this in a user-friendly way just like they special-case ^J and ^I now.

      Other more controversial ideas I had:

      ^A, ^B, etc (all except ^I..^M) mean the same as ^[A^\, etc, so they are 1-byte shortcuts for all 1-letter commands.

      ^^...^J is a comment, ie ^^ is defined as introducing an end-of-line comment. This can also be used to remove linebreaks from the data.

      The sequence ^M^J should cause the machine to crash immediately :=)

    9. Re:RFC by Anonymous Coward · · Score: 0

      I'm going to assume for a moment you're *not* trolling. The syntax you propose is impossible to hand-code on any large scale without making a hard-to-find mistake (not to mention it's friggin ugly...) There are plenty of non-programmer types (like web developers and graphics artists) that can handle XML, but control characters and such just wouldn't fly.

    10. Re:RFC by Tony-A · · Score: 1

      Think about a database with lots of single character data, but with long column names.
      The optimal transfer is a COBOL Logical Record, but you have a major problem if the reader does not have the same exact version as the sender.
      The trailing tag is just as important as the opening tag. Stuff inside the tags belongs to the tag. Stuff outside the tags does not belong to the tag. If you want to save a few characters, use LISP. It's terse to the point of being cryptic. Thirty close-parens in a row, none of them optional.

    11. Re:RFC by radish · · Score: 2


      are you quite mad?

      For one thing you don't need to write an XML parser...who the hell writes XML parsers?? The whole point is you use Xerces or [insert-fave-library-here].

      --

      ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

    12. Re:RFC by spitzak · · Score: 2
      I would completely expect a parser library, just like for XML.

      The main purpose of eliminating escape sequences is so that the parser can produce pointers to the input buffer and lengths to indicate the text data. The need to allocate copies of all the string data is one of the reasons XML parsing is not suitable for data transfer.

      I admit that as it is typed the syntax is ugly. However if tab characters were shown as ^I by your favorite text editor you would think it ugly as well. We should admit that the raw data does not have to be viewed by humans with old software, and make editors that handle this correctly.

  26. Or both... by azaroth42 · · Score: 1

    Or you use the best of both worlds - a database system like Cheshire which parses XML into a flat RDBMS (in this case the open Berkeley DB3). Cheshire is Free, as in almost. (Not-for-profit licence from UCB)

    We use Cheshire for serving large documents which you can search based on the indexes built at database load time. While in theory you may want to search on arbitrary XML paths, 99% of the time what you really want is a simple named search. (author, title, subject, keyword, full text etcetc.) so by reducing the XML into a flat format you don't lose any significant functionality. 99.99% of people would be confused by searching on a 'tag' or 'XPATH' -- they have a concept in mind of what they're looking for, and how you represent that in your underlying data is irrelevant to them, as it should be.

    -- Azaroth

  27. XML + XSL(t) client side database. by jelwell · · Score: 3, Interesting
    I actually wrote a client side database recently, where all the processing is done on the client. I use Javascript, XML and XSL(T).

    It requires Netscape 6.(not out yet), IE 6, or Mozilla 0.9.5+ because of it's use of XSL Transform functions.

    You can view the page here.

    Joseph Elwell.

  28. Re:xml is an interchange format, not a storage for by TechnoVooDooDaddy · · Score: 2

    well, i'd site my own performance tests ran here at this company, but my NDA prevents me from publishing anything.. so, i used the NASA reference. I encourage anyone with the resources to do the same, and use what works best for you...

  29. Re:xml is an interchange format, not a storage for by BroadbandBradley · · Score: 3, Informative

    Linuxfromscratch.com has a project that aims to automate the process of building your own linux setup storing configuration files in XML, read the intro page they propose you could go to a website and fill out a survey type form to define your system, which would create a configuration file that could build everything correctly. It sounds to me like a huge undertaking but if distros chimed in on this and contributed the tools and expertise they have in how to install a linux system automagically, Automated Linux From scratch could become a standard tool used by anyone wanting to setup linux on anything. To go one step further and convert my /etc directory to MPXML (My Penguin XML...I made that up) well I don't know if this would be a good thing.

  30. Oracle vs. MySQL performance by Raul+Acevedo · · Score: 3, Insightful

    Comparing Oracle and MySQL performance in the context of XML is silly. It is a well-known fact that MySQL is significantly faster than Oracle, but not because of XML, Java, or other "OO crap". It is simply because MySQL doesn't have transactional support, and probably a host of other non-OO high end RDBMS features.

    I wouldn't be surprised if "OO crap" does indeed slow down Oracle, but I know the JVM for Oracle is completely optional. I can't speak to any XML features in Oracle, I'm not familiar with them.

    --
    In a real emergency, we would have all fled in terror, and you would not have been notified.
    1. Re:Oracle vs. MySQL performance by haruharaharu · · Score: 2

      is simply because MySQL doesn't have transactional support

      Actually, the newer versions are adding transactions. They still have table locking, so performance will probably suffer if you have alot of concurrency.

      --
      Reboot macht Frei.
    2. Re:Oracle vs. MySQL performance by Raul+Acevedo · · Score: 2

      I did hear about this... I wonder what performance will be like; can they maintain similar performance, or will they have an option to turn transactions off for speed?

      --
      In a real emergency, we would have all fled in terror, and you would not have been notified.
    3. Re:Oracle vs. MySQL performance by Anonymous Coward · · Score: 0

      And table locking is simply not an option, even in many non-transactional systems. Try loading a gig of updates to a warehouse while simultaneously querying it some time and see if your query runs...

    4. Re:Oracle vs. MySQL performance by wilhelm9 · · Score: 1

      It does mean nothing to say that 'MySQL is significantly faster than Oracle'. In what context? What exactly is faster with MySQL?

      In my experience it is true that MySQL is fast for those really simple 'select my_column from my_table where primary_key=1' type of queries.

      In the below situations, most other products (PostgreSQL, Oracle, Mimer SQL, or whatever) performs better than MySQL:
      - More than a few simultaneous users.
      - More complicated queries.
      - Database is occasionally updated.

      It is irrelevant to claim that MySQL performs better in this and that situations because of its lack of transactional support. Most other products supports different flavors of transactions, or even running without transactions, just like MySQL does. If you want to compare Oracle and MySQL you should compare with MySQL:s transaction tables or use the lowest possible transaction isolation provided by Oracle.

    5. Re:Oracle vs. MySQL performance by a_n_d_e_r_s · · Score: 1

      You can select which tables that support transactions and which don't. That way you get both worlds; fast tables without transactions where you need it and slower tables which contains transaction support.

      --
      Just saying it like it are.
  31. What is this? by jfonseca · · Score: 0

    Anyone explain this to me :

    Linux brainstorm

    --
    Broken Hearts are for Assholes. - Frank Zappa
  32. Closed minded people sadden me... by Sean+Starkey · · Score: 3, Informative

    It makes me sad to see all of these closed minded people when it comes to XML. They just haven't seen what XML can do and have been turned away from previous work in XML. XML can be used for data storage, and has many advantages.

    XML allows data to be stored with context. For example if you have the data element "CmdrTaco", that doesn't mean much. But with xml, you can store this bit of information with context:

    <SlashDot>
    <Editor>
    <Name>CmdrTaco</Name>
    </Editor>
    </Slashdot>

    Isn't that more informative?

    It is surprising to me that people who like OO don't like XML. OO allows you to have functionality attached to your data. XML allows you to put context (and even functionality) around your data.

    Another big advantage of XML databases is the lack of a schema. If you want to have a dynamic database is the relational world, you are looking at a large schema migration. An XML database allows you to just add the information with no migration at all.

    Advanced storing techniques allows query of the XML database to be just as fast as a relational database. How can that be? The XML is stored in a specialized indexed form that allows for fast retrival.

    Sure, there are applications where it doesn't make sense to use an XML database. Using an XML database to store relational data doesn't make sence, that's what relational databases are for. But if you can think outside the mold, and store your data in a new way, XML databases are for you.

    I might be a little biased in this area, since I work for a XML database company (http://www.neocore.com). I have seen XML in action, and it is more than just a data transport. I hope that I can convince at least one person to look at this advanced technology.

    1. Re:Closed minded people sadden me... by Black+Parrot · · Score: 2


      > But with xml, you can store this bit of information with context:

      <SlashDot&gt
      <Editor>
      <Name>CmdrTaco</Name>
      </Editor>
      </Slashdot>

      Isn't that more informative?


      Yes, and I can do the same thing in Scheme with about half as many characters, and with the added advantage of being able to treat parts my data and stylesheet as executable code if I wish.

      Nor do I have to reformat it with a bunch of ampersands to post it to Slashdot, by the way.

      (SlashDot
      (Editor
      (Name CmdrTaco)
      )
      )

      Even more readable, IMO.

      Oh, and people had been doing this for years before XML was ever misbegotten.

      XML: More snake oil to the rescue.

      --
      Sheesh, evil *and* a jerk. -- Jade
    2. Re:Closed minded people sadden me... by MrBoring · · Score: 1

      What advanced storage techniques? If there are such, they need to be more prominently published. Also, if XML needs to be stored in a more compressed form, why can't XML be passed in a compressed form? Why can't it just be text compiled into a binary encoded format? Use commonly available open source code to read it.

      Let's get away from this obsurd notion that everything has to be done in text. It's not faster. It's not more portable. Spelling tags out instead of using symbols doesn't make things platform independent. Just because you can't use a regular text editor doesn't make it harder to use. Just faster.

      XML is another attempt by bad software engineering practices to slow down good hardware engineering practices.

    3. Re:Closed minded people sadden me... by Merk · · Score: 2

      I've noticed XML is basically Scheme too. One question though, how do you do XML attributes in Scheme?

      <Slashdot>
      <Editor Type="Full-Time">
      <Name>CmdrTaco</N ame>
      </Editor>
      <Slashdot>

    4. Re:Closed minded people sadden me... by statusbar · · Score: 2

      How about this?

      (Slashdot
      ((Editor
      (type Full-Time)
      (worthless-stock-options yes))
      (name CmdrTaco)))

      --jeff

      --
      ipv6 is my vpn
    5. Re:Closed minded people sadden me... by Merk · · Score: 2

      Well that breaks stuff, right?

      If elements with attributes start with two parentheses that makes them different from elements without attributes. There's gotta be a way since the SSAX project has to handle it somehow.

    6. Re:Closed minded people sadden me... by brenfern · · Score: 1
      How about association lists?

      (Slashdot
      (Editor '((type Full-time)(name cmdrTaco))))

      If you really want attributes you can do it Common-Lisp &key style:

      (Slashdot
      (Editor :type Full-time :name cmdrtaco))

      Though of course you'd need to roll your own &key handling.

    7. Re:Closed minded people sadden me... by Black+Parrot · · Score: 2


      > Well that breaks stuff, right? If elements with attributes start with two parentheses that makes them different from elements without attributes.

      I wouldn't use the double parens. Something like -

      (Editor
      (type Full-Time)
      (worthless-stock-options yes)
      (name CmdrTaco)
      )

      would work. In fact that's what I would probably do (depending on exactly what I needed to represent).

      Notice that if you have already found the Editor structure, you can take the cdr to get a list of key-value pairs, and use assoc to find the key-value pair that you want.

      This can be abstracted pretty easily into a hierarchy of lookup tables, and you can write really simple functions to extract the parts you want.

      --
      Sheesh, evil *and* a jerk. -- Jade
    8. Re:Closed minded people sadden me... by Howie · · Score: 2
      XML allows data to be stored with context. For example if you have the data element "CmdrTaco", that doesn't mean much. But with xml, you can store this bit of information with context:

      [snip]

      Isn't that more informative?



      When was the last time you looked at the data files of your database system? I don't think I've ever looked at the actual on-disk data of MSSQL or MySQL in quite some years. Who gives a rats arse whether that data is readable? The output from the database perhaps, but thats a formatting issue, not an architectural one.

      --
      "don't fall into the fallacy of believing that Perl can solve social problems. Maybe Perl 6 can, but that's a ways off"
    9. Re:Closed minded people sadden me... by ahde · · Score: 1

      It looks like your company, NeoCore, has a good idea. One of the big complaints about xml is that in the absense of standardization, everyone just creates their own DTDs or schemas. The fact is that most companies have highly structured specific documents that they need to keep records of, like purchase orders. It can be very painful to change a RDBMS to match a new marketing scheme or billing system. XML is a very good fit. A binary store decreases size and improves retrieval performance, but you can manually search or modify the XML.

    10. Re:Closed minded people sadden me... by Merk · · Score: 1

      But you're missing my question. How do you distinguish between child elements (Name) and attributes (Type, worthless-stock-options).

    11. Re:Closed minded people sadden me... by Black+Parrot · · Score: 1


      > But you're missing my question. How do you distinguish between child elements (Name) and attributes (Type, worthless-stock-options).

      I'll acknowledge that attributes may have some use that hasn't occured to me which is driving your question, but as it is I have never seen any reason to split out "attributes" and "children" into separate semantic classes. Attributes look to me like extra syntax thrown at a non-existent problem.

      If I really needed to make that distinction, I'd just do:

      (blah
      (attributes (a1 blah) (a2 blah) ...)
      (child1 blah)
      (child2 blah)
      )

      or something like that.

      --
      Sheesh, evil *and* a jerk. -- Jade
  33. Re:xml is an interchange format, not a storage for by 3am · · Score: 1

    real db tables aren't so different from csv files... it's the way that they are accessed by the db app. i think that really good dbms's are tuned so that they take advantage of page sizes in primary storage devices, while spreadsheets will not do that.

    logging and being able to roll back changes are other huge plusses to a real dbms.

    --

    A: None. The Universe spins the bulb, and the Zen master merely stays out of the way.
  34. XML == bad job by jeti · · Score: 1

    Doesn't anyone else think that a pretty bad job was done on XML?

    Don't get me wrong - saving data as plaintext with tags to mark the structure is ok as long you don't have to care too much about footprint. This was done long before XML was specified. Chomski did all the basic work on generative grammatics ages ago. It was simply necessary to put this old stuff into a simple standard.

    IMO they did a bad job. Probably SGML was specified before UTF was. But when a new standard is created, it really shouldn't support dozens of old encodings. And allow to change them on the fly. It makes the parsers big, slow and complicated. And I simply hate how CDATA looks. Plus the DTDs obviously aren't/weren't a contender.

    All in all I think specifying XML was a pretty trivial job. And the result is lousy.

    1. Re:XML == bad job by Black+Parrot · · Score: 1


      > And the result is lousy.

      See my response to the thread "Close minded people sadden me."

      --
      Sheesh, evil *and* a jerk. -- Jade
    2. Re:XML == bad job by Zeinfeld · · Score: 2
      IMO they did a bad job. Probably SGML was specified before UTF was

      Perhaps your opinion does not count for very much if you don't know enough about the subject you are prattling on about that you have to make such an inane statement.

      SGML predated UTF by at least a decade. SGML also predated the fad for reading Chomsky in the compiler writing community. The original SGML 'standard' is more or less documentation of Goldfarb's original code (COBOL from the looks of the spec).

      XML is a cleanup of SGML which removes the more demented parts of the original architecture. The DTDs are one such part.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    3. Re:XML == bad job by jeti · · Score: 1

      Yes. I suspected that SGML is age old. But they either should've cleaned it up more or started XML from scratch.

      However it hardly disproves my points:
      1. Many font encodings, changeable on the fly -> slow, big parsers. If the encodings are optional, it only increases the mess.
      2. No escape sequence (&lt, &gt, &amp instead) -> ugly.
      3. CDATA - can't define closing sequence -> embedded binary data has to be checked, maybe transformed.
      4. DTDs were a noncontender.

      I still think in specifying the standard (XML not SGML) mostly trivial choices had to be made. And I disagree with a lot of them. It's a pain to write a XML parser. I can't understand the hype.

    4. Re:XML == bad job by Zeinfeld · · Score: 2
      Your points only show your ignorance.

      Escaped encodings are fragile. Backwards compatibility with SGML was a major requirement for XML. DTDs are obsolete and have been replaced by schema.

      If you don't like the result, tough.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
  35. RFC (corrected) by Reality+Master+101 · · Score: 5, Interesting

    Can we please, please, please append the definition of XML to allow "</>" to close whatever the last tag was?

    That simple change would probably cut the size of the average XML file in half.

    (corrected post, please moderate my other one down. I have plenty of Karma to spare...)

    --
    Sometimes it's best to just let stupid people be stupid.
    1. Re:RFC (corrected) by Anonymous Coward · · Score: 0

      Can we please, please, please append the definition of XML to allow "" to close whatever the last tag was?
      You got my vote! I never understood why they chose to do it that way either. In SGML/HTML having named closing tags made sense since some tags could be left open and implicitly closed by the beginning of other tags - but it is not a valid construct in XML, and as such - redundant and wasteful. It's equivalent to the useless /* end for loop */ comment in code.

    2. Re:RFC (corrected) by mozkill · · Score: 1

      also, lets emphasize exactly what were asking for:

      bazgrumble

      is NOT equivalent to

      bazgrumble

      but IT IS equivilant to:

      bazgrumble

      !!!!!!!!!!

      --

      -- Betting on the survival of the media industry is a serious risk. I advise investing elsewhere.
  36. More XML nonsense... by brams · · Score: 0, Flamebait

    This is another characteristically flawed discussion on the promises of XML.

    Platform independence. Nope. This depends on the committment of hardware and software manufacturers to build compatible cross-platform technologies -- and commit to them for long periods of time. Parsers, browsers, OS's, databases, languages, etc. What are we learning with Java? Sun and Microsoft can't even come to agreement on it. Just how many browsers out there support the full range of XML implementation? Who's going to dominate this battle? Who's going to lose?

    Data interchange vs. data storage. Things like Xscheme, xquery, etc. are all duplicates of technologies which have existed in RDBMS technologies for 20 years. Most of the XML apps. I've seen look like a trip backward in time, to the days of flat and denormalized databases.

    The glorious w3c. It's $50,000/year to join, and dominated by Fortune 1000's. Is this the best drumbeat that we should all march to?

    The Layered Network Model. XML is a little problematic for me in that, if used to send tags to a browser, seems to violate the basic separation of presentation, session, and application layers. The definitive data source must be server-side, and HTTP (with a presentation layer!) is hardly the best place to be doing data conversions. Probably a dedicated socket elsewhere. Why involve the client and a browser in the exchange of data formats? XML re-invents the wheel and puts it on the wrong place of the carriage.

    I have a fuller discussion on the problems of XML here: http://www.tc.umn.edu/~brams006/mortality.html.

  37. Re:xml is an interchange format, not a storage for by ivan256 · · Score: 2

    is hardware bound. That means, add better hardware on it and u get a perf increase to match

    Huh?

    What tasks don't perform faster when you run them on faster hardware? Are you trying to say that the code and architecture are absolutly optimal, and no performance gains are possible without a hardware upgrade? Not likely.

  38. Re:xml is an interchange format, not a storage for by DerOle · · Score: 1

    XML is for exchanging data (for sure, i'm not the first to figure this out), but Oracle has really nice XML - Support for im- and exporting data via the XSU (XML SQL Utility). Just give a XML file and the data is inserted into the DB and exporting is even easier. Thats why I dont like MySQL (even with PHP).

  39. Hype MeToo Hype MeToo Hype MeToo by kazzuya · · Score: 1

    Microsoft said "XML Good" and the VB disciples followed.

    It's one of those things your boss tell you to implement cause it's the thing to do, but nobody really has idea of what it's all about. Personally I think it's a big load of BS.

    This is not a file format, it's just a syntax, how is it going to help any exchange ? Maybe will be easier to reverse engineer Word format.. at the expense of some serious data bloat.

    Dump the hype and get busy doing some real coding !

    1. Re:Hype MeToo Hype MeToo Hype MeToo by ers81239 · · Score: 1

      Agreed. I once had a manager tell me that all of the parameters to my functions had to be strings of XML. Even private functions.....can you imagine?

      The horror....the horror......

      --
      there are 2 kinds of people. those who divide people into 2 kinds, and those who don't.
  40. Re:xml is an interchange format, not a storage for by Anonymous Coward · · Score: 0

    Oracle takes it up the backend processor.
    They are optimised for insertions.

  41. Re:xml is an interchange format, not a storage for by Jupiter9 · · Score: 1

    Christ you've got to be kidding. We're talking about REAL datastores here. Sure if you're talking about 1-10mb worth of information over a trusted user base, Excel might be fine. But in a real datasource model, with gigs of information at an undefined userbase, Excel has no abilities. Not to mention having no data integrety.

    --

    --
    Does anyone remember /\/\/\?
  42. Worst of Both Worlds by zulux · · Score: 2

    There's this German textile management system called Koppermann that I was curious about - it's really flexable as far as I could tell. Whell, I fired up the ODBC browser to take a look in its MS-SQL tables as I kid you not: THEY IMPLEMENTED AN OO DATABASE IN A FLAT TABLE DATABASE. The had a giant user interface table that had rectord like this:

    ControllID
    ParentControllID
    DataType
    FormLocationX
    FormLocationY

    Then they had a giant data table like this

    DataID
    ParentDataID
    ControllID
    Data

    Argh! The madness of it all. Everything of substance was in these two tables. I'll admit that it's a nice hack, and they can tell all their clients that their data is 'easily exported into a CSV file.', but good greif! It reminds me of those people whoe made so many # define macros in C as to make it look like Pascal.

    --

    Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.

    1. Re:Worst of Both Worlds by pkesel · · Score: 1

      There's this German textile management system . . .

      You mean like a bureau or drawers? I store my linens in a closet, my socks in the dresser. Most of my pants I have on hangers. I don't think any of them are German though. And I don't think there's an XML standard for pants.

      --
      - Sig this!
    2. Re:Worst of Both Worlds by 3am · · Score: 1

      Nope, it's XPants and it's been registered with the w3c, patented 5 times, and back with 30 million on venture capital.. i understand it will revolutionize how the e-world sees pants.

      --

      A: None. The Universe spins the bulb, and the Zen master merely stays out of the way.
    3. Re:Worst of Both Worlds by zulux · · Score: 1

      The database is used for clothing manufaturers and designers - now that you know that, then parsing 'German textile management system' should be a bit easier.

      --

      Moneyed corporations, non-working 'poor' and criminal prisoners are turning productive citizens into tax-slaves.

  43. Stop mixing everything up. by mpcooke3 · · Score: 1

    I also know of people who have had bad experiences of using OODBMS but you seem to be mixing up several issues in your post.

    I don't think the fact that your company developed a poor Java application running against an OODBMS can justify statements like "The promise of an OO architecture was great, but it just didn't work out in the real world - Linux was the solution for us."

    I've seen many fast and stable OO Java Applications running under Linux/Apache/Resin and connecting to a RDBMS. The applications are easy to develop/maintain and are very reliable.

    A system is only as reliable as it's weakest link be this an OODBMS, poor coding or Windows/IIS.

    Matt.

  44. Re:xml is an interchange format, not a storage for by ManxStef · · Score: 1
    Stretching a bit into the realms of OT here, but I'm quite surprised that NASA are porting from Oracle to MySQL. Don't get me wrong, MySQL is good for what it does, but it's not a full RDBMS as it claims to be (no real transactions, no foreign keys, no sub-selects, no views; all essential for a robust DB). Failing the ACID test is a big minus in my opinion, 'cause personally I care more about data integrity than about speed (but maybe that's just me!).

    There's a good article here called "Why Not MySQL?" by Ben Adida [mailto], part of the OpenACS Project [openacs.org], on why MySQL wasn't the right choice for OpenACS (at the time). It's quite out of date (and is recognised as such by the author), but still worth a read, and there many interesting submitted comments. Take a look at some decent free RDBMS alternatives such as Firebird (open-source free Interbase) or PostgreSQL while you're at it. Oh, and there's plenty more dicussion on MySQL in a previous Slashdot article here.

    Stef

  45. Re:xml is an interchange format, not a storage for by Anonymous Coward · · Score: 0

    I got tight storage and retrieval facilities, MY ARSE.

  46. Re:xml is an interchange format, not a storage for by MikeBabcock · · Score: 2

    There are several database systems that do not scale well. The point the poster was trying to make was probably that it does scale well.

    --
    - Michael T. Babcock (Yes, I blog)
  47. whois going to use IT by Anonymous Coward · · Score: 0
    We've been in the medical inf. sys. bus. for a while. We've found that canned rdms' work fine on LANs. We're working with mysql, etc... for developing web based systems. Presently, we'd wonder how many new holes are to be discovered with xml? medical inf. is sensitive stuff.

    Now that fud is dead, don't forget to enter our big URL giveaway, so you'll be ready to play into the gnu millennium. Includes a year's free hosting. Whatever.

  48. Re:xml is an interchange format, not a storage for by platos_beard · · Score: 1
    RDBMS are great for storing well-structured data, and no person, article, web page, or whatever that I've ever seen has suggested XML as an alternative.

    On the other hand, a lot of data is semi-structured. It can benefit from being searchable in a straightforward manner, as XML can be, but how it will be searched isn't clear enough ahead of time to optimize an RDBMS schema for it. Furthermore, there is no reason why it needs to be accessed with a high level of performance. TPS don't matter, it's not going to be hit that hard and that long.

    Just because an RDBMS may be best for an airline ticketing system, doesn't make it best for a medical record system.

    --
    What's a sig?
  49. Re:xml is an interchange format, not a storage for by Winged+Cat · · Score: 1

    Your tax dollars at work: not wanting to play favorite, the government buys from everybody, regardless of whether the bought stuff even works. Right?

  50. Performance by GreenCrackBaby · · Score: 2, Informative

    OO databases mixed with XML == Very bad performance

    This may be great for acadamia, or perhaps small projects, but in "The Real World"(tm) this won't fly. As a performance guy working on a big system, I can tell you that using OO databases and/or XML queries/storage will butcher performance.

    For most of our clients, performance is the #1 concern, as that is what dictates hardware. Buying one 32-way p680 for a typical RDMS solution -vs two for a fancy OO/XML solution isn't much of a choice.

    --

    "The market alone cannot provide sufficient constraints on corporation's penchant to cause harm." -- Joel Bakan
    1. Re:performance by duplicatedAccount · · Score: 1

      233 MHz Pentium II + XSLT + mandatory access control == apache performance

      You see, some things work

  51. They'd never do that... by alispguru · · Score: 2

    ... because if they did, people might realize that:

    <foo> <bar>baz</bar> <mumble>grumble</mumble></foo>

    is equivalent to

    <foo> <bar>baz</> <mumble>grumble</></>

    which is semantically equivalent to

    (foo (bar "baz") (mumble "grumble"))

    And if they did that, they might have to admit that XML is semantically equivalent to Lisp S-expressions, and not a major advance in computer science after all.

    And they'd never do that.

    --

    To a Lisp hacker, XML is S-expressions in drag.
    1. Re:They'd never do that... by mozkill · · Score: 1


      bazgrumble

      is NOT equivalent to

      bazgrumble

      but IT IS equivilant to:

      bazgrumble

      --

      -- Betting on the survival of the media industry is a serious risk. I advise investing elsewhere.
    2. Re:They'd never do that... by alispguru · · Score: 2

      Please try your post again, and this time be sure to choose "Extrans (html tags to text)" instead of "Plain old text". Slash clobbers html-like postings unless you do that, as I discovered the first time I previewed my posting.

      --

      To a Lisp hacker, XML is S-expressions in drag.
    3. Re:They'd never do that... by TheSync · · Score: 2

      This comes from the same group of thinkers that think:

      (car (cdr (car (cdr (cdr (car "x y m q")))))))))))

      Is cool - and thus, we have editors that automagically balance parenthesis. But don't get me wrong, I have a real appreciation for people that can do "real programming" (like video codecs) in Lisp.

    4. Re:They'd never do that... by Anonymous Coward · · Score: 0

      they might have to admit that XML is semantically equivalent to Lisp S-expressions, and not a major advance in computer science after all

      I don't think the computer science debate is the foremost problem. It's the fact that 99.99% of commercial software didn't support Lisp S-expressions, so they were worthless in practical use.

      Re-inventing existing ideas to give them another chance at commercial adoption isn't necessarily the worst thing. At least the SGML people realize this, if the Lisp people don't. (If it makes you feel better, perhaps the W3C could put a footnote on the XML spec owing their debt of gratitude to Lisp. Wouldn't change a single thing in the real world.)

    5. Re:They'd never do that... by Zeinfeld · · Score: 2
      Nobody ever claimed that XML is a major innovation in lexical encodings. Neither for that matter is LISP which is no more than Lambda calculus.

      The reason why XML uses the notation it does is that it is somewhat more robust. The problem with S-Expressions is that one misplaced parenthesis can cause the entire semantics of the expression to be changed, or as we computer scientists say 'be fucked beyond recognition'.

      Most major advances in computing are not major advances in computer science. There was absolutely nothing original in C, it was merely a version of B with a few additional features added back from BCPL which was itself merely a subset of CPL which was merely a revision of ALGOL and so on.

      Packaging counts for an awful lot.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    6. Re:They'd never do that... by alispguru · · Score: 2
      Nobody ever claimed that XML is a major innovation in lexical encodings.
      Lots of people claiim XML is going to change the world; the hype level surrounding it is astounding. You're not, and I thank you for that.
      Neither for that matter is LISP which is no more than Lambda calculus.
      I take minor issue with that. Lisp is the lambda calculus, made useful. Go look at this for more.
      The problem with S-Expressions is that one misplaced parenthesis can cause the entire semantics of the expression to be changed, or as we computer scientists say 'be fucked beyond recognition'.
      And this is different from dropping one {double-quote/greater-than/closing XML tag} in what way? Redundancy is good, redundant redundancy is bad. The only case where the redundancy matters is when the parser fails, and a human tries to repair the damage. In either case, you want a smart editor to help you, and S-expressions are easier to parse (hence more editors support them than do XML).
      Packaging counts for an awful lot.
      Exactly the right words for XML. XML is a lot of awful packaging, full of syntactic complexity without semantic benefit. What, for example, is the justification for the difference between XML attributes and XML contents, other than "the DTD treats them differently"? XML schemas are trying to fix this, but since they have to maintain backward compatibility with DTDs, they'll never get back to anything nearly as clean as S-expressions.

      Me, bitter? Depressed? Yeah, a little...
      --

      To a Lisp hacker, XML is S-expressions in drag.
  52. Re:xml is an interchange format, not a storage for by Anonymous Coward · · Score: 0
    The other way to get a performance gain is to change the software. I think he means that this would be unneccessary as the software is very good and only limited by hardware.

    The other end of the situation is where software is flawed and has problems scaling. In this case more hardware may not have a noticable affect.

  53. Your criticisms are naive by Ars-Fartsica · · Score: 2

    Of course most of us understand the idea of structured data. The point is there are already better ways of storing and retrieving structured data on a server, and very little compelling reason to send content-oriented data through to the web client, where presentation rules and all attempts at disintermediating presentation have fallen flat.

  54. Best of both worlds... by StudentAction.CA · · Score: 1

    I've found that the ODBC Socket Server (odbc.sourceforge.net)

    From the site: ODBC Socket Server is an open source database access toolkit that exposes Windows ODBC data sources with an XML-based TCP/IP interface.

    You make the Query in XML, it converts the query back into SQL, and then returns XML again. Let's you use XML when you want to, and SQL when you want to. Also makes a great tool for accessing M$ DB's from a Unix enviroment. It's fast, stable, and Open Source. Check it out.

    --
    Driven by 100% sarcasm - fueled by the need to be heard.
    1. Re:Best of both worlds... by Anaplexian · · Score: 1
  55. XML is the storage format for some things by aspillai · · Score: 3, Interesting

    I've used XML extensively and in someways agree with people saying XML isn't a storage format. But right now there are lots of applications where XML is the perfect storage format. Example: Consider a order processing company who brokers orders for company to company. One option would be to define a monolthic db schema to take care of what each company would like in their order. Another would be to define a really abstract schema to facilitate handling generic order forms. The problem with the first is, each time XYZ wants something added to an order form, you need to change the schema. With the second, it'll work but you'll need exceptionally discplined and smart programmers to deal with the abstract layer. This doesn't even deal with migration issues.

    The solution is XML. You create a XML Schema and start storing stuff. Some company wants more parameters - no problem, extend the schema. You need to migrate previous XML docs to adhere to the current schema, use XSLT. Or you can add these as optional parameters and every document that exists already will conform to the schema.

    Speed in XML is an issue. But people who think you need to read the entire XML document to process don't know what they're talking about. You can do modular processing. Also, you can do smart indexing to increase speed. And in a production environment, you turn Schema cheking off unless you're getting documents from untrusted sources. Will XML ever be as fast as RDBMS? Probably not. But XML doesn't store relational data. And with current research in XML Query languages, I'm sure XML's speed will be good enough for most applications in the future that deal with fuzzy schemas. (If you need high performance DB, then you have to bite the bullet and use a RDBMS).

    My two cents.

    1. Re:XML is the storage format for some things by thenerd · · Score: 1

      . One option would be to define a monolthic db schema to take care of what each company would like in their order. Another would be to define a really abstract schema to facilitate handling generic order forms. The problem with the first is, each time XYZ wants something added to an order form, you need to change the schema.

      One might need to change the schema, but if the schema was designed properly, one wouldn't. This sort of database design, unless I misunderstand you, is the kind taught at CS classes in first or second year.

      One wouldn't have a schema like this:

      ORDERID
      COMPANYID
      PRODUCT1QUANTITY
      PRODUCT2QUANTITY
      PRODUCT3QUANTITY

      but rather

      ORDERID
      COMPANYID
      PRODUCTID
      QUANTITY

      Have I misunderstood you?

      thenerd.

      --
      The camels are coming. I'm in love.
    2. Re:XML is the storage format for some things by Lips · · Score: 0

      But XML doesn't store relational data.

      But it can. How many of you who have been around the IT industry for a while remember heirachical databases?

      My database text book Database System Concepts, (I did this subject at uni in 1987) contained a chapter on heirachical databases. Fortunately the chapter is even available online: Heirachical Databases. If you want to know how to transform XML to a relational DB, read this.

      Have a look through the chapter, you will find some AMAZINGLY familiar diagrams. Innovation hey :)

    3. Re:XML is the storage format for some things by Anaplexian · · Score: 1

      me and a few friends have made DBX - a DB system in PHP that uses SQL as the query lang., and XML files as the storage format at the backend... tediuous, yes; wierd, yes; but beautiful, and FAR FAR easier to install/use than MySQL/anything else if all you've got is a guestbook running.
      It's available here

  56. Database storage in XML format is fine, if... by jlowery · · Score: 4, Insightful

    Of course, this is not an easy question to answer, but the right answer involves knowing three things:

    1) Can certain records be considered 'atomic'?
    This is similar to the RDBMS question of whether or not it makes sense to construct a view or not. View definitions represent a common query. If you considering a query as a means of tying together disparate data from many tables into a single, denormalized set of records, the record could just as easily be expressed in some XML format.

    Now, if that record represents some physical or conceptual entity in the data model, it is in fact a set of properties about an object. This is what XML is good at representing. Decomposing that set of object data (record) into normalized relations may not make sense if such 'objects' are frequently requested; but there other considerations...

    2) Ad hoc queries are difficult when data is stored internally in XML, because each XML blob has to be parsed and checked for the query values. If you don't know in advance if the XML structure even has the fields you're looking for, then you must do an exhaustive search. Some have used indexed XPath information to work around this issue. Since we're mentioning indexes...

    3) How do you find the XML blobs you're looking for. We've used an ORDBMS for our XML data, and indexed on the ID or key values (as defined in an XML Schema) for each element stored in the database. This makes looking up element instances easier. It also makes relating them easier, too, if you use IDREF or keyrefs as your foreign keys.

    Now every XML document has a single root element. If you're storing that document in a database, you could choose to store just that one root element instance. More likely, you'll want to decompose the root so that accessing subelements by ID or key in the database will be easier.

    Got to run off now,

    Jeff Lowery

    --
    If you post it, they will read.
  57. What is the overhead of [dis]assembling the data? by Carnage4Life · · Score: 2

    Databases are for storing data. End of Story.

    Exactly, and XML is a format for encoding structured data. There are many kinds of documents that live their live their entire lives as XML, from XHTML documents to configuration files to myriad kinds of XML documents that exist today.

    Why is NASA switching to MySQL from Oracle [fcw.com] and noticing speed increases?

    If all you want is speed then MySQL is all you need. Similarly I can quote how much faster TUX is than Apache but that means nothing if I have dynamic database driven content that I want to use JSP or Perl to access.

    There is more to picking a database than how quickly it performs some SQL queries.

    Don't get me wrong, I'm a big fan of XML.. as a data interchange format.. but when i want tight storage and quick retrieval, give me a normalized RDBMS any day of the week. Because that's what it's for.

    This means you're suggesting that people shred XML documents into relational data to store them in the DB and then reassemble them whenever they retrieve them. This is massive overhead and error prone since you're depending on your developers to come up with custom ways of doing this for each application. Also typically very difficult to ensure that the XML that was stored in the DB can be accurately reconstructed (what happens to comments, processing instructions, enbtities, etc).

  58. XML begins to seem kind of silly ... by Bobtree · · Score: 1

    when you start to grasp the implications of a beautiful language like Lua: http://www.lua.org

    simple, tiny, fast, descriptive, extensible.

    Meta-Features.

    when your data is is code, it only makes sense that it's programmed in such a language that makes parsing it is as simple as execution.

  59. Re:xml is an interchange format, not a storage for by ftobin · · Score: 2

    So what do you think of using XML for system configurations?

    XML tends to be good for hierchial, widely-parseable data. In this sense, XML is good for configuration files, because many of the more advanced ones need some type of hierarchy to be sane. Also, it makes it easy to have one editing mode for many different configuration files, and configurations can be displayed/queried in a more universal manner.

  60. SAX! by coyote-san · · Score: 2

    Yeah, right, all XML and SGML parsers have to read the entire document before anything can be done. All of those SAX parsers are a figment of my fevered imagination. *rolleyes*

    Now, if you're pointing out that XML provides no mechanism for indexing so you'll have to scan the file *until* you reach the record you're interested in, I agree. But as others have pointed out, nobody uses XML as the storage format for anything but the smallest databases. (E.g., configuration files.) But the translation to/from XML format for queries no more breaks its 'purity' than converting SQL "insert" clauses into binary data stored in B-tree or ISAM tables breaks its relational purity.

    --
    For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
    1. Re:SAX! by Fnkmaster · · Score: 2

      No, he said _validating_ XML parsers. If you want to validate that in fact a document matches a DTD or a Schema you do have to read the entire document. You can have a validating SAX parser by the way (though it doesn't really make sense to me to do so), though the most simple SAX parsers don't validate the document structure, they just fire events into the event handler. Clearly, validation is a more logical concept with DOM-style parsing, as you are building an in-memory tree representation of the document.

    2. Re:SAX! by Kallahar · · Score: 1

      shouldn't that be ?

    3. Re:SAX! by Kallahar · · Score: 1

      shouldn't that be ?

    4. Re:SAX! by Anonymous Coward · · Score: 0

      no, more like

      <eyes><roll/></eyes>

  61. Re:xml is an interchange format, not a storage for by ivan256 · · Score: 2

    Ok, that's probably what he meant. I didn't imediatly get that out of what he said....

    Yes it is true that some software does not scale well but that's not nearly enough information to mean anything. Does that mean that if you add another machine you get more performace? Another CPU? More memory? Software that "scales well" in one environment (say on 4-8 CPU x86 machines) may not scale well in other environments (large mainframes).

    Another point. Say that the performance of the software scales linearly, and your performace is multiplied by the number of whatever hardware devices you're adding that you have. You could argue that that software scales well, but if said software has a slow section of code in it's main execution path, optimization of that code (or removal if it's a fluff feature) shifts your whole curve. There is no reason that a piece of software can't both architecturaly scale well and perform like crap at the same time.

    I have no experience with SQL server, so I cannot if this is the case or not. I do know that I would not be able to make a decision about it only knowing that is scales well.

  62. It's not that simple... by bubbha · · Score: 1
    Lets clear some things up. Highly normalized databases can NEVER be quicker than denormalized ones. When you normalize you are INTENTIONALLY slowing down retrieval so that you can, amoung other things, store a piece of data only once.


    When you normalize, you force the database server to recombine an object from it's spread-out parts at runtime. This is why database companies have spent the last 20 years working on transaction optimization...so they could match the transaction performance of databases based upon a navigational data model.


    Relational databases where originally conceived to help with decision-support processing - like data warehouses where queries are the majority of processing. Navigational data models (like object models) are optimal for on-line transactions because the records usually have pointers that take you directly to the data you want to access - rather than have the DBMS server perform join-processing.


    Please, don't get me wrong, I got Normalization-fever just like the poster. You just don't do it to speed things up... Normalization generally has the opposite effect....except perhaps for updates on highly denormalized systems.

    --
    I want to be alone with the sandwich
    1. Re:It's not that simple... by leandrod · · Score: 1

      First thing, go educate yourselves, people! Start by reading "An Introduction to Database Systems", 7th ed (but any edition will be better than almost anything you can read about databases nowadays, be it printed or on the Web) by Chris J Date. After that, read anything you can get your hands on by Date, Hugh Darwen, Fabian Pascal, David McGoveran and EF Codd.

      Second... the relational model for database management deals with the logical level of database management. It says nothing about physical storage. And normalization is a relational thing, so it has nothing to say about physical storage. Therefore, normalization does not help nor hinder performance, because performance depends on physical database design. It is perfectly feasible to have a database fully normalized, up to the 5th normal form, but still get great performance by using a good logical-to-physical mapping, with partitions, clusters and so on.

      The real issue is that SQL does not separate properly the logical and physical levels, so that normalization may have an impact on the physical storage. But this isn't a normalization problem, it is a SQL defect.

      --
      Leandro Guimarães Faria Corcete DUTRA
      DA, DBA, SysAdmin, Data Modeller
      GNU Project, Debian GNU/Lin
    2. Re:It's not that simple... by Anonymous Coward · · Score: 0

      So, your point is that the difference between theory and practice is that there's a difference between theory and practice. Thank you.

    3. Re:It's not that simple... by bubbha · · Score: 1

      Yea, yea... I read all those books while completing my Masters degree in computer science. Normalization trades off performance because of the join processing that must be done. Nothing wrong with that trade but it's a fact. I suggest you expand your reading to include how database management system actually work to produce results.

      --
      I want to be alone with the sandwich
    4. Re:It's not that simple... by Anonymous Coward · · Score: 0

      Hey, guess what? You're wrong! Denormalised datbases are generally slower than normalised databases. Why?

      1. When you read one record, you read a mountain of data you don't need.
      2. You need vastly more memory for cache because of point 2.
      3. Composing complex queries is a nightmare.

      I challenge you to denormalise a real-world database and get decent performance out of it. Start with a medium-complexity, medium-size DB... say, 80 tables, with about 50G of data in it.

      Call me when you're done.

      Then go look up 'the universal relation assumption' from research papers in the late 1980s and ponder why it died.

    5. Re:It's not that simple... by bubbha · · Score: 1
      Well denomalization is done all the time in data warehouses to eliminate joins - especially in marketing-oriented systems where a single index alone can be 50 gig. I worked on systems like this for a number of large drug companies. And object databases that hold things like engine designs and aircraft electronic system designs are navigationally oriented. Queries that perform what-if engineering analysis on a database holding an engine design implemented in a 5th normal form is more than a nightmare - it's virtually impossible. I worked on systems like this for the Boeing company. I guess you just have to live in the real world and don't get your panties in a bunch when sombody challenges your beloved theories. Sometimes they hold up and sometimes they don't.


      As for calling you...well you'll have to send me the number of the YMCA you're staying at first...

      --
      I want to be alone with the sandwich
    6. Re:It's not that simple... by leandrod · · Score: 1

      The issue is that even people who implement DBMS usually get the theory -- and the words -- wrong.

      The fact remains that normalization is a logical concept, thus can't be done or reversed at the physical level. What usually goes for the name of denormalization is just physical design, and the confusion arises because SQL and other systems lack the distinction and mapping between physical and logical layers of the database.

      --
      Leandro Guimarães Faria Corcete DUTRA
      DA, DBA, SysAdmin, Data Modeller
      GNU Project, Debian GNU/Lin
  63. When talking to stranger XML _is_ a good idea by Belly+of+the+Beast · · Score: 1

    I'm writting an app that will use input from many differtn sources that I can not spec at this time so wtitting a DTD to allow any data base jocky to dump data into an XML seems like a simple answer to me. The user can debug their input, the data set sizes will fit in a PC's foot print and I can just bolt in Apache's Xercres parser to make sure the input is all accordign to Hoyle. This leaves me to work on the guts of my code not writing YAHP (Yet Another Half-debugged Parser)

    -peace

  64. Re:xml is an interchange format, not a storage for by Skapare · · Score: 2

    I find the tags are a major hindrance proper editing tekniq. If the tool is vi, I have to deal with the tags manually. If the tool hides the tags, then it has to be interpreting them and presenting some logical construct. But I've yet to see any tool that can let me do all I want with config files. How would /etc/rc look in XML?

    --
    now we need to go OSS in diesel cars
  65. Re:xml is an interchange format, not a storage for by slaytanic+killer · · Score: 1

    Well, I am fairly atrocious at my understanding of SQL (clueful db admins have always coddled me), but it does not strike me as hard to store hierarchal data in databases. Each tuple would just have a reference to its parent.

    As for attributes, a different table per type of node.

    I have no idea about performance properties of such a contraption, but I imagine it could really be improved by modifying the XML to lend itself to such a relational representation.

  66. most problems xml is used for by Pinball+Wizard · · Score: 2
    can be solved with text files, at far less expense.


    I'm not just talking out of my ass either. I've worked with EDI systems(data in binary format means you need proprietary software on both ends), XML, and plain old text files. I've used all 3 in the context of transferring data between businesses, which is what XML aims to solve. My feeling is that plain old text files, along with a descriptive file of how the text file is laid out, is overall the best solution for most data interchanges between businesses.


    One really good example of this is using diff. Suppose your supplier maintains a database of products you can order, and this data changes daily. Using text files you can easily diff todays file with the one you retrieved the day before and get a much smaller file to use to update your internal database. I can't imagine a more elegant solution using XML.


    I have found one good solution that uses XML - outputting XML on the fly over the net in response to a query. If you have customers that query your data regularly over the web, any change to the HTML will throw their queries off if they are "screen scraping" to get at your data. XML solves this problem nicely, even if new fields are added or if the XML page layout changes in some way. I don't see the logic of actually storing XML in the database though.


    My experience of being in a business where data interchanges take place on a regular basis with other businesses, is that formatted text files are still the best way overall. They are easier to deal with and faster than XML ever will be.

    --

    No, Thursday's out. How about never - is never good for you?

    1. Re:most problems xml is used for by pkesel · · Score: 1

      My feeling is that plain old text files, along with a descriptive file of how the text file is laid out, is overall the best solution for most data interchanges between businesses.

      I think your assessment is short sighted. To suggest that there is an overall solution is silly.

      I do agree, however, in the essence of your comment. XML is nothing special. It's no better or worse than any of the dozens of formats we've all come up with.

      What's significant is that it's been agreed upon and is being implemented widely. I don't have to come up with a scheme when I want one, and i dont' have to code a parser or translator when I need one. I just go get it. That is the only thing significant about XML.

      --
      - Sig this!
    2. Re:most problems xml is used for by LukeyBoy · · Score: 1

      xmldiff does for XML what diff does to text, and the generated output is less space then doing a textual diff on the XML. Just FYI.

    3. Re:most problems xml is used for by spongman · · Score: 2
      i think you're missing the point. XML is a formatted text file, and namespaces are the description of how they are laid out.


      The difference being that for an XML file, the code for loading and parsing the data into an object model, manipulating and querying it is the same for every XML document. Whereas, for plain text files and human-readable descriptions you need a programmer to write and test code for each type of file. For XML this code has already been written and tested.


      I don't agree with the 'diff' example either, for example the diff between two text files tells you nothing about the context of the diff, ie what the meaning of the change is (and no, just knowing the few lines above/below doesn't necessarily tell you anything, either). You have to manually refer to the original document and the description of the file-format in order to work out what has changed: just knowing that a particular line changed doesn't tell you what that change actually means. With an XML document it's easy to automatically derive the context of the diff, and there are already many programs which will do this.

    4. Re:most problems xml is used for by leandrod · · Score: 2, Insightful

      First one has to think about what's XML.

      XML is not a language, notwithstanding its own name. It's a metacodification, used to create codifications such as XQL, HTML, DocBook and so on.

      OO people are usually programmers with very little CS fundamentals, so they don't even get this right: when they are talking about XML in database contexts, they should at least specify the coding they want to use. And then it should be understood that you need to use it for storage encoding, or for data communications, or both.
      Thus one cannot say that XML was created for data interchange -- it was created for metacodification. One can create a data interchange codification based on XML -- but that's kind of stupid, since XML codifications usually will give big overheads. We've been doing data interchange with text files with little problems for years. The issue of agreeing on data model and codification between applications does not go away just because you agreed on using some codification with a big overhead.

      But I haven't still touched on the worst on using XML codifications in database contexts -- it is that both XML and OO are hierarchical, thus a regression to thirty years ago when there were navigational databases, no data independence, hierarchical and network systems... we are throwing away thirty years of relational research without ever having implemented it right.

      But that's the way of an uneducated world... just as people adopting proprietary technologies have thrown away open systems ideals without ever having got it right.

      --

      --
      Leandro Guimarães Faria Corcete DUTRA
      DA, DBA, SysAdmin, Data Modeller
      GNU Project, Debian GNU/Lin
    5. Re:most problems xml is used for by Pinball+Wizard · · Score: 1
      You are right of course, and when standard programs like Microsoft Access, Excel or MySQL can uniformly upload XML files I'll agree they are just as useful.


      As far as your statement on parsing is concerned, perhaps I was not clear about using formatted text files. By that I meant standard comma or tab delimited files. You don't need a parser to load those into a database, and any database will accept such files. The same can't be said about XML.


      However, I agree. XML is a formatted text file, with the metadata built in. Once that becomes widespread enough that any database will accept these, then I'll agree. XML will be as useful as plain text, and likely more so.

      --

      No, Thursday's out. How about never - is never good for you?

    6. Re:most problems xml is used for by Anonymous Coward · · Score: 0

      EDI docs are plain old text files they are not however flat files, they have hierarchical structure, similar to xml, although the depth of
      sub-segments is constrained by some arbitrary fixed number.

  67. The real question is? by wagley · · Score: 1

    XML on a DB seems foolish to me, just storing lots of extra data. What I want to know is: When will the hype on XML die the death it deserves? I am all for XML, it solves real business problems of data conversion and self description.

    I am just sick of the answer for everything being XML-can't talk to a business partner, oh we should use XML. Doesn't matter what you are trying to do.

    For instance, if its just two parties talking, it probably makes more sense to do some sort of flatfile, as opposed to XML (time to value is much quicker).

  68. Mirrior Needed by Anonymous Coward · · Score: 0

    looks like the site can't handle the slashdot load of people.. *sigh*

  69. Re:xml is an interchange format, not a storage for by recordalator · · Score: 1

    XML can be preferable to an RDBMS for storage when long-term preservation is a goal. Store the preservation copy of the data in XML, then use other more efficient formats for immediate processing needs. The San Diego Supercomputer Center has done some work in this direction. If I want someone to be able to access data 50 years from now, I'm much more worried about software depedence than performance.

  70. Re:xml is an interchange format, not a storage for by Anonymous Coward · · Score: 0

    Actually, to get good retrieval performance you want to query denormalized data. To get good input performance, you want to write normalized data.

  71. Yes by DGolden · · Score: 2

    Yes, couldn't agree more. XML is just a particularly annoying way of writing S-expressions.

    I really don't get people who complain about Lisp syntax and then tell me how wonderful XML is - XML is 10x more annoying than Lisp!

    Also, if you want to deal with XML in a semi-sane way, may I recommend just transforming it into Scheme, processing it with the normal LISPy tricks, then pretty-printing it back out... See here for the best we to deal with XML weenies.

    --
    Choice of masters is not freedom.
  72. XSL-FO by Merk · · Score: 2

    Converting to PDF is easy too. Just use XSL-FO. Apache has an implementation of this. Currently they only create PDFs, but it could easily be sent to a printer directly. You can also convert directly to TeX:

  73. My XML and DB experiences by dolanh · · Score: 2
    I've been using Oracle at work, and a small open-source project called DBXML for my personal projects. All of this using Java front ends.

    For my small projects, using DBXML has been a joy. There are certain things for which using XML makes a lot more sense. Some data models just fit more naturally into hierarchcal structures, for example users and groups. If you have unique usernames, you can pull data on a user, then pull their group quite easily without the need for a reference table simply by pulling hte user's parent.

    This isn't to say I think XML databases are the answer to everything. One of the largest problems I find so far is that it is that queries that are relatively easy in SQL can get a bit tedious is XPath. Also, as of yet there doesn't seem to be any truly standard query language. This is understandable, given how new the designs are, but it is a bit difficult to decide how to do things sometimes. Do you check in a document, or XUpdate it? Play with DBXML and you'll see what I'm talking about.

    For those of you complaining about XML not being an efficient way of data storage because of the high memory cost of keeping documents in memory, bear in mind that there are more parsers out there than just DOM and its relatives. SAX is quite efficient, and even if you're using DOM it is entirely possible to pull fragments out of the document as you see fit; in fact XPath makes this quite easy.

    I may be crazy, but I eventually see XML databases providing solid competition to standard RDBMS systems. I've seen complaints about performance -- I think much of this is lodged in the fact that a lot of these systems are not native XML databases -- they are RDBMSs with XML capabilities thrown on top. One way or another, it should be interestign to see how things pan out.

    End rant.

    1. Re:My XML and DB experiences by Anaplexian · · Score: 1

      me and a few friends have made DBX - a DB system in PHP that uses SQL as the query lang., and XML files as the storage format at the backend... tediuous, yes; wierd, yes; but beautiful, and FAR FAR easier to install/use than MySQL/anything else if all you've got is a guestbook running. It's available here.

  74. Re:MS vs Linux Companies by Anonymous Coward · · Score: 0

    agreed. linux is shit.

  75. Report writers for non-relational databases by cthlptlk · · Score: 2, Insightful

    I've been properly brainwashed in the Open Source way, and I use XML all the time as an interchange mechanism, but you'll have to pry Crystal Reports from my cold, dead fingers.

    I have spent a lot of time training non-technical users to get their own damn reports from databases. It's hard to imagine putting data--any data--into a system where the tools to get it out haven't been written yet.

  76. I Used to Have ... by Muad'Dave · · Score: 1, Funny

    a "langauge", but the needle broke off when I accidently plugged it into a gigabit switch.

    --
    Tiller's Rule: Never use a word in written form that you've only heard and never read. You will end up looking foolish.
  77. Re:xml is an interchange format, not a storage for by oni · · Score: 2

    because one cannot normalize a spreadsheet

  78. Missing the Big Picture by SuperKendall · · Score: 5, Insightful

    I can't believe no-one has posted my standard response to someone who thinks XML is just for "interchange".

    The interesting thing about XML to me is NOT that it solves the interchange problem (though it helps with that). The great thing is that it solves the PARSING problem. No longer do I have to write a parser everytime I have some simple task of reading in something externally.

    What XML does is define for you a standard means of parsing, and by defining the API for parsing and the structure of the documents lets you think about how you want to structure external information, not how you're going to read it in.

    Also, because the API for parsing is now hiding the engine details below, parsers can be specialized depending on what kind of task you have. Parsing thousands of 1k XML documents would seem to demand a different processor altogether from a few multi-GB documents, but you only have to know one parser (Ok, really two - SAX and the DOM interface). You could even have specialized XML processors that did write the stream out in a wierd custom binary format for compactness and read it back in with the normal DOM API so clients wouldn't have to adjust. I'll grant you that there don't seem to be many specialized XML processors - yet.

    I also like the robustness of XML exchanges (here I'm getting more into your main point). If you add or drop attributes from an XML document, clients that read that document are less likley to break (unless of course they relied entirely on the node(s) you have removed!). That is especially true of XSL, where missing nodes of a document simply correspond to missing parts of output (which can also be a useful effect).

    You might think of XSL as a useless language, but I'll be happy to make a counter-prediction that it will grow and thrive. It's simply too useful a transformation tool to do anything else. I know the syntax seems overbearing, but for the kinds of short transformational work it's normally put to that's not much of an issue and you get used to it quickly.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Missing the Big Picture by Malcontent · · Score: 2

      "The great thing is that it solves the PARSING problem."

      Not really. I guess it depends on what your parsing problem is in the first place. Here some real world examples of crap I have had to deal with.

      1) I specify that a date field. Customer 1 sends me "1/27/63" customer 2 sends me "1963-01-27T00:00:00". Well both are dates no?
      2) Customer 1 sends me customer 2 sends me John01/27/63
      3) Big Customer 1 tells you they use SQL server and that they will send you XML from their database, Big customer 2 tells you they use Oracle and they will send you XML generated fromt their database.
      4) The idiot vendor decides that sometimes the date of birth will be in the DateOfBirth attribute and sometimes it will be in the DOB attribute depending on the subject type or the place of birth.

      So you see just specifying XML is not enough. Both parties have to agree of everything. Whether things are attributes or nodes, how they are to be formatted etc. The end result is that XML really does not help at all. For each customer you have to write a new "parser" to take their XML and turn it into something you can use.

      The real question is. If you have to agree on everything anyways why not just use a simpler EDI format that takes less bandwidth and inserts into your database easier and can be parsed with a split() function.

      --

      War is necrophilia.

    2. Re:Missing the Big Picture by SuperKendall · · Score: 1

      Content issues like that (especially dates or what gets sent) obviosuly still remain, but again they are at least a step above "What delimiter can I use on this file, will all the rows have the same number of fields? What was the byte ordering on that file? How is quoting handled?". I'm talking about the low level parsing issues, I've written a lot of different parsers ranging from simple "split" type things to RPC header parsers using Lex/Yacc, and I'm rather glad I don't have to do so again.

      Between different systems you obviously have to agree on a very fixed and agreed upon standard for content, I'm with you that too many people think just because something's in XML it's suddenly portable when in fact there still remains work to be done. I just find that work on content more interesting than trying to agree on the actual physical format of the file and not considering some details (like quoting) that leave you hanging when you want to expand your docuemnt in the future. Some of the parser work I've done was repairing half-completed parsers left behind by other people to handle new features...

      --
      "There is more worth loving than we have strength to love." - Brian Jay Stanley
    3. Re:Missing the Big Picture by Malcontent · · Score: 2

      To me coding is coding. writing another bit of code because you are using a different delimeter or whatever is no more or less painful then writing another piece of code to try and deal with some goofy XML someone sent you. I swear this is true.

      I have a client who built a SOAP server. This bozo changes the XML every time he signs on a new client and tries to pass their order to me. It's a nightmare to parse to say the least even though it's all XML and based on "standards".

      Like I said if I have to agree on every little bit anyway and if I have to re-write the receiving interface every time he adds a client then why not at least try and save some bandwith and CPU power and send me delimeted data in the first place.

      --

      War is necrophilia.

  79. Triple stores by macpeep · · Score: 4, Interesting

    At my previous job, I implemented an experimental app that was inspired by RDF (Resource Description Framework) and triple stores.

    In a triple store, you have objects that are defined by a set of properties. The word "triple" comes from the fact that you have triples of objects, properties and property values. For example, you could have a person; John Q, who has an age 37, a phone number 1234 and an employer Foo Ltd. Foo Ltd. in turn has a phone number 5678 and any number of other properties. This forms the following tripples: John Q --age--> 37, John Q --phone number--> 1234. John Q --employer--> Foo Ltd. Foo Ltd --phone number--> 5678.

    When you look at these, you can see that Foo Ltd. is both the employer of John Q (a property value) but also an object in itself that is described by a set of properties. In RDF, the tripples form a graph that describes your data. The graph is typically serialized as XML.

    At first, it would seem that this lends itself very well for relational databases. A row in a table would be the object to be described and columns are the properties. The intersection is the value. However, the problem - and strength of RDF - is that you can have any number of properties for an object. Basically, you could have any number of columns and sometimes, the property value is not just a value - it can be a database row in itself or even a set of rows.. or a set of values.

    The app I wrote mapped arbitrary RDF files to relational databases and back as well as provided an API to perform queries on the data. The result of the queries were RDF graphs in themselves.

    While this was quite cool, it turned out to be quite difficult to turn the query result graphs into meaningful stuff in a user interface. Also, queries on the RDF graphs could turn out to be extremely complex SQL queries... Most of these problems were eventually solved but the code wasn't used directly for any real world app, except heavily modified as a metadata database for a web publishing system.

    1. Re:Triple stores by Anonymous Coward · · Score: 0

      I found your comment very interesting; I'm doing something similar over at SourceForge (http://www.sf.net/projects/warp-framework). Could you please email me so I could ask some questions?

      My email address is morten CURLY-A thingamy.net

      Thanks

  80. Re: Your signature [WAS: RFC] by alba7 · · Score: 1

    Killing the enemy solves the problem only if none are left. If you stop short of a clean-cut genocide you have to make some prosperous peace afterwards or the thing will start again a generation later.

    WW2 was possible because of the merciless conditions after WW1. OTOH germans are reliable allies for the last 60 years because of American economic aid.

    On the same scale, Iraq is an American disaster. There still is no McDonalds in Bagdad, so these guys still have nothing to lose.

    --
    Post tenebras lux. Post fenestras tux.
  81. Yeah.. by jonabbey · · Score: 2

    Of course, one of the "ideas" of XML is that you can just strip out all of the tags and have a document you can sort of read. That would be anathema to a Lisp person, and for good reason. Lisp is all about simple, minimalistic expression and manipulation of hierarchical data. XML is about an underspecified hodgepodge of structure and free form data.

    Which is not to say that it's not useful, regardless.

  82. Thanks guys, but you are about 12 hours late. by heyitsme · · Score: 0

    Ironic... kuro5hin.org seems to be ahead of /. once again. Earlier this morning, they ran this story, eerily similar to the one I am replying to now.

    Although, I do have to admit that I was throw off for a moment: the reversal of "XML" and "Databases" in the headline tricked me.

    Try again, /.

    heyitsme

  83. Re:xml is an interchange format, not a storage for by jedidiah · · Score: 1

    "scaling well" doesn't get you anything if you don't have anything to scale to.

    --
    A Pirate and a Puritan look the same on a balance sheet.
  84. Re:WindowsFP by Anonymous Coward · · Score: 0

    alright, the first posts _are_ gettin more creative :)

  85. Re: Your signature [WAS: RFC] by Reality+Master+101 · · Score: 1

    you have to make some prosperous peace afterwards or the thing will start again a generation later.

    I agree, but...

    OTOH germans are reliable allies for the last 60 years because of American economic aid.

    American economic aid AND the fact that we installed a stable democracy. What's going to make the middle east complicated (and ironic) is that we will probably be able to install a stable government and lots of aid into Afghanistan, but a lot of the other countries are still relatively backward governments. Saudi Arabia, while our friend, is still a dictatorship with relatively little freedom.

    I think this war is going to solve a lot of problems, but it won't eliminate them. The problems won't go away until all the countries become modern democracies with self-sustaining economies.

    On the same scale, Iraq is an American disaster.

    In terms of the Gulf War, it was a success. The mission was to kick Iraq out of Kuwait in order to preserve the free flow of oil. That was clearly successful. I think Bush felt that exceeding our UN mandate and launching a full-blown invasion of Iraq would've created a lot more problems than it solved, and he was probably right (we'll never know of course). He decided to gamble that Iraq was weak enough for Hussein to be overthrown. Unfortunately, the gamble didn't pay off.

    --
    Sometimes it's best to just let stupid people be stupid.
  86. "SQL Server" by drxyzzy · · Score: 2, Funny

    You keep referring to "SQL Server". Which one? PostgreSQL? MySQL? Sybase? There were several last time I checked, even for MS.

    1. Re:"SQL Server" by ergo98 · · Score: 1

      The capitalization indicates that it's a product name, not a description. What does http://www.google.com/search?q=%22SQL+Server%22 as a search get you?

  87. Warning: Can't connect to local MySQL server (111) by Anonymous Coward · · Score: 0

    Warning: Can't connect to local MySQL server (111) in /usr/www/htdocs/amdpower/mainfile.php4 on line 32
    Unable to select database

    yeah - seems reliable

  88. Re:xml is an interchange format, not a storage for by UberLame · · Score: 1

    Wanna put some money on that?

    Just treat each sheet in an excel file as a new table, and then normalize as usual. Pretty ugly, and I don't really know what the point is though.

    --
    I'm a loser baby, so why don't you kill me.
  89. Re:xml is an interchange format, not a storage for by UberLame · · Score: 1

    Excel seems to be able to scale for one user up to around 70megs. Beyond that, it is better to just use it as a querying and analysis tool front ended to an Access/ODBC/ADO database.

    --
    I'm a loser baby, so why don't you kill me.
  90. hmmm by drfrog · · Score: 1

    my experimentation points to the same stuff

    xml is interchange
    database is storage

    they do have to talk together though,
    and generating a xml doc based off of database info and then parsing via
    xslt is so trivial i dont think it needs repeating

    i think the biggest prob in xml is the incompatibilities
    between the parser & lexicon engines and well as interoperability too

    of course html browsers are like this already
    and i loathe it as much as Tim Berners-Lee!!

    the best modules / libs ive found for this has been libxml ,libxslt and XML::LibXML,XML::LibXSLT

    as far as really good xml to db interchanges oracle was working on XSQL[?]
    which would allow for db connections via an xml file, it was only in java though ....blehck!

    --
    back in the day we didnt have no old school
  91. Web-Apps need XML by webmaven · · Score: 5, Informative

    Separation of content, logic, and presentation is very difficult to do in current web-app developments environments.

    The breakdown is not on the logic/content side of the equation, or the presentation/content side, but mainly in the presentation/logic arena.

    Imagine an HTML designer who has mocked up a page for a web-app, and hands it off to the dev team for them to add in the neccessary laogic to dynamically include the user-name, current balance, contents of the shopping cart, etc. Depending on the exact paragdigm taht their tools use, they will either:

    a) Chop up the page and include various fragments in the programs that are designed to emit said fragments at the opportune times to be assembled into a text stream eventually recived by a browser

    or b) Various bits of logic get stuck into the page in oder to parameterize and/or conditionalize it, using either some sort of speacial tagging format or actual inlined blocks of code.

    Whichever approach the dev team's tools use, the result is the same: the designer can no longer change the altered page.

    Even in case b), which maintains some semblance of a coherent 'page', the designer cannot load the page-with-logic into their favorite visual editor and see anything resembling the actual page. They certainly can't edit it to change the look-and-feel without breaking the carefully constructed logic.

    The end result is that the designer has no recourse other than to take their page design, change it, and hand it over to the dev-team again for them to re-include (in some cases re-code) all of their logic.

    This is obviously a very wasteful approach.

    Amazingly, there actually is a solution to this problem. It's called Template Attribute Language (TAL), and it solves the problem by adding programming directives to the page via XHTML attributes on the existing tags. The language is deliberately designed to only be suitable for presentation logic, relegating business logic code to some other objects, where the designer can't see them. This helps enforce the appropriate distinction between presentation logic and business logic that most current development environments ignore, thus encouraging their admixture.

    Currently, TAL (and the related specifications TALES and METAL) are only implemented in one environment, but the language has been deliberately designed to be as platform agnostic as possible. Other implementations of the specification are possible, and even desireable.

    Articles:

    Zope Page Templates: Getting Started

    Zope Page Templates: Advanced Usage

    Using Zope with Amaya, Dreamweaver, and other WYSIWYG Tools

    --
    The real Webmaven is user ID 27463. I don't rate an imposter, because my ID is such a lame-ass high number.
    1. Re:Web-Apps need XML by Malcontent · · Score: 2

      Webobjects from apple does this beautifully too.

      --

      War is necrophilia.

    2. Re:Web-Apps need XML by dolanh · · Score: 3, Informative

      Not to mention Apache Cocoon.

  92. A markup weenie rebuts. by rodentia · · Score: 4, Interesting

    A large number of otherwise intelligent posters would seem to have been hit by the runaway XML hype train. Examples culled from various posts:

    ...[not a] major advance in computer science.

    ...[bogus] contribution to programming language design (re: XSL)

    ...[transfer data between businesses,] which is the problem XML aims to solve.

    But these are critiques directed at the hype machine, not the specification. This is really distressing me. The machine is so efficient that there are API's for XML (which shall remain nameless) being written and optimized for message passing which cannot handle mixed content as a matter of design. As though it were somehow so useful in this area that a section of the spec should be tossed to make it efficient. As though there weren't already gallons of ink being spilled on EDI, etc.

    XML was not designed to replace S-expressions, to facilitate cross-platform communications, revolutionize EDI or DBMs, to theorize about language design, yada, yada. XML is just that, an Extensible bloody Markup Language, a document tagging scheme. In this regard it is a tremendous advance. It is 80% less suck, by volume, than what went before. If you think your XML parser is bloated, have a look at any SGML parser. Part of what gets stripped out is tag minimization, the absence of which another poster complained about.

    Hey, its text and not binary because I need to write it and read it. Yes, Virginia, I've got 400 users tagging XML in flat-file editors. They complained about the loss of tag-minimization, too. But my svelte little Xerces needs a hand to stay so lean.

    The goal is to get structural and semantic information into my documents. (Yes, it's data, but a special kind of data called a document. You can call the message your passing a document, and use XML to format it, but there is some overhead the hype machine may not have emphasised in their rush to market.) I also strive to eliminate formatting or presentation instructions from the document (or hide them in PIs) to facilitate multi-target outputs. This lets my typesetters typeset and my data-entry people enter data.

    XML is designed to bring something of this model to the web. HTML is too presentation oriented. SGML is too bulky. That's what it do, babe. I take a single source file from somewhere on the filesystem, incorporate pieces from elsewhere (entity resolution, DB queries, etc.), turn it into one of five possible outputs. I use two different pagination engines with different proprietary formatting macros, XSL(T|FO), or a trap door on the bottom to dump pretty-printed ASCII. Its a publishing tool.

    --
    illegitimii non ingravare
    1. Re:A markup weenie rebuts. by blif · · Score: 2, Insightful
      Finally, a rational discussion of the merits of XML. Hate to use the buzzward, but it's all about repurposing baby! XML facilitates creating docs that you can then convert to a variety of output formats. This is pretty much 50% of my job, so that's why I think it's so cool. And after years of poring over binary dumps of other people's data (well, and my data too), It's very nice to use a human, self-documenting format. I think a lot of the XML posts you see are from people who don't do this sort of stuff for a living.

      XSL is also cool, once you climb the steep learning curve and bend your mind around it's declarative style.

      As for native xml db's - that is probably mostly hype.

  93. Re:unable to respond due to bugs in mozilla by ahde · · Score: 1

    but, you are correct sir

  94. What you meant to say was: by Anonymous Coward · · Score: 0

    XthML doethn't tholve anything:

    it ith a an immature and clunky form of Lithp, and Lithp hath overcome thethe "interchange" problemth decadeth ago. And Lithp hath turned out to be a fine platform for programming language dethign and "other domainth". XthML ith a buzzword, plain and thimple, and will be forgetten in a number of yearth.

    XthML'th problem ith that it hath no provithionth for a programming language'th themanticth. And adding them would be rather pointlethth, thince Lithp hath been doing thith for far longer than motht of you were alive, and in a much more elegant fathhion.

  95. free alternative not listed by duplicatedAccount · · Score: 1

    It's a pity that there's no email address...

    Poor man's free alternative to Tamino (Askemos) could have been mentioned.

  96. performance by csbruce · · Score: 3, Funny

    1-GHz Pentium-III + Java + XSLT == 1-MHz 6502.

  97. Re:xml is an interchange format, not a storage for by Malcontent · · Score: 2

    Oh man you really don't know. It's not just storing the data it's also querying, sorting, and re-arranging the data. It's really tough.

    --

    War is necrophilia.

  98. XML is just syntax. Don't forget the data model. by C-C · · Score: 1

    Relational databases are based on the relational (i.e. row and column) data model.

    If your data is not easily structured using a fixed relational schema (talk to some biotech people!), your're screwed performance-wise when using relational DBMS, because you have to join your n+1 normalized tables to get a result.

    What if additional attributes come up frequently? Regularly modifying the schema for large relational databases is a pain.

    The so-called semi-structured data model underlying XML is much more flexible, and there is plenty of opportunity to design databases that support it efficiently (I'm doing my PhD about this, look at our website and download the demo! It's a native XML DBMS prototype for Linux with a file system interface).

    Of course relational databases are faster for relational data, but not all data is relational.

    C-C

  99. XML DBMS written in PHP by Anaplexian · · Score: 1
    Trinergy just came out with "DBX - XML Database System in PHP".
    Pretty cool concept, It's a DBMS in the form of a simple header file in PHP that allows SQL queries on data stored in XML... The alpha version's available, and you have to register using a script that uses DBX itself- pretty cute.

    The site is here.

  100. Re:xml is an interchange format, not a storage for by fricc · · Score: 1

    Please make sure you read the SQL specification and the Xquery specification WELL before you say something like this
    (i.e. that XMl queries will be translated into
    relational queries).

    It's plain false.

    Best regards.
    Dana