473,883 Members | 3,134 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

The stupidest design I ever saw

This is a continuation of the old theme, now featuring xml.

<tree>
<node id=0 parent_id=null label='A'>
<node id=1 parent_id=0 label='B'>
<node id=2 parent_id=0 label='C'>
...
</tree>

Apr 5 '06
44 2825
-CELKO- wrote:
Congrats on the book!!

Seconded.
Please don't forget to drop us a note when it is available :-)
Apr 7 '06 #31
JOG
mAsterdam wrote:
-CELKO- wrote:
Congrats on the book!!

Seconded.
Please don't forget to drop us a note when it is available :-)


I gotta say, I like the cover too....

Apr 8 '06 #32
Vadim Tropashko wrote:
There are two sets: formal objects and formal
attributes. Check up the "Formal Concept Analysis in Information
Science" article by Uta Priss -- it is written for general audience.


Here is a link:

http://upriss.org.uk/papers/arist.pdf
Marshall

Apr 9 '06 #33
Marshall Spight wrote:
Joseph Kesselman wrote:
Mikito Harakiri wrote:
<node id=0 parent_id=null label='A'>
Whatever that is, it isn't XML. XML attribute values must be quoted.


Exactly. Once you put quotes around the attribute values, the
design becomes really good, because text based formats are
flexible and nice. You can just put in whatever you want. That's
the right way to manage structured data. "Traditiona l" databases
are no good, because tables are flat, and the real world is tree
structured.

Really? Where is the proof that that? I find hierarchies artificial and
limiting when trying to model stuff. They are very poor at handling
more than about 3 orthogonal categories.

There are lots of structures that you can't express
as a single table, like a linked list.
This is wrong, but somebody already pointed that out.

Another advantage of text formats is that anyone can write a parser
for them. You want as many parsers as possible; that way the
market can decide on what variations of the format are acceptable.
Comma-seperated value format is far easier to build a parser for than
XML.

XML is for people who don't "get" relational IMO. XML is neither good
for (most) human eyes nor computerization of info because it encourages
poor normalization and over-use of hierarchies. If you go down the
nested text route, then LISP ess-expressions would be better anyhow. It
is usually better repetition factoring, for one.


Marshall


-T-

Apr 9 '06 #34
topmind wrote:
Marshall Spight wrote:

Exactly. Once you put quotes around the attribute values, the
design becomes really good, because text based formats are
flexible and nice. You can just put in whatever you want. That's
the right way to manage structured data. "Traditiona l" databases
are no good, because tables are flat, and the real world is tree
structured.

Really? Where is the proof that that?


It was a joke. Read it again in ironic mode.

Comma-seperated value format is far easier to build a parser for than
XML.

XML is for people who don't "get" relational IMO.


My take is that the Children of SGML have had such great success
with document processing and especially with the web, that it's
gone to their head. They have overgeneralized their techniques
until they feel they have the right answer for structured data
management. In fact, using XML to manage structured data
makes about as much sense as doing document management
in SQL.
Marshall

Apr 9 '06 #35
Marshall Spight wrote:
Joseph Kesselman wrote:
Mikito Harakiri wrote:
<node id=0 parent_id=null label='A'> Whatever that is, it isn't XML. XML attribute values must be quoted.


Exactly. Once you put quotes around the attribute values, the
design becomes really good,


Well, tolerably good. It's poor design to use the attribute name
"id" for a value which may not be an XML ID, even though this may
not be necessary to the design, simply because it's ambiguous and
misleading. The ID data type is there for a purpose, and if it is
not being used, then it is not a good idea to use a name which
implies that it is.

Oh, and the node element tag should be an empty element.
because text based formats are
flexible and nice. You can just put in whatever you want.
Sadly, people do do just that :-)
That's
the right way to manage structured data. "Traditiona l" databases
are no good, because tables are flat, and the real world is tree
structured.
Some of it. A lot of my work consists in unwedging users from
unpleasant places they have gotten themselves jammed into because
someone told them the world was a tree, and they tried to apply
this to a linear structure which was not tree-shaped.
There are lots of structures that you can't express
as a single table, like a linked list.

Another advantage of text formats is that anyone can write a parser
for them. You want as many parsers as possible; that way the
market can decide on what variations of the format are acceptable.


Only if the market is well-informed. A deliberately mis-informed
market makes a wonderfully blunt instrument for making your chosen
format acceptable regardless of its usefulness.

///Peter
--
XML FAQ: http://xml.silmaril.ie/
"When all you have is a chainsaw, everything looks like a tree"
Apr 9 '06 #36
Neo
> "Formal Concept Analysis in Information Science" article by Uta Priss
http://upriss.org.uk/papers/arist.pdf


Both the XML example given earlier which modelled vehicle
classification as a hierarchy and Formal Concept Analysis which also
employs a classification hierarchy (see example in Fig 2) are flawed in
that it can lead to situations where a thing classified by it immediate
parent, isn't classified by the parent of the parent.

Take a look at all the links between various nodes in Fig 2 and
determine if there is a consistent relationship between nodes taking
into account direction of the link. Basically the most consistent
relationship seems to be that a lower node is an instance/example of
the upper node. You can ignore top and bottom nodes which represent
Universal Concept and NULL respectively. So what is the relationship
between mammal and cartoon? Is cartoon a mammal?

Apr 9 '06 #37

