Re: Multi Valued Interface Models?

From: x <x_at_not-exists.org>
Date: Mon, 13 Feb 2006 15:08:53 +0200
Message-ID: <dsq0d7$r06$1_at_emma.aioe.org>


"dawn" <dawnwolthuis_at_gmail.com> wrote in message news:1139598896.676278.14030_at_g44g2000cwa.googlegroups.com...

> x wrote:

> > You have not shown a complete model of the interface.

> A complete model? Maybe we need to look at what a model is. A model
> is a metaphor or a, well, model of the real thing. It is not the real
> thing. A model car doesn't usually have a working engine. It might
> not have working brakes or even any brakes.

You have not given the specifications for the interface in a way that not assume a particular solution.

> > HTML and XML are not UML.
> > I don't think UML is generally acceptable.
>
> Nothing is completely acceptable everywhere. Prototypes might come as
> close as possible to be generally acceptable, but you always get
> comments about how it is not a "complete prototype" which I gather
> would be, well, the final product. What diagramming specification is
> more commonly accepted than UML? That is not a rhetorical question.
> I'd be happy to use something else for showing a diagram of a logical
> model of data.

I don't know UML but I was exposed to some OMT after I've learned about formal languages, automata theory and RM. For this reason it was easy to grasp.

http://microgold.com/Stage/UML_FAQ.html say it is an object oriented modeling method.
And you have not given :
 -Use-case diagrams

- Class diagrams
- State-machine diagrams
- Message-trace diagrams
- Object-message diagrams
- Process diagrams
- Module diagrams
-Platform diagrams

so I don't know if you have given an UML model after all.

> > > > Why not using a real example of an application interface ?
> >
> > > I'm looking at the model of data for a user interface and then said
> > > that same model could be implemented in xml, for example, for data
> > > exchange.
> >
> > You are not looking at a relational model of data.

> I am looking at what data models could be used for modeling the data.
> In the case of a UI, you cannot model the exact data in the interface
> using the RM.

Why ?

> > You talk about data copying.

> ?

You said "same model could be implemented in xml, for example, for data exchange".
How is xml better at data exchange rather than at data copying (data transfer) ?

> >
> > > > HTML/XML/HTTP is a poor low level complex way to describe an
interface.
> >
> > > I thought of it as a high level way. I wasn't intending to bring HTTP
> > > into the picture, only to take an example of an arbitrary UI. Without
> > > loss of generalization...

> > If they were high level tools you would have found them easy to use.

> So Dreamweaver and GoLive are high level tools and HTML is a low level
> tool? OK. I use GoLive and only bring up the source code panel and
> code raw xhtml. So, perhaps mid-level for the html and xml.

Then GoLive is not good enough if you have to go to raw xhtml. I would not call xhtml source code because it is not the source but the target.

> > > > Are
> > > > you trying to use a high level tool to model a low level one ? (like
> > > > implementing assembler in Pascal or Prolog )
> >
> > > No.
> >
> > Then you have done that by mistake.
>
> Sorry, x, I'm just not tracking with you.

You will.

> > > > One does not need to model all interfaces with RM.
> >
> > > OK, now we are getting somewhere. In fact one cannot model all
> > > interfaces using the RM, right?
> >
> > > > Just the ones at the highest level.
> >
> > > I'm not tracking on this.
> >
> > If you need to integrate N high level software components it would be
better
> > if all of them would have the same interface (a relational one :-).

> I agree on the first part. I don't see how that would be possible
> using the RM, however. How could you specify an arbitrary UI, such as
> the example I gave, using the RM?

You have not given the specification for the UI. Have you heard of Model-View-Controller UI paradigm ? RM could be used for the "Model" part for example. I think the screen layout can also be described by RM. What is left ? The painting of the screen, capturing user actions (which are the I/O part) and responding to user events. Which of the above would you want RM to handle ?

Have you heard about DOM http://www.w3.org/DOM/ ?

> > > > If you want to use the same model for
> > > > all interfaces you can always use assembler programming for that.
> >
> > > Yes, given a programming language as the implementation of a data
> > > model, I would agree with that. What are other options for that data
> > > model (and implementations thereof)? One model we cannot use is the
> > > RM. Languages that implement the RM cannot be used as the exclusive
> > > language for the user interface. Any disagreement with me on this one
> > > likely stems from some difference in understanding of <em>data
> > > model</em> or a common understanding of a data model for an interface.
> >
> > > SQL is the language used to interface with an RDBMS and the model is
> > > attempts to employ is the RM. What models can be employed with the
> > > interface to the user (replace the dbms with a user and model the
> > > data).
> >
> > Something based on logic like RM because peoples use proposition when
they
> > affirm or deny something in writing.

