POV-Ray : Newsgroups : povray.programming : A Proposal for XML POV Server Time
25 Dec 2024 11:03:16 EST (-0500)
  A Proposal for XML POV (Message 1 to 10 of 50)  
Goto Latest 10 Messages Next 10 Messages >>>
From: Nigel Stewart
Subject: A Proposal for XML POV
Date: 14 Mar 2000 08:15:20
Message: <38CE3B1A.80B4F27@nigels.com>
(crossposted from povray.general - "The Language of POV" thread)

If you've got an itching, an interest, or a burning desire
for XML based POV data storage, speak now.  Please don't
recycle the flames from the previous thread... :-)
What I would like to do is develop a proposal - do more
conceptual development, demonstrate more advantages,
consider the implications for the Povray architecture.


Ken Tyler on the idea of XML for Povray:

> >         If there are other people who find these
> >         possibilities attractive, I would be interested
> >         in developing a more detailed proposal.  Some
> >         aspects would require interaction with the
> >         POV team, or the TAG people - but I think it's
> >         fair to present them with more than a
> >         "we think XML is funky idea" or have them
> >         sift through threads of conceptual development
> >         and hysterical backlash.
> 
>   Speaking as a TAG member I will offer this advice. If you can get other
> people excited about your ideas, and between you draft a concrete proposal,
> I would be happy to present it to the POV-Team on your behalf for their
> consideration. It would really help if you could figure out a way to make
> all of us understand the ramifications of your proposal, and get us excited
> about it, but if you are sure it has merit I/we will not stand in your way.
> 
> What you need to bring to the table -
> 
> 1. Detail your proposal as far as functionality and purpose.
> 
> 2. Describe in detail what advantages your proposal has over the current
>    system.
> 
> 3. Who benefits from the changes or additions of your proposal.
> 
> 4. Try to give some indication of how difficult it will be to implement
>    and what kind of language support will be needed to make it portable
>    to all platforms that POV-Ray currently supports.
> 
>   Remember that if you cannont get other people here excited about your
> proposal there is little likelihood the POV-Team will get excited about
> it. Also remember that timing may be everything. Right now the POV-Team
> is actively working on finalizing the release of POV-Ray v3.5 which for
> all intents and purposes should be considered feature locked at this time.
> This means from the POV-Team's point of view any action they might take
> towards your proposal will have to wait for their planned C++ re-write
> for POV-Ray v4.0. As far as I know the POV-Team has not entered into
> any detailed discussions on what changes will be made in v4.0, other
> than the move to C++, and it is likely they will want to have their own
> data structure decided before accepting additional suggestions in this
> regard. Their internal discussions will likely be sometime down the
> road when the release of POV-Ray v3.5 has been made public and they have
> had a chance to hammer the public reported bugs out of it.
> 
> Keep this in mind...
> 
> What you are proposing may actually be better suited for a dedicated
> patch of the program rather than something the mainstream POV-Ray user
> will be interested in having in the official version of the program.



The previous post:

> So what exactly are you suggesting? That POV should use XML for data
> representation and should internally convert POV-Script to XML as well
> as supporting XML input?

        I've been giving this some thought today, pondering the
        technicalities as well the unexpected hysteria generated
        on povray.general and the IMP list.  Every day I go to
        work improving a software product, trying to deliver the
        features that users are asking for.  I get a lot of
        satisfaction from finding elegant, robust and user
        friendly solutions to new problems.  But, in the context
        of povray, the mere suggestion of some kind of paradigm
        shift seems to upset people very quickly. 

        Anyway - here is a more concrete model of how I think
        povray data input should be handled.  There needs to
        be a clean and simple interface between the POV parser
        implementation and the core POVray raytracing engine.
        This API might look like a bunch of simple functions
        such as "bool insertSphere(...)" which is as minimal
        as possible, while supporting all of the POV data types.
        Things like loops, variables and macros should be
        strictly layered above this API.  This API would also
        make a nice DLL interface, eventhough the POVteam
        don't like the idea of POV being used as a library.
        The existing parser simply becomes one possible user
        of this API.  Text editing die-hards can do whatever
        they please, without any threat from trendy programmer
        types who want to do different things.  Another user
        of this API could be an interpreted C environment, 
        POV-CSDL, XML, or whatever takes people's fancy.
        The POV-team control the "official" API, but allow 
        people to build on top of it freely.  Ideally, the
        API is also made available as DLL so that Java, C,      
        Delphi, etc programmers can do whatever they like,
        in the language of their choice.

        This handles input.  Another question is output -
        would it be useful and desirable to provide some
        mechanism to extract the state of a POV world 
        at runtime?  Maybe, maybe not.  I do not intend
        to deal with this at this stage.

        Before closing, a few points about an XML pov
        that perhaps have not been stated clearly:

        XML is certainly not customised for the problem
        of text editing descriptions of 3D scenes.  It's
        not bad, but it's not ideal.

        XML is a mechanism that would allow third party
        tools to manipulate POV scenes.  You load the
        data in, edit geometry, textures, etc, then
        save the data out.  One critical limitation in
        POV script is the difficulty in parsing it.
        In some ways, POV script has been so heavily
        optimised for hand editing (in addition to
        the macro and looping constructs) that it
        is much more complicated than it needs to be
        for many other tasks.

        XML is a mechanism that simplifies extension.
        You don't need to be a parser expert to define
        new data types, or to add attributes to objects.
        Because the grammar is less ambigous (taking
        advantage of verbosity) an XML parser can 
        ignore irrelevant data - but preserve it.
        Backwards compatibilty in a scheme like POV
        script is a more difficult problem.

        XML allows POV to take advantage of related
        technology such as VRML.  To support VRML
        datatypes, we simply borrow the grammar -
        no parser programming necessary.  To support
        a new procedural texturing architecture, we
        borrow their grammar, no parser programming
        necessary.  (There is a big difference between
        writing a parser and writing handlers for
        an XML parser)

        If there are other people who find these
        possibilities attractive, I would be interested
        in developing a more detailed proposal.  Some
        aspects would require interaction with the
        POV team, or the TAG people - but I think it's
        fair to present them with more than a
        "we think XML is funky idea" or have them 
        sift through threads of conceptual development
        and hysterical backlash.

        XML is of immediate commercial interest to me
        for other projects, so I can justify a lot of
        time as developing expertise. ("homework")
        I think that there should be at least a 
        group of people involved, and a healthy
        discussion, in combination with some 
        public relations.  If you think that XML
        is an interesting technology to apply to
        POVray, are just curious about XML, I would
        encourage you to drop me an email.

        XML does not mean manual editing of tags
        in a text editor.  People that keep harping
        on this are just being silly.  But I am quite
        convinced that text editing should become a
        thing of the past.  (I never can remember
        the RGB or even name for "that favorite 
        blueish grey" that I always like to use, nor
        should I have to remember junk like that.)

