[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
Re: [xml-dev] Regularity: a fundamental property of declarative
- From: David Carlisle <d.p.carlisle@gmail.com>
- To: "Costello, Roger L." <costello@mitre.org>
- Date: Wed, 30 Jan 2019 21:21:40 +0000
On Wed, 30 Jan 2019 at 18:52, Costello, Roger L. <costello@mitre.org> wrote:
>
> Hi Folks,
>
> What are the properties of “declarative”?
>
> Here’s one.
>
> Assertion #1: A key feature of declarative data is the ability of readers (both human readers and machine readers) to recognize, at a glance, the shape/topology of the data.
"Declarative" is usually applied to programming languages (as opposed
to "Imperative" or other styles) I don't know what you mean by
declarative data.
>
> Assertion #2: Regularity gives data a visible/parse-able shape
OK (probably)
> and therefore regularity is a fundamental property of declarative.
I don't understand the "therefore"
>
> Assertion #3: Declarative is superior. Always choose declarative.
It may have advantages in some circumstances, but you can not always
(or even usually) choose your data.
>
> Conclusion: Choose regular data over irregular data.
Irregular data may be hard to model and inconvenient to process, but
it may be what makes the job interesting.
>
> Below is an example of regular XML-encoded data followed by an example of irregular XML-encoded data. The first is declarative and superior. Choose the former over the latter.
I'd say if anything they are examples of badly and better structured
markup. The data (a list of names and addresses, each address with one
name) is fairly regular (and is the same in both examples).
Irregular data would have people with multiple addresses, people with
unknown or missing addresses, addresses with no known occupants, etc.
>
> Do you agree with my assertions, conclusion, and examples?
No. Sorry:-)
>
> /Roger
>
> Regular Data (declarative, preferred)
>
>
> <People>
> <Person>
> <Name>John</Name>
> <Residence>Massachusetts</Residence>
> </Person>
> <Person>
> <Name>Sara</Name>
> <Residence>Illinois</Residence>
> </Person>
> <Person>
> <Name>Bill</Name>
> <Residence>California</Residence>
> </Person>
> <Person>
> <Name>Lisa</Name>
> <Residence>New Mexico</Residence>
> </Person>
> </People>
>
> Irregular Data (inferior, avoid)
>
>
> <People>
> <Massachusetts>
> <Person>
> <Name>John</Name>
> </Person>
> </Massachusetts>
> <Person>
> <Name>Sara</Name>
> <Residence>Illinois</Residence>
> </Person>
> <Resident-of-California>
> <Person>
> <Name>Bill</Name>
> </Person>
> </ Resident-of-California>
> <New-Mexico>
> <Person>
> <Name>Lisa</Name>
> </Person>
> </New-Mexico>
> </People>
>
>
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]