> Yes and I think that is good. I want to model a proposition of

> I would like a pizza with pepperoni and sausage on it
> like this

> I would like a pizza (foodItem) with pepperoni and sausage
> (toppingList) on it.

> with a predicate

> I would like a <foodItem> with <toppingList> on it.

How would this exclude the RM ?

Order(client,foodItem, toppingList)

> > > > Have you noticed how hard is to write all the HTML&Co code by hand ?

> > > Very painful, yes. And then I had problems with putting xml in html
> > > across browser platforms and ended up replacing < with &lt; Ugh!
> >
> > How is this for a high level language ?
> >
> > > > Have
> > > > you noticed how hard is to maintain this code when you have to use
> > reverse
> > > > engineering for it ?
> >
> > > I'm not sure I understand what you mean with that.
> >
> > This is the same as translating some code to assembler/object code and
> > losing the source.

> OK. Yes, no fun.

Have you had a similar experience with applications implemented with Pick systems ?
Have you had a similar experience with applications implemented with an SQL DBMS ?
For which one is harder to recover the data encoded in the database ? For which one is harder to understand how the data is manipulated ?

> > I mean do. :-) But I don't see yet how this means to completely
replace/hide
> > the RM instead of extending it.

> I don't care how you get there, but the RM as implemented and used
> today is what I think needs to be different. It seems to me that as
> soon as you remove 1NF as originally defined, you have something other
> than the RM.

You would have to ask Codd how 1NF was originally defined. What is atomic data by your definition ?

The fact that RM is badly understood and implemented is recognized by many. Codd said this many times.

> But if we add in relation-valued attributes, then one
> thing we are missing is ordered lists.

Why ?

> > It seems you are failing to take advantage of the assumptions made by
the RM
> > to show its weak points.

> > If the RM can capture the data to be retained for a long time I don't
> > understand why it cannot capture the data from an user interface.

> The question is not whether it can capture the data, but whether it can
> be the model behind the interface, which would mean that an
> implementation of that model could be used to code the interface.

Would you want RM to handle screen painting and mouse input ? Would you want RM to handle event handling ? :-)

> > There is data in a user interface that cannot be stored in an SQL
database ?

> Suspend all thoughts of storage from your mind in this discussion.

I was not thinking about storage.

> This not about persisting data using a data model, but providing a UI
> with a data model. It is the interface that uses a language whose
> abstraction is a data model. So I'm talking about the data model OF
> the UI.

I was asking if there is data that can be represented by the data model of the UI that cannot be represented by the data model of an SQL database.

> > Even so, what deny us to extend RM to handle that instead of completely
> > hidding or replacing it ?

> I am not opposed to set-based processing, so if you want to call it
> changes to the RM that's fine with me.

Ok.

> Once you hide it, however, you
> are no longer using it as the model for the interface.

Who said anything about hidding it ? Not me.

> > > Data models back interfaces, such as the data model used to interface
> > > between one piece of software or a human being and a SQL-DBMS. Look
at
> > > the data model behind an arbitrary user interface.
> >
> > I've looked and I've seen RM ;-)

> Can you sketch an RM-based language (that is, an implementation of the
> RM) where using only this language, you could output a web page from
> the UML class shown?

SQL + several base tables and constraints + some code in a general purpose language to handle the conversion to HTML because browsers don't have an SQL interface.

No one claimed one should use only SQL. But if I would be willing to try hard enough, maybe I could come up with a language based on the RM for writing code also not just for describing data. Then the applications would become easier to maintain :-)

> I'm working on how to state the argument another way. If anyone has
> suggestions, please jump in.

I already gave you some suggestions.

> > > But you have read each of my blog
> > > entries and you are not tracking with me on that point, so I'll keep
> > > working on how to say it. It is not (yet) an argument against using
> > > the RM for the interface to large shared data banks, as Codd was
> > > working on. I am right now showing that it cannot be the data model
> > > behind a UI. I'm not sure which part of the argument does not
resonate
> > > yet, but I will see what I can do to make it clearer. Thanks. --dawn
> >
> > Best luck! I hope we will learn something from all that.

> I'm sure I will.

I hope I will. I don't have that much software developing experience like you have.

> Already I have learned I am stupid and ignorant (if
> you are a follower of Fabian Pascal you might have read that). smiles.

This is an axiom. We are all like that but we don't like to be told :-) Received on Mon Feb 13 2006 - 14:08:53 CET

Original text of this message