Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Why is XML?

Why is XML?

Scheduled Pinned Locked Moved The Lounge
xmlcsharphtmlasp-netdatabase
69 Posts 49 Posters 18 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Steve Naidamast

    Comma delimited data is just so much easier without all the fuss. It is also more efficient...

    Steve Naidamast Sr. Software Engineer Black Falcon Software, Inc. blackfalconsoftware@outlook.com

    J Offline
    J Offline
    Joseph T Adams
    wrote on last edited by
    #36

    For some kinds of very simple data, some dialect of CSV may be ok. But in 3 decades of software development I've rarely found it it be an adequate solution, much less the optimal one.

    S 1 Reply Last reply
    0
    • U User 10331519

      Maybe I’m biased because I’ve been working with XML since it was invented, but I love it. My experience with it predates object serializers and whatnot, and I still find it simpler to roll my own much of the time to ensure that the output properly expresses the object’s purpose and usage. I use JSON for transport where appropriate, such as pulling data into a Vue app, but whenever I need to model data in JSON, I quickly lose patience. The absence of a named root node, namespaces, and attributes leads to a pretty weak representation of the facts that does a poor job of conveying the designer’s intent. Some have argued on this thread that XML is a binary format and not for human consumption, but I would much rather be given some XML to interpret than a bunch of JSON if I am tasked with querying the data. And a named end tag is pretty handy; not a fan of counting curly brackets! Of course, XML is supported by a suite of very mature standardized tools, the likes of which simply don’t exist in the JSON world yet.

      Cheers, Keith

      S Offline
      S Offline
      Sr_Dogmeat
      wrote on last edited by
      #37

      Your points are spot on. XSD is the best data description language I have encountered. I use XML Spy to create my schemas and then everything under the sun can read the schema and produce working code that is schema compliant. I was really disappointed with JSON schema, one would think they would have plagiarized from xml schema but no... perhaps the people that like JSON are dealing with flat or very limited hierarchies? Perhaps the are lacking variant nodes (choice). And perhaps they do not have to deal with patterns in strings for legacy systems?

      1 Reply Last reply
      0
      • C Chris Maunder

        Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

        cheers Chris Maunder

        D Offline
        D Offline
        dandy72
        wrote on last edited by
        #38

        Chris Maunder wrote:

        as something that is not seen or edited by humans

        I could've sworn when I first started reading about XML, it was being sold based on the idea that it was trivially easy for people to read and write.

        C 1 Reply Last reply
        0
        • C Chris Maunder

          Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

          cheers Chris Maunder

          D Offline
          D Offline
          davercadman
          wrote on last edited by
          #39

          My favorite part is when the schema doesn't work. XML - Another solution in search of a problem.

          1 Reply Last reply
          0
          • J Joseph T Adams

            For some kinds of very simple data, some dialect of CSV may be ok. But in 3 decades of software development I've rarely found it it be an adequate solution, much less the optimal one.

            S Offline
            S Offline
            Steve Naidamast
            wrote on last edited by
            #40

            I retired after 4 decades in software engineering in 2014. Though I used XML extensively during my career, I found it more of a nuisance than anything else. XML and JSON merely serve to add layers of software to handle the formats, making them both rather inefficient. And both are text-based. Similarly comma-delimited data is text based as well without all of the extra meta-data and when encrypted would produce smaller files or data-packets for transmission. For most situations, one can use comma-delimited data in the same ways as XML with a little ingenuity and without all the extra meta-data.

            Steve Naidamast Sr. Software Engineer Black Falcon Software, Inc. blackfalconsoftware@outlook.com

            J 1 Reply Last reply
            0
            • C Chris Maunder

              Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

              cheers Chris Maunder

              M Offline
              M Offline
              michaelbarb
              wrote on last edited by
              #41

              My professor said that XML exists because Microsoft was afraid of being sued because JSON was to much like Java. Kid of like the same reason that C# exists. I think he was being sarcastic but am not totally sure. He did show that history of the two and which came first is debatable. Both have roots that run back a long, long time ago.

              So many years of programming I have forgotten more languages than I know.

              C D T 3 Replies Last reply
              0
              • S Steve Naidamast

                I retired after 4 decades in software engineering in 2014. Though I used XML extensively during my career, I found it more of a nuisance than anything else. XML and JSON merely serve to add layers of software to handle the formats, making them both rather inefficient. And both are text-based. Similarly comma-delimited data is text based as well without all of the extra meta-data and when encrypted would produce smaller files or data-packets for transmission. For most situations, one can use comma-delimited data in the same ways as XML with a little ingenuity and without all the extra meta-data.

                Steve Naidamast Sr. Software Engineer Black Falcon Software, Inc. blackfalconsoftware@outlook.com

                J Offline
                J Offline
                Joseph T Adams
                wrote on last edited by
                #42

                Well, the metadata is something I find incredibly useful, and this is also why I tend to prefer XML over JSON as well when I need a robust way to transfer data of more than trivial complexity.

                1 Reply Last reply
                0
                • C Chris Maunder

                  Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

                  cheers Chris Maunder

                  D Offline
                  D Offline
                  DumpsterJuice
                  wrote on last edited by
                  #43

                  I always hated working with XML. JSON is a god send. I had to serialize from JSON to XML for a file upload. It was mandated that way.. not my choice. Anyway I now have an XML Serializer that is stupid simple to use. Keep It Simple, keep it moving.

                  1 Reply Last reply
                  0
                  • C Chris Maunder

                    Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

                    cheers Chris Maunder

                    R Offline
                    R Offline
                    rhyous
                    wrote on last edited by
                    #44

                    Xml wasn't originally written for web service data transfer or serialization/deserialization. It was written by the W3c to replace Html but still be Html-like. Xml is a Mark-up language, hence it has mark-up. Mark-up makes it good for readability by humans but also a standard readable by machines. Xml was then hi-jacked to be used by SOAP web services with serialization/deserialization. Then someone realized that json was better for serialization/deserialization, especially since readability by both humans and machines wasn't necessary, it only needs to be read by machines. JSON also has room for improvement in verbosity and as soon as a good replacement exists, people will say the same things: why json when new-thing is better.

                    C 1 Reply Last reply
                    0
                    • C Chris Maunder

                      Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

                      cheers Chris Maunder

                      B Offline
                      B Offline
                      Bruce Patin
                      wrote on last edited by
                      #45

                      I've had to generate a file from a database, but the built-in methods didn't work for me, so I also just constructed it all by adding to a string.

                      1 Reply Last reply
                      0
                      • M michaelbarb

                        My professor said that XML exists because Microsoft was afraid of being sued because JSON was to much like Java. Kid of like the same reason that C# exists. I think he was being sarcastic but am not totally sure. He did show that history of the two and which came first is debatable. Both have roots that run back a long, long time ago.

                        So many years of programming I have forgotten more languages than I know.

                        C Offline
                        C Offline
                        Chris Maunder
                        wrote on last edited by
                        #46

                        Every big company is afraid of being sued, but I doubt that's the reason. Microsoft would more likely choose a competing solution in order to lock out a competitor. The story doesn't seem "right" but who knows. The Microsoft of today is a very, very different company than the Microsoft of 2000. (and it makes them better and worse)

                        cheers Chris Maunder

                        1 Reply Last reply
                        0
                        • D dandy72

                          Chris Maunder wrote:

                          as something that is not seen or edited by humans

                          I could've sworn when I first started reading about XML, it was being sold based on the idea that it was trivially easy for people to read and write.

                          C Offline
                          C Offline
                          Chris Maunder
                          wrote on last edited by
                          #47

                          Ah, marketing...

                          cheers Chris Maunder

                          D 1 Reply Last reply
                          0
                          • C Chris Maunder

                            Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

                            cheers Chris Maunder

                            P Offline
                            P Offline
                            Peter Adam
                            wrote on last edited by
                            #48

                            Hungary's National Tax and Customs Agency requires real-time XML invoice reporting[^] , so we do it. It requires the schema designer to know his/her art, because xsd.exe[^] can choke on

                            and

                            type brainless design. Other pain was that while the XML standard is happy with a default namespace, XPath requires a prefix[^].

                            1 Reply Last reply
                            0
                            • R rhyous

                              Xml wasn't originally written for web service data transfer or serialization/deserialization. It was written by the W3c to replace Html but still be Html-like. Xml is a Mark-up language, hence it has mark-up. Mark-up makes it good for readability by humans but also a standard readable by machines. Xml was then hi-jacked to be used by SOAP web services with serialization/deserialization. Then someone realized that json was better for serialization/deserialization, especially since readability by both humans and machines wasn't necessary, it only needs to be read by machines. JSON also has room for improvement in verbosity and as soon as a good replacement exists, people will say the same things: why json when new-thing is better.

                              C Offline
                              C Offline
                              Chris Maunder
                              wrote on last edited by
                              #49

                              That brought back XHTML nightmares...

                              cheers Chris Maunder

                              1 Reply Last reply
                              0
                              • C Chris Maunder

                                Ah, marketing...

                                cheers Chris Maunder

                                D Offline
                                D Offline
                                dandy72
                                wrote on last edited by
                                #50

                                Chris Maunder wrote:

                                Ah AAARGH! marketing...

                                FTFY.

                                1 Reply Last reply
                                0
                                • M michaelbarb

                                  My professor said that XML exists because Microsoft was afraid of being sued because JSON was to much like Java. Kid of like the same reason that C# exists. I think he was being sarcastic but am not totally sure. He did show that history of the two and which came first is debatable. Both have roots that run back a long, long time ago.

                                  So many years of programming I have forgotten more languages than I know.

                                  D Offline
                                  D Offline
                                  dandy72
                                  wrote on last edited by
                                  #51

                                  michaelbarb wrote:

                                  My professor said that XML exists because Microsoft was afraid of being sued because JSON was to much like Java

                                  This doesn't hold up, even if only because it seems backwards. If Wikipedia's accurate, work on XML started in 1996, and [became a "W3C recommendation" in 1998](https://en.wikipedia.org/wiki/XML#History), while JSON only started showing up in the "early 2000s" (granted, with some references to work starting in 1999 - but it was still very early in its design by then). And how is JSON in any way "like Java"? One's a data storage file format. The other's a full-blown programming language.

                                  M 1 Reply Last reply
                                  0
                                  • M michaelbarb

                                    My professor said that XML exists because Microsoft was afraid of being sued because JSON was to much like Java. Kid of like the same reason that C# exists. I think he was being sarcastic but am not totally sure. He did show that history of the two and which came first is debatable. Both have roots that run back a long, long time ago.

                                    So many years of programming I have forgotten more languages than I know.

                                    T Offline
                                    T Offline
                                    trønderen
                                    wrote on last edited by
                                    #52

                                    michaelbarb wrote:

                                    My professor said that XML exists because Microsoft was afraid of being sued because JSON was to much like Java.

                                    Then your professor, by "XML exists", presumably meant "XML did not die" rather than "XML was created". XML predates the first JSON RFC by ten years. And, XML was in use for several years before it was formally standardized. I really do not see how Microsoft gets into this. MS certainly neither defined XML nor JSON. I never saw Microsoft as a very active promoter of XML. C# was created by MS. I am not (yet) able to find on the net any documentation of the MS/Sun controversy, but twenty years ago "everybody knew" that C# was a response to Sun not allowing MS to use Java as it wanted. (If my memory is correct, MS wanted to add language features that Sun did not approve of.) So C# is a very different story from XML/Json. XML syntax borrows a lot from far older formats: Typesetting systems of the late 70s (maybe even older) used the same style bracketed keywords, e.g. to delimit paragraphs and specify paragraph formatting. You can see a selection of such tags e.g. in the 1982 Historical Manuals: Guide to Typesetting at the UKCC[^], at page 14-15. In the typesetting systems I ever touched, the brackets were displayed as common brackets, but had a different internal representation, and distinct keys on the dedicated terminals. So there was no need for escaping or other special handling of the common brackets (or math smaller/greater than).

                                    1 Reply Last reply
                                    0
                                    • C Chris Maunder

                                      Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

                                      cheers Chris Maunder

                                      R Offline
                                      R Offline
                                      Roger Wright
                                      wrote on last edited by
                                      #53

                                      Do you remember what we had before XML? Talk about misery! When I joined here, I was working at an Ace Hardware, and trying to get our in house system to integrate with the Ace Corporate online ordering system (no Internet then, direct dialup connection) required the patience of Job, along with a love of self abuse. I'm still grateful for XML!

                                      Will Rogers never met me.

                                      T 1 Reply Last reply
                                      0
                                      • C Chris Maunder

                                        Just why. I spent an hour fighting with XmlSerialisers to try and get my object mapped to a schema. Changing names, trying to get attributes setup, dealing with CDATA. I gave up. I got so fed up I simply wrote the XML directly as a raw string. If I could have kicked it I would have kicked it. I totally get the beauty of having data in a class and throwing it at different serialisers and having it Just Work. Switch between XML and Json and maybe binary and text and build out this whole massive ecosystem that screams "I'm trying to do too much!". But dear lord. It's like root canal surgery. Is anyone actively using XML as a data transport format? I get that we all use it in things like XAML and ASP.NET pages and the whole HTML thing, but as something that is not seen or edited by humans, that needs to be cognizant of bandwidth, is it still being used in that manner or am I just really, really intolerant this morning?

                                        cheers Chris Maunder

                                        C Offline
                                        C Offline
                                        chrisseanhayes
                                        wrote on last edited by
                                        #54

                                        IDKW people are bad-mouthing XML OR barking that JSON is the magic carpet of serialization. XML was an attempt by some fairly smart people (smarter than me) to make a standardized, text-based, human-readable serialize standard. Is it 'easily' human-readable? Most but not all the time, still useful. Can you just open it in a text editor and read it? Yes, didn't say you'd enjoy the experience but you could, can, and do. Is it a good standard? Well, people are still using it, today, it works, and 'works' gives programmers and interested parties (those with the money) this warm fuzzy feeling inside. And consider this, you can make some REALLY simple XML, read, serialize, transmit it, and you can make some seriously complex XML, read, serialize, and transmit that. Things you couldn't imagine serializing in JSON. That's what the X stands for Extensible. Nevertheless, just like someone else said on this post, EVERYONE IS USING XML EVERY DAY, it's called the internet, it's called HTML which, really deep down, is XML that transmits some of the greatest amounts of information around the world billions and billions of times over, and it just works, not perfect, but it does.

                                        C T 2 Replies Last reply
                                        0
                                        • C chrisseanhayes

                                          IDKW people are bad-mouthing XML OR barking that JSON is the magic carpet of serialization. XML was an attempt by some fairly smart people (smarter than me) to make a standardized, text-based, human-readable serialize standard. Is it 'easily' human-readable? Most but not all the time, still useful. Can you just open it in a text editor and read it? Yes, didn't say you'd enjoy the experience but you could, can, and do. Is it a good standard? Well, people are still using it, today, it works, and 'works' gives programmers and interested parties (those with the money) this warm fuzzy feeling inside. And consider this, you can make some REALLY simple XML, read, serialize, transmit it, and you can make some seriously complex XML, read, serialize, and transmit that. Things you couldn't imagine serializing in JSON. That's what the X stands for Extensible. Nevertheless, just like someone else said on this post, EVERYONE IS USING XML EVERY DAY, it's called the internet, it's called HTML which, really deep down, is XML that transmits some of the greatest amounts of information around the world billions and billions of times over, and it just works, not perfect, but it does.

                                          C Offline
                                          C Offline
                                          Chris Maunder
                                          wrote on last edited by
                                          #55

                                          Yes, the discussion certainly drifted a little from "I am losing my mind trying to coerce a class to serialise to XML using the .NET serialisers", and the dumb hacks you do when you just need to get something done and don't actually need the magic the classes provide. XML, to me, followed the classic arc of new-tech-to-solve-well-defined-problem, into the you-can-use-it-everywhere! right into we're-using-it-everywhere!-Even-my-cat-uses-it and then into the gutter of why-on-earth-is-it-being-used-here. I see the same thing with AI to be honest. Amazing idea, finally hit its stride, and now you can't swing said cat without hitting half a dozen products that use AI for no reason other than to have "uses AI" in their marketing (or they really mean they use a Bayesian model or even just basic statistical analysis).

                                          cheers Chris Maunder

                                          C 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups