usnistgov / ElectionResultsReporting

Common data format specification for election results reporting data
https://pages.nist.gov/ElectionResultsReporting
Other
23 stars 8 forks source link

Ordering of enumerations and attributes #30

Closed johnpwack closed 4 years ago

johnpwack commented 5 years ago

I favor strict alpha ordering of attributes within classes, but am now seeing that we're not doing that anymore, e.g., StartDate preceding EndDate, and Type preceding OtherType. Way back when Sam Dana was involved we decided it was ultimately easier to observe strict alphabetical ordering of the attributes. In some of the other CDFs, we are doing the strict alphabetical ordering, so I'd like to make this consistent. Any objections to this?

jdmgoogle commented 5 years ago

The original motivation for Start being paired with End and Type with OtherType was their conceptual links to each other. I think there's value in that, but if there's a desire to make this consistent with the other standards I won't bikeshed.

jungshadow commented 5 years ago

I'm with @jdmgoogle on this, though I may take a stronger stance. VIP created a styleguide that set guidelines for the logical ordering of properties, elements and attributes, and enumerations because, until the tooling exists to analyze the files via some other more convenient means, data producers and external validators will likely be visually inspecting these files. To put the files into alphabetical order may be convenient for development, but it's far more convenient for anyone outside development to view a model that reflects common mental mappings.

johnpwack commented 5 years ago

As someone old enough to remember when the KISS acronym was invented (ha, just kidding), I do think that keeping everything in strict alpha ordering is better. Conjuring my inner Sam Dana, XML is meant to be processed by software and not read by humans. But, I defer to people who are currently programming with CDFs, so I am in favor of adopting any approach, as long as it's possible to implement it consistently. I could see how the Pew style approach would be easier on someone in understanding the schema. So, if we do it according to the way things are arranged currently in ERRV2, that's fine with me. I'll work with JohnD to make sure we do it all consistently across the 4 specifications.

JDziurlaj commented 4 years ago

ERR will follow VIP style guide for the time being.