Hacker News new | ask | show | jobs
by tokenizerrr 4481 days ago
Well yes. The problem there is that someone made a bad decision on how to structure their XML. If the same was done like this:

      <customer custid="496F3AB">
    	<account>
    		<type>Personal</type>
    		...
    	</account>
    	<account>
    		<type>Business</type>
    		...
    	</account>
      </customer>
it would make a lot more sense, I think.
2 comments

Which problem XML makes all too easy.

The really annoying issue is as the parent says, that the accounts collection does not have a name. This means there's no canonical mapping for the structure into a programming language object, which necessitates that libraries require annotations or some other side-channel way of specifying how to wrap the accounts into a collection.

In Jaxb e.g., how many times must we add junk like:

  @XmlElementWrapper(name = "accounts")  ?
In any individual case the workaround is easy, but it's annoying to have to do it repeatedly.

XML really is better as document markup than structured data representation.

Or:

      <customer>
        <custid>496F3AB</custid>
        <accounts>
           <account>
    	     <type>Personal</type>
             ...
    	   </account>
    	   <account>
    	     <type>Business</type>
    	     ...
    	   </account>
    	</accounts>
      </customer>