User Guide To ACEDB Tools

> ### ACEDB Tools

> # User Guide To Acedb Tools

> ## Background

> The ACEDB tools are a collection of shell, perl and python scripts and C executables that are useful for the curating/administration of databases. The tools can all be found in the /wtools directory.

> ## The Tools

> - INSTALL - Acedb installation.
> - INSTALL.acembly - Acedb installation.
> - INSTALL.xclient - Acedb installation.
> - MAKE_ACEMBLY - Acedb installation.
> - MAKE_ACEMBLY_BIN - Acedb installation.
> - MAKE_OTHERS - Acedb installation.
> - MAKE_SERVER - Acedb installation.
> - MAKE_SOURCE_DISTRIBUTION - Acedb installation.
> - MAKE_TAR_FILES - Acedb installation.
> - Restriction2Motif - convert ace2 Restriction objects to ace4 Motif
> - aceExtract - extract objects from an ace file
> - aceGetVersion - read the acedb kernel version from the source file that holds the version number
> - ace_perl.pl -
> - acecsplit - split a .ace file into parts according to mapping file
> - acesplit - read a .ace file and split it every n objects
> - ace2line & line2ace - read a .ace file and convert into line records and vice versa.
> - classCount -
> - embl2ace - script to process EMBL entry to ACEDB4 .ace file
> - fmap2_4 - convert Sanger ace files containing Sequence/DNA objects to ACEDB4 models.
> - homol2match -
> - homonym -
> - html2txt - decorate an html file with text characters for prettier plain text output.
> - modelcheck - check a model file for correctness
> - models2tags - parse models.wrm and generate tags.tmp and classes.tmp from it
> - parsecode -
> - rm-O - removes -O usersession data and big pointless keysets
> - rsort - sort ace dump
> - split.c - split big ace files in a naive way
> - splitdump - split up ACEDB dump output into classes
> - tace2table - process dumped tables so fields are not lost when split
> - tagCount -
> - tagsInModel - lists tags and classes used in a model
> - xcl - Launches a graphic acedb xace working as a client on an ace-server

> ## Not Written Yet

>     Sorry, there is no description of this item yet.

> ## Tools decriptions

> ### Restriction2Motif

>     #
>     # awk script to convert ace2 Restriction objects to ace4 Motif
>     #

> ### aceExtract

>     # perl script to extract objects from an ace file
>     #
>     # usage: aceExtract class:name acefile ...
>     #
>     # perl regexp allowed in name (but protect from shell globbing)
>     #

> ### aceGetVersion

>     #
>     # Perl script to read the acedb kernel version from the source file that
>     # holds the version number:   aceversion.c
>     #
>     # The idea is that only the version.c source file will be altered when changing
>     # the ACEDB version number, then the scripts that produce the public tar files
>     # will use this script to get that version number.
>     #
>     # The script returns the version, release and update read from aceversion.c
>     # in the form:    _     e.g.  4_6d
>     #
>     # it must be given the name of the directory where aceversion.c can be found.
>     #

> ### ace_perl

>     #  File: ace_perl.pl
>     #   Author: Jean Thierry-Mieg, Steve Rosen, Gabor Marth
>     # -------------------------------------------------------------------
>     #  This file is part of the client/server interface to
>     #       the ACEDB genome database package, written by
>     #  	Richard Durbin (MRC LMB, UK) rd@mrc-lmba.cam.ac.uk, and
>     #	Jean Thierry-Mieg (CRBM du CNRS, France) mieg@kaa.cnrs-mop.fr
>     #   Copyright (C) J Thierry-Mieg and R Durbin, 1989-
>     #
>     #  Description:
>     #  Exported functions:
>     #   ace_in, ace_new, ace_count, ace_table, ace_script
>     # -------------------------------------------------------------------

> ### acecsplit

>     # This file is part of the IGD project
>     #
>     # Description: split a .ace file into parts according to mapping file
>     # usage: acecsplit [-c ] [-p ] [...]
>     # Inputs: .ace data from files or stdin
>     #         if option -c is given, then
>     #         split according to config file,
>     #         else split by class name
>     # Output: .ace data is distributed into files according to config
>     #         if  is given then all output files start with it,
>     #         default for  is "split."

> ### acesplit

