discuss: Re: TLDP Tech (a simple database suggestion)


Previous by date: 7 Mar 2005 04:42:47 -0000 Re: TLDP Tech (a simple database suggestion), David Horton
Next by date: 7 Mar 2005 04:42:47 -0000 Re: TLDP Tech, David Lawyer
Previous in thread: 7 Mar 2005 04:42:47 -0000 Re: TLDP Tech (a simple database suggestion), David Horton
Next in thread: 7 Mar 2005 04:42:47 -0000 Re: TLDP Tech (a simple database suggestion), David Lawyer

Subject: Re: TLDP Tech (a simple database suggestion)
From: Emma Jane Hogbin ####@####.####
Date: 7 Mar 2005 04:42:47 -0000
Message-Id: <20050307044324.GI21753@smeagol>

On Sun, Mar 06, 2005 at 10:06:44PM -0600, David Horton wrote:
> Emma Jane Hogbin wrote:
> >On Sun, Mar 06, 2005 at 09:38:00PM -0600, David Horton wrote:
> >>I have created a sample hierarchial database of TLDP works written using 
> >>DocBook XML tags.  It uses the concept of the DocBook <set> to organize 
> >>the various documents into categories.  It also provides key information 
> >>about documents using the <bookinfo> element.  It is not, however, 
> >>limited to only documents written in DocBook XML.  There is an element 
> >>called <invpartnumber> that contains a hyperlink to any doc in our 
> >>collection.
> >>
> >>There is a commented sample at: 
> >>http://www.happy-monkey.net/docbook/tldp-hierarchy.xml that illustrates 
> >>many of the above points.  Please have a look.
> >
> >I would also like it if this file conformed to the OAI expectations for
> >repositories. See:
> >	http://www.openarchives.org/OAI/openarchivesprotocol.html
> >for the full description of what I'm referring to. Perhaps we use their
> >structure, and or we do a conversion from "our" format to "their" format.
> 
> I took a quick look at this and it seems to me like it is a protocol for 
> client-server communication more than it is a specification on how to 
> store the data on the back end.  Is this the case?

Sort of. There are different parts to the equation. We would be a static
repository that would be harvested. I can't remember off the top of my
head if it's a push or a pull system. We might need to install a very
simple tool to also publish our repository information to their site.

I think this document might have a better overview of what a "static
repository" is?
	http://www.openarchives.org/OAI/2.0/guidelines-static-repository.htm

I'll go through my archived emails and the web site to see if there's a
better description. Basically we'd provide a URL to them that has the
summary of our collection; they would then include pointers to our
articles/guides/etc in their collection (which is used by libraries and
other information repositories). Which means higher visibility in the
non-Linux world. Which might be nice. :)

emma

-- 
Emma Jane Hogbin
I18N Coordinator, The Linux Documentation Project
www.tldp.org

--> -->
 
 
<type 'exceptions.IOError'>
Python 2.5.2: /usr/bin/python
Sat Jul 6 02:03:32 2024

A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.

 /opt/ezmlm-browse-0.20/<string> in ()
 /opt/ezmlm-browse-0.20/main.py in main()
  424 
  425         if path is not None:
  426                 main_path(path)
  427         else:
  428                 main_form()
global main_form = <function main_form at 0x9c1fc6c>
 /opt/ezmlm-browse-0.20/main.py in main_form()
  378         except ImportError:
  379                 die(ctxt, "Invalid command")
  380         module.do(ctxt)
  381 
  382 def main():