--
Nigel Stewart (nig### [at] nigelscom)
Research Student, Software Developer
Y2K is the new millenium for the mathematically challenged.


Post a reply to this message

From: Nigel Stewart
Subject: Re: A Proposal for XML POV
Date: 14 Mar 2000 16:43:06
Message: <38CEB21F.5C364739@nigels.com>
Check out http://www.xml.org/xmlorg_registry/index.shtml
for a nice long list of XML based data definition projects.
POV should be in this list too.

--
Nigel Stewart (nig### [at] nigelscom)
Research Student, Software Developer
Y2K is the new millenium for the mathematically challenged.


Post a reply to this message

From: Glen Berry
Subject: Re: A Proposal for XML POV
Date: 14 Mar 2000 21:12:35
Message: <6fDOOCNuiLQ=61TEAmMxmPrgTJQ6@4ax.com>
On Wed, 15 Mar 2000 00:14:02 +1100, Nigel Stewart <nig### [at] nigelscom>
wrote:

>(crossposted from povray.general - "The Language of POV" thread)
>
>If you've got an itching, an interest, or a burning desire
>for XML based POV data storage, speak now.  Please don't
>recycle the flames from the previous thread... :-)
>What I would like to do is develop a proposal - do more
>conceptual development, demonstrate more advantages,
>consider the implications for the Povray architecture.

I would certainly like to see what could be done with XML.
Unfortunately, I am not really a programmer. If there is anything I
can help with, I will. I just don't know how much help I will be.

Later,
Glen Berry


Post a reply to this message

From: Mark Wagner
Subject: Re: A Proposal for XML POV
Date: 15 Mar 2000 01:03:34
Message: <38cf27b6@news.povray.org>
Nigel Stewart wrote in message <38C### [at] nigelscom>...
>        Anyway - here is a more concrete model of how I think
>        povray data input should be handled.  There needs to
>        be a clean and simple interface between the POV parser
>        implementation and the core POVray raytracing engine.
>        This API might look like a bunch of simple functions
>        such as "bool insertSphere(...)" which is as minimal
>        as possible, while supporting all of the POV data types.
>        Things like loops, variables and macros should be
>        strictly layered above this API.

I'm not particularly interested in an XML POV-script.  However, completely
separating the parser from the renderer to allow other languages to be used
for writing POV scenes without going through the intermediary of POV-Script
sounds like an excellent idea.

Mark


Post a reply to this message

From: Nigel Stewart
Subject: Re: A Proposal for XML POV
Date: 15 Mar 2000 06:59:32
Message: <38CF7AD7.1CF81800@nigels.com>
> I'm not particularly interested in an XML POV-script.  However, completely
> separating the parser from the renderer to allow other languages to be used
> for writing POV scenes without going through the intermediary of POV-Script
> sounds like an excellent idea.

	And an idea that I hope the POV team will consider revisiting.
	They have taken the position that POV shall not be used as
	a library, but I really do think it's worth reconsidering this
	position - at least from a technical point of view.

--
Nigel Stewart (nig### [at] nigelscom)
Research Student, Software Developer
Y2K is the new millenium for the mathematically challenged.


Post a reply to this message

From: Nigel Stewart
Subject: Re: A Proposal for XML POV
Date: 15 Mar 2000 23:40:11
Message: <38D0655B.5EF3832A@nigels.com>
(Crossposted from private email to Ken, with permission)

>  I do not personally like the example you gave and think 
> it unnecessarily makes the scene language harder to use and 
> understand. 

	I'm working on the assumption that hand-editing is
	not the only way to describe a 3D scene.  XML I think
	is editable, but certainly not optimised for this task.
	It is however, far more generic and flexible.  XML would
	never be a replacement for POV script, only an alternative.

> And correct me if I am wrong but isn't HTML just a glorified text based
> word processing and illustration language designed exclusively for 2d
> work? 

	HTML began as a mark-up language for ASCII.  The idea was
	to encode the structure of the document (headings, titles,
	paragraphs, lists) into the document, and let the browser
	decide how to format the result.  This is not a new idea,
	LaTeX does a similar thing, a document processing system
	that to me is similar to XML in its reasoning.

	Then, when the World Wide Web became mainstream, HTML got
	polluted with tags that control the appearence of the page -
	fonts and colours, table style, buttons,  etc.

	HTML is being evolved to XML in the form of XHTML, version 
	4 of the HTML standard.  The idea of XHTML is that layout
	information is in a different file to the document.  If you
	want to change the way the document looks, you change the
	style sheet, rather than editing the data.  Therefore, 
	style information is a template for any data of a given
	format, rather than being copied into every instance of that
	kind of data.

	The document then is purely a data model of the information,
	free of nasty formatting information.  The XML design allows
	databases and other applications read and write XML data
	without being bogged down in formatting information.

	VRML has been around for quite a long time, it is a file
	format that describes many similar objects to those in 
	POV.  VRML is evolving towards XML.  The advantage is that
	you no longer need a "VRML parser", you use a generic XML
	parser and work with the internal representation of the
	data - then write the data back out through a generic XML
	emitter.

> I just don't see how it, or a variation of it, would apply to a
> 3D object oriented program such as POV-Ray - not to be confused with
> OO programming.

	XML can be used for lots of data-description or 
	data-modelling problems - including POVray.
	Is it not reasonable for POVray to be able to
	interface to a database system for complex
	scene generation?  Or, a visualisation package,
	or a CAD system?  Or an XML editor with tools for
	graphical editing of POV specific information?
	An interactive texture editing tool?  An 
	interactive CSG modelling application?
	
> > For someone with a "povray.org" email address, you are
> > behaving in a very entrenched, "old guard" kind of way.

> When I am speaking in the news groups I do so as myself and not
> representing the views of the POV-Team - which I am not even a
> member of. 

	Ken, perhaps I came across too strongly, but
	given that you started the thread as a point
	of discussion, I thought you should be more
	neutral.  Having a "povray.org" email
	address is both a privelege and a responsibility.
	There is still a perception of "official
	viewpoint" even if it unintended.

	Creating a lynch-mob environment will simply
	scare programmers away from making any kind
	of suggestion.  Clearly my perspective is quite
	foreign to many POV people, but it doesn't
	mean that I am allowed to be as critical of
	POV users, as users seem to be critical of any
	new or different idea.

> As far as entrenched and old guard let me point out as a POV-Ray
> user who is not only proficient with the program, but also as one
> who is satisfied with it's current language structure, I have every
> right to defend it. 

	You're not only defending what you're like, but you're
	attacking the unknown.  These tactics are not fair,
	and not productive.

> I think some of the changes being proposed
> jeopardize the ease of use I enjoy with the program 

	No, they don't.

> One of the key factors that has let POV-Ray
> enjoys it's success and popularity to date is the fact that
> it appeals to such a broad range of people that use if for
> very different reasons. If you lose sight of this you run the
> very real risk of alienating a large portion of it's user base.

	No, because I have never suggested removing anything
	from POVray that is already there and makes it 
	desirable to these people.

	I keep hearing this threat on the povray newsgroups
	of "alienating the user base" - but I don't quite
	understand it's basis.  We certainly need a better
	model of interaction than this polarisation.
	
	As a commercial software developer, I spend all day
	pondering the user benefit consequences of software
	design decisions.  I must admit that I find it
	strange to be accused of being an "enemy of the users".


--
Nigel Stewart (nig### [at] nigelscom)
Research Student, Software Developer
Y2K is the new millenium for the mathematically challenged.


Post a reply to this message

From: Ken
Subject: Re: A Proposal for XML POV
Date: 16 Mar 2000 02:52:24
Message: <38D092F1.F1AE1327@pacbell.net>
Nigel Stewart wrote:

> >  I do not personally like the example you gave and think
> > it unnecessarily makes the scene language harder to use and
> > understand.
> 
>         I'm working on the assumption that hand-editing is
>         not the only way to describe a 3D scene.  XML I think
>         is editable, but certainly not optimised for this task.
>         It is however, far more generic and flexible.  XML would
>         never be a replacement for POV script, only an alternative.

So if I understand you correctly I will be able to describe my Pov scenes
exactly as I do now without having to use TAGs and all of the other format
styles that come with XML ?

If XML is implemented how will it be incorporated into POV-Ray. Will it
be internal to the program or an external alternative? If external how
will it communicate with POV-Ray ? If POV-Ray has to have two scene
description languages how much baggage will it carry with it ? Is there
any parsing speed advantages with XML ? How much ?

> > > For someone with a "povray.org" email address, you are
> > > behaving in a very entrenched, "old guard" kind of way.
> 
> > When I am speaking in the news groups I do so as myself and not
> > representing the views of the POV-Team - which I am not even a
> > member of.
> 
>         Ken, perhaps I came across too strongly, but
>         given that you started the thread as a point
>         of discussion, I thought you should be more
>         neutral.  Having a "povray.org" email
>         address is both a privelege and a responsibility.
>         There is still a perception of "official
>         viewpoint" even if it unintended.

 I never attempt to decieve and am careful to be myself. I understand
that there is a certain amount of both privelege and a responsibility
but I also have every right, no every obligation, to speak my own mind.
When I am Mr. TAG or Mr. Linkmaster I sign my messages as such and conduct
myself accordingly. The rest of the time I am going to stay just me.

>         Creating a lynch-mob environment will simply
>         scare programmers away from making any kind
>         of suggestion.  Clearly my perspective is quite
>         foreign to many POV people, but it doesn't
>         mean that I am allowed to be as critical of
>         POV users, as users seem to be critical of any
>         new or different idea.

I try to be subjective in my criticisms and seldom attempt to encite
a riot. I am also not afraid to speak my mind when I think it is called
for. I certainly don't think that all of our visitors hang on my every
word nor should they. Those who respect me I think do so because they
know me for who I am and not because of my e-mail address. Let's give
the visitors here a little credit for their intellegence.
 
> > As far as entrenched and old guard let me point out as a POV-Ray
> > user who is not only proficient with the program, but also as one
> > who is satisfied with it's current language structure, I have every
> > right to defend it.
> 
>         You're not only defending what you're like, but you're
>         attacking the unknown.  These tactics are not fair,
>         and not productive.

The unknown can be a scary place but it's not like I am wearing blinders
either. Sometimes I take the "are you nutz?" stance just to see if I can
get the person making the suggestion to offer a little more clarity about
what they are proposing. We do get some pretty strange suggestions here
on ocassion and you really have to drag the information out of people if
you want to find out what they are really talking about.
 
> > I think some of the changes being proposed
> > jeopardize the ease of use I enjoy with the program
> 
>         No, they don't.

If I have to hand code XML then yes they do !
 
>         I keep hearing this threat on the povray newsgroups
>         of "alienating the user base" - but I don't quite
>         understand it's basis.  We certainly need a better
>         model of interaction than this polarisation.

What polarization ? With as many people as we have using this
program, for so many differnt reasons, there is no polarazation
present at all. If we (we as in the pov world not ME) change
POV-Ray to support XML to please you, will I, and the other hand
coders be pleased ? Will the modelling programmers such as the
author Moray be pleased with having to recode his entire program
that he has been developing for 6 years supporting the current
syntax ? Will all of the utility writters want to go back and
rework their programs to use the new XML language ? Will I be
able to render all of my older scenes ? Who gets hurt and who
gains ? These are serious questions !

I guess that once I understand the answer to my fisrt question in
this message the sooner I will be able to either support XML or
not. And just because I do not support it does not mean that
others will not. If I decide to personaly not support it then
I will stay out of the way and let others do as they wish with
the idea. If Pov changes, and I don't like it, I'll just quit
using the program. Others may do the same.

-- 
Ken Tyler -  1300+ Povray, Graphics, 3D Rendering, and Raytracing Links:
http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: Nigel Stewart
Subject: Re: A Proposal for XML POV
Date: 16 Mar 2000 06:29:15
Message: <38D0C535.158EB2F0@nigels.com>
> >         I'm working on the assumption that hand-editing is
> >         not the only way to describe a 3D scene. 
> 
> So if I understand you correctly I will be able to describe my Pov scenes
> exactly as I do now without having to use TAGs and all of the other format
> styles that come with XML ?

	I think that POV script and an XML format should
	coexist.  Translation from XML to POV script is
	easy, going the other way depends on the design
	of the POV parser.

> If XML is implemented how will it be incorporated into POV-Ray. 

	The best way I can think of is to define an API
	between the core POV raytracer, which both 
	the pov script parser and the XML pov parser
	can use.

> If POV-Ray has to have two scene
> description languages how much baggage will it carry with it? 

	Not much, supporting XML is a matter of linking
	in a 3rd party libary and some code that interfaces
	to the theoretical POV API.  In all, a fraction of
	the complexity of the current POV script parser.

> Is there any parsing speed advantages with XML ? How much ?

	Maybe, maybe not.  Hard to say.  Interesting question.

> you really have to drag the information out of people if
> you want to find out what they are really talking about.

	Ken, I think I've been quite willing to explain
	the ideas.
 
> > > I think some of the changes being proposed
> > > jeopardize the ease of use I enjoy with the program
> If I have to hand code XML then yes they do !

	Nobody is going to force you to hand code XML.
	
	To me, this concern is something like a 
	bycycle owner being worried that if they
	get a car - it will be too heavy to pedal.
	One of the points of XML is allow 
	constrained, relevant, accurate and
	application specific editing tools.
 
> What polarization ? With as many people as we have using this
> program, for so many differnt reasons, there is no polarazation
> present at all. If we (we as in the pov world not ME) change
> POV-Ray to support XML to please you, will I, and the other hand
> coders be pleased ? 

	This is exactly what I'm talking about.  You are the
	prosecuter, I am the accused.  "You are hereby charged
	with attempting to subvert the usefulness of the
	POVray raytracer..."  Why not just discuss the 
	technical issues without getting emotive?

> Will the modelling programmers such as the
> author Moray be pleased with having to recode his entire program
> that he has been developing for 6 years supporting the current
> syntax? 

	The Moray author may in fact have their own 
	opinion, but I expect that if migration is
	optional they'd make a decision based on the
	usefulness of the feature.  I think it would
	be very advantagous for the Moray author to
	support XML - suddenly their market expands to
	include VRML modelling.

> Will all of the utility writters want to go back and
> rework their programs to use the new XML language? 

	They wouldn't have to, but they might be
	seduced by the new possibilities.

> Will I be able to render all of my older scenes? 

	That is entirely upto the guys who govern
	POV script.  

	XML scenes are much more likely to survive
	revisions because conversion can be
	automated.  (And because, XML is easy to
	parse, while POV script isn't)

>These are serious questions !

	Yes, and all the questions need to be asked.
	 
> If Pov changes, and I don't like it, I'll just quit
> using the program. Others may do the same.

	If POV doesn't change it will certainly
	die a slow painful death.  Each comment
	like this is another nail in the coffin.

--
Nigel Stewart (nig### [at] nigelscom)
Research Student, Software Developer
Y2K is the new millenium for the mathematically challenged.


Post a reply to this message

From: Ken
Subject: Re: A Proposal for XML POV
Date: 16 Mar 2000 15:03:11
Message: <38D13DFA.6A1C99FC@pacbell.net>
Nigel Stewart wrote:

> > If Pov changes, and I don't like it, I'll just quit
> > using the program. Others may do the same.
> 
>         If POV doesn't change it will certainly
>         die a slow painful death.  Each comment
>         like this is another nail in the coffin.

Which is a good reason for me to now keep my comments to myself.
If you do put together a working proposal for the POV-Team let
me know and I will present it to them for you. You can be assured
that I will do so without bias or prejudice and will simply
provide them with whatever material you choose to present.
Other than that there is really not much more I can contribute
to this project because I really am uninformed where XML is
concerned and as such have little to offer in that regard.

Good luck in your endeavors,

-- 
Ken Tyler -  1300+ Povray, Graphics, 3D Rendering, and Raytracing Links:
http://home.pacbell.net/tylereng/index.html http://www.povray.org/links/


Post a reply to this message

From: Mark Wagner
Subject: Re: A Proposal for XML POV
Date: 17 Mar 2000 00:42:47
Message: <38d1c5d7@news.povray.org>
Nigel Stewart wrote in message <38D0C535.158EB2F0@nigels.com>...
> I think that POV script and an XML format should
> coexist.  Translation from XML to POV script is
> easy, going the other way depends on the design
> of the POV parser.
>
>> If XML is implemented how will it be incorporated into POV-Ray.
>
> The best way I can think of is to define an API
> between the core POV raytracer, which both
> the pov script parser and the XML pov parser
> can use.


Would it be possible to parse and render a mixed format scene, for example,
an XML scene that makes use of existing POV-script include files?

Mark


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.