Neo wrote:
"Formal Concept Analysis in Information Science" article by Uta Priss
http://upriss.org.uk/papers/arist.pdf
Both the XML example given earlier which modelled vehicle
classification as a hierarchy


I don't care about anything related to XML, unless my job requires it.
and Formal Concept Analysis which also
employs a classification hierarchy (see example in Fig 2) are flawed in
that it can lead to situations where a thing classified by it immediate
parent, isn't classified by the parent of the parent.
Wrong. The formal concepts lattice defines a partial order relation. If
an object and a formal attribute are ordered by the lattice order
relation then the object is in the "is a" relation to the concept
defined by the attribute. There is no requrement for the attribute to
be the immediate node on the leattice. Example: Garfield "is a" mammal.
Take a look at all the links between various nodes in Fig 2 and
determine if there is a consistent relationship between nodes taking
into account direction of the link. Basically the most consistent
relationship seems to be that a lower node is an instance/example of
the upper node. You can ignore top and bottom nodes which represent
Universal Concept and NULL respectively. So what is the relationship
between mammal and cartoon? Is cartoon a mammal?


Both cartoon and mammal are formal attributes. If two attribute are in
the lattice partial order relation, then one concept is a subclas of
the other. Cartoon is a mammal in this example..

Apr 10 '06 #38
Neo
> Cartoon is a mammal ...

Your joking, right? Cartoon is not a mammal. It is a classification
that has no direct relationship to mammal.
... then one concept is a subclas of the other


And that is the crux of the problem; in that it can lead to situations
where a thing classified by the subclass, isn't necessarily classified
by the respective class. For example, a robotic dog manufactured by
Sony, is a dog, is a toy and is a machine, but it isn't necessarily a
mammal (unless it actually has mammary glands which produce milk for
its young, etc).

Apr 10 '06 #39
JOG
RE: Marshall's original post - I can't be the only one who saw the
irony in that right? Or are all those replies being post-ironic?

Either way great post Mr Spight. Its rare on cdt that I read a post and
actually laugh outloud. (although that has happened more and more
recently...)

Apr 10 '06 #40

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

22
2146
by: Nunaya | last post by:
We have developed two objects called "customer" and "salesrep". For simplicity, assume that these two objects will talk directly to a database. The database has three tables: customers, customersalesreps (allows multiple salesreps to be associated with a customer), and salesreps. The customer object has business rules that allow manipulation of customer information (add,update,delete,select,etc). The salesrep object has business rules...
4
1612
by: Merlin | last post by:
Hi Imagine the following classes (A class diagram will help) BASE, A, B, C, D, E, F, G. A, B, C, D, G inherit from BASE. E, F inherit from D.
8
3776
by: Ash | last post by:
Hello all, I am hoping this is the appropriate newsgroup for a C++ interface design question. I am trying to design an interface for a subscriber to register/deregister handlers for various events. The callbacks specified by the subscriber will be called when the events get trigerred in a different thread. Each event has different kinds of data associated with it. To achieve this I have the following: // The following describes the...
7
1428
by: chrisn | last post by:
Do real developers use the design view? Thought it would be interesting to start a debate on this subject. According to all the MCP materials (yes, I know a bit mickey mouse), the design view is the way to build your ASP.NET pages. Problem is: - it generates goddam awful HTML, certainly not standards-based. - use of absolute positioning and tables for layout.
20
1545
by: Brad Pears | last post by:
I am completely new to vb .net. I am using visual Studio 2005 to redo an Access 2000 application into a .net OO application using SQL Server 2000 - so a complete rewrite and re-thinking of how this app will work. I have NEVER done any OO programming at all although I have used OO techniques in programs of course - just never actually designed the classes etc... So I am just a tad nervous in re-writing this Access application as it is...
17
4871
by: roN | last post by:
Hi, I'm creating a Website with divs and i do have some troubles, to make it looking the same way in Firefox and IE (tested with IE7). I checked it with the e3c validator and it says: " This Page Is Valid XHTML 1.0 Transitional!" but it still wouldn't look the same. It is on http://www.dvdnowkiosks.com/new/theproduct.php scroll down and recognize the black bottom bar when you go ewith firefox(2.0) which isn't there with IE7. Why does...
2
1148
by: John | last post by:
Hi there, I am writing a simple program that will connect to database. Database has 2 tables, let's call them father and child. This is one to many relationship. I would like to create corresponding classes for each table. Each class would have functions Insert, Edit, Delete I would like to find some information how to properly design my classes. I used to program in php and delphi.
23
2452
by: JohnH | last post by:
I'm just recently come to work for an auto brokerage firm. My position involves performing mysterious rites, rituals and magick in order to get information out of their access database. This is due to the fact that the "designer" they hired had an unfortunate ability to tink around with a program far beyond her reach. She had no concept of any of the principles of database design, so what i'm left with is a junkpile. The only reason I...
7
1716
by: Darko | last post by:
Isn't JS the stupidest language? <script> function x() { var i = 2; alert( "i = " + i ); if ( i == 2 ) { var i = 3; alert( "i = " + i );
0
9944
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, weíll explore What is ONU, What Is Router, ONU & Routerís main usage, and What is the difference between ONU and Router. Letís take a closer look ! Part I. Meaning of...
0
11154
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
10863
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
10422
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
7136
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5807
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
1
4622
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
4228
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
3241
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.