DragonFly BSD
DragonFly kernel List (threaded) for 2003-12
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: configuration files


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 12 Dec 2003 13:25:31 -0800 (PST)

:> I have always viewed XML as more of an interchange format.  If you
:> aren't going to exchange data with somebody why do you need to use
:> that type of format?  Right now rc.conf for example is effectively
:
:only as long as "somebody" is not a program. 
:-- 
:	Sander

    This isn't really accurate.  RCNG is designed for programmatic 
    interfacing.  That's how the RC boot system talks to it.  It has a
    very strict specification that allows the system to construct a
    dependancy graph and execute the individual subsystem scripts through
    a clear, concise, formally defined API.

    Just because it isn't XML doesn't mean it isn't machine readable.
    The RCNG files are very easily managed in a programmatic fashion.
    The 'rcorder' program has no trouble pulling dependancy information
    out of them, for example.  Their only deficiency is that they are not
    entirely complete... e.g.  like 'rwho' not supporting a stop function,
    and not having a state to represent when a subsystem is not relevant to
    the system configuration.  Such problems are easily remedied.

    -

    It also comes down to people willing to do the actual work.  This whole
    XML thread makes for a nice theoretical discussion, but is entirely
    impractical in reality since nobody is willing to actually sit down
    and do the necessary proving work to demonstrate the alleged benefits
    of XML over RCNG.   And for good reason... the concepts being promulgate
    in this thread would take several man-months of work just to achieve
    RCNG equivalance.  It's one thing to wrap data in an XML construct,
    quite another to manipulate it in a way that is useful to the target
    function.

					-Matt
					Matthew Dillon 
					<dillon@xxxxxxxxxxxxx>



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]