>     # read a .ace file and split it every n objects
>     # contributed by Detlef Wolf, DKFZ
>     #
>     # Fri Feb  3 10:54:04 MET 1995  dok256
>     # - comments may start anywhere on a line
>     # Thu Feb  2 10:28:53 MET 1995  dok256; bugs fixed:
>     # - DNA tags are no longer treated as objects
>     # - .ace commands -D -R -A are recognized
>     # - terminates even if last line of last file does not end with a newline

> ### classCount

>     There is no help...sigh...

> ### embl2ace

>     # script to process EMBL entry to ACEDB4 .ace file

> ### fmap2_4

>     # Script to convert Sanger ace files containing Sequence/DNA
>     #   objects to ACEDB4 models.
>     # May assume sometimes layout of .ace file dumped from acedb.

> ### homol2match

>     There is no help...sigh...

> ### homonym

>     #
>     # Replacement of old homonym C program
>     #
>     # Format of homfile:
>     #	// any line starting with '//' is ignored
>     #	Full name 1 =
>     #	Variant A of 1
>     #	Variant B_of_1
>     #	Full_name 2 =
>     #	Variant of 2
>     #	etc.
>     # i.e. the correct names come first, followed by an '=' sign
>     # all names on subsequent lines up until the next '=' sign are treated
>     # as homonyms.  NOTE THAT THIS IS DIFFERENT FROM THE OLD FORMAT.
>     #
>     # By default Author lines are substituted, but you can apply to any other
>     # tag using option "-T tag"
>     #
>     # Option -c will just output information on changes that will be made
>     #
>     # Option -2 is like -T, but looks for items 2 in from the tag
>     #
>     # Lines ending with '// fix' will not be changed

>     $usage = "Usage: homonym [-T tag] [-c] [-2 tag] homfile [files]\n" ;

> ### html2txt

>     Don't be fooled, this doesn't really translate html -> plain text !!

>     Now read on...

>     html2txt - decorate an html file with text characters for prettier plain text output.

>          html2txt < inputfile > outputfile

>     This perl module decorates an HTML file in such a way that
>     when it is saved from Netscape (other browsers untested) as
>     plain text then headings will be underlined so they still
>     stand out in the text.

>     You have some html that you want to translate to text but you have
>     noticed that when you do this with Netscape ("Save as" menu option)
>     none of the headers are marked in any way. This script takes an
>     html file and adds underlining to headers using ordinary text
>     characters to produce a new decorated html file. View this new
>     file in Netscape and save it as plain text. If you now look at
>     the plain text file you will see that all the headings are now
>     underlined. (The script also marks bold text as well.)

>     e.g. headings:

>     <H1> A Heading </H1>

>     would become:

>     A Heading
>     *********

>     e.g. bold:

>     <B>Some text</B>

>     would become:

>     _Some text_

>     If you want more details then you can use the perl pod2XXX commands to
>     extract the man page in the html2txt perl script.

>     Currently this script is used to prepare a plain text version of
>     acedb monthly newsletter (which is in html).

> ### modelcheck

>     To run the program:

>     > modelcheck models.wrm

>     Output is written densely to stdout so you will probably want to capture it into a file.

>     NOTE that you need python version 1.5 or later to run this script.

> ### models2tags

>     # parse models.wrm and generate
>     # tags.tmp and classes.tmp from it

> ### parsecode

>     You are beyond all help...

> ### rm-O

>     #
>     # removes -O usersession data and big pointless keysets
>     # particularly good for dumps
>     #

> ### rsort

>     #
>     # rsort was written to sort ace dump but
>     # is general enough to be used for
>     # other purposes.
>     #

> ### split

>      * Description: stand alone, will split big ace files in a naive way
>     "Usage split prefix, splits stdin into n files of max 10^5 lines called prefix.n

> ### splitdump

>     #
>     # script to split up ACEDB dump output into classes
>     #

> ### tace2table

>     # tace2table
>     #
>     #  tace dumps tables with ; separating the fields.
>     #
>     #  Typically : "E77B4";;"95-06-08";;;;
>     #
>     # Convert ;; to ;""; so don't lose fields when split
>     #

> ### tagCount

>     No help here...

> ### tagsInModel

>     #
>     # lists tags and classes used in a model
>     #

> ### xcl

>     #-------------------------------------------------------------------
>     # Usage: xcl host port
>     #  example: xcl beta 20000100
>     #-------------------------------------------------------------------
>     # Description:
>     #   Launches a graphic acedb xace working as a client on an ace-server
>     #

> ### ACEDB Tools

> Last modified: Fri Feb 15 09:50:28 GMT 2002