module = <module 'commands.showmsg' from '/opt/ezmlm-browse-0.20/commands/showmsg.pyc'>, module.do = <function do at 0x9c295dc>, global ctxt = {'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}
 /opt/ezmlm-browse-0.20/commands/showmsg.py in do(ctxt={'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'})
   18         write(html('msg-pager') % ctxt)
   19         write('<hr>')
   20         sub_showmsg(ctxt, ctxt[MSGNUM])
   21         write('<hr>')
   22         write(html('msg-pager') % ctxt)
global sub_showmsg = <function sub_showmsg at 0x9c1f1ec>, ctxt = {'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, global MSGNUM = 'msgnum'
 /opt/ezmlm-browse-0.20/globalfns.py in sub_showmsg(ctxt={'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msgnum=8760)
  229         format_timestamp(ctxt, ctxt)
  230         write(html('msg-header') % ctxt)
  231         rec_showpart(ctxt, msg, 0)
  232         write(html('msg-footer') % ctxt)
  233         ctxt.pop()
global rec_showpart = <function rec_showpart at 0x9c1f1b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, msg = <email.message.Message instance at 0x9c7fc4c>
 /opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x9c7fc4c>, partnum=1)
  205                 else:
  206                         for p in part.get_payload():
  207                                 partnum = rec_showpart(ctxt, p, partnum+1)
  208         else:
  209                 write(html('msg-sep') % ctxt)
partnum = 1, global rec_showpart = <function rec_showpart at 0x9c1f1b4>, ctxt = {'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, p = <email.message.Message instance at 0x9c7fecc>
 /opt/ezmlm-browse-0.20/globalfns.py in rec_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x9c7fecc>, partnum=2)
  208         else:
  209                 write(html('msg-sep') % ctxt)
  210                 sub_showpart(ctxt, part)
  211         return partnum
  212 
global sub_showpart = <function sub_showpart at 0x9c1f144>, ctxt = {'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part = <email.message.Message instance at 0x9c7fecc>
 /opt/ezmlm-browse-0.20/globalfns.py in sub_showpart(ctxt={'cmd': 'showmsg', 'threadidx': 3, 'HTTP_X_FORWA...HTTP_ACCEPT_ENCODING': 'gzip, br, zstd, deflate'}, part=<email.message.Message instance at 0x9c7fecc>)
  164         type = ctxt[TYPE] = part.get_content_type()
  165         ctxt[FILENAME] = part.get_filename()
  166         template = html('msg-' + type.replace('/', '-'))
  167         if not template:
  168                 template = html('msg-' + type[:type.find('/')])
global template = <function template at 0x9c17e9c>, global html = <function html at 0x9c17ed4>, type = 'application/pgp-signature', type.replace = <built-in method replace of str object at 0x9c83d40>
 /opt/ezmlm-browse-0.20/globalfns.py in html(name='msg-application-pgp-signature')
   40 
   41 def html(name):
   42         return template(name + '.html')
   43 
   44 def xml(name):
global template = <function template at 0x9c17e9c>, name = 'msg-application-pgp-signature'
 /opt/ezmlm-browse-0.20/globalfns.py in template(filename='msg-application-pgp-signature.html')
   31         except IOError:
   32                 if not _template_zipfile:
   33                         _template_zipfile = zipfile.ZipFile(sys.argv[0])
   34                 try:
   35                         f = _template_zipfile.open(n).read()
global _template_zipfile = None, global zipfile = <module 'zipfile' from '/usr/lib/python2.5/zipfile.pyc'>, zipfile.ZipFile = <class zipfile.ZipFile at 0x9bb0a7c>, global sys = <module 'sys' (built-in)>, sys.argv = ['-c', '/opt/ezmlm-browse-0.20']
 /usr/lib/python2.5/zipfile.py in __init__(self=<zipfile.ZipFile instance at 0x9c2a98c>, file='-c', mode='r', compression=0, allowZip64=False)
  337             self.filename = file
  338             modeDict = {'r' : 'rb', 'w': 'wb', 'a' : 'r+b'}
  339             self.fp = open(file, modeDict[mode])
  340         else:
  341             self._filePassed = 1
self = <zipfile.ZipFile instance at 0x9c2a98c>, self.fp = None, builtin open = <built-in function open>, file = '-c', modeDict = {'a': 'r+b', 'r': 'rb', 'w': 'wb'}, mode = 'r'

<type 'exceptions.IOError'>: [Errno 2] No such file or directory: '-c'
      args = (2, 'No such file or directory')
      errno = 2
      filename = '-c'
      message = ''
      strerror = 'No such file or directory'