NAME
findShortestPath.pl - This program finds the shoretest path between two concepts.
SYNOPSIS
This program takes two terms or CUIs and returns the shortest path between them.
USAGE
Usage: findShortestPath.pl [OPTIONS] [CUI1|TERM1] [CUI2|TERM2]
INPUT
Required Arguments:
[CUI1|TERM1|ST1] [CUI2|TERM2|ST2]
A TERM or CUI (or some combination), or two semantic types (with the --st option) from the Unified Medical Language System
Optional Arguments:
--st
The input is two seamntic types and the shortest path between them comes from the semantic network. This can either be a TUI or the Abbreviation of the semantic type.
--config FILE
This is the configuration file. The format of the configuration file is as follows:
SAB :: <include|exclude> <source1, source2, ... sourceN>
REL :: <include|exclude> <relation1, relation2, ... relationN>
RELA :: <include|exclude> <rela1, rela2, ... relaN> (optional)
For example, if we wanted to use the MSH vocabulary with only the RB/RN relations, the configuration file would be:
SAB :: include MSH REL :: include RB, RN RELA :: include inverse_isa, isa
or
SAB :: include MSH REL :: exclude PAR, CHD
If you go to the configuration file directory, there will be example configuration files for the different runs that you have performed.
--undirected
The path between the concepts is not required to be directed such that an LCS can be obtained. This means that we can obtain a path from CUI1 to CUI2 by meandering through the graph rather than finding the CUI that subsumes both of them and then finding the shortest path between those points.
--info
This prints out the relation and source information between the CUIs in the path
--icpropagation FILE
Takes in a propagation file and then outputs the information content of the CUIs in the shortest path
--length
Prints out the length of the shortest path for ease of counting
--infile FILE
A file containing pairs of concepts or terms in the following format:
term1<>term2
or
cui1<>cui2
or
cui1<>term2
or
term1<>cui2
--debug
Sets the debug flag for testing
--username STRING
Username is required to access the umls database on MySql unless it was specified in the my.cnf file at installation
--password STRING
Password is required to access the umls database on MySql unless it was specified in the my.cnf file at installation
--hostname STRING
Hostname where mysql is located. DEFAULT: localhost
--socket STRING
The socket your mysql is using. DEFAULT: /tmp/mysql.sock
--database STRING
Database contain UMLS DEFAULT: umls
--realtime
This option will not create a database of the path information for all of concepts in the specified set of sources and relations in the config file but obtain the information for just the input concept
--forcerun
This option will bypass any command prompts such as asking if you would like to continue with the index creation.
--debugpath FILE
This option prints out the path information for debugging purposes. This option is only really available with the --reatime option because otherwise the path information is stored in the database. You can get this information in a file if you use the --verbose option while creating the index.
--verbose
This option will print out the table information to the config directory that you specified.
--cuilist FILE
This option takes in a file containing a list of CUIs (one CUI per line) and stores only the path information for those CUIs rather than for all of the CUIs given the specified set of sources and relations
--help
Displays the quick summary of program options.
--version
Displays the version information.
OUTPUT
The path(s) between the two given CUIs or terms
SYSTEM REQUIREMENTS
Perl (version 5.8.5 or better) - http://www.perl.org
AUTHOR
Bridget T. McInnes, University of Minnesota
COPYRIGHT
Copyright (c) 2007-2009,
Bridget T. McInnes, University of Minnesota
bthomson at cs.umn.edu
Ted Pedersen, University of Minnesota Duluth
tpederse at d.umn.edu
Siddharth Patwardhan, University of Utah, Salt Lake City
sidd@cs.utah.edu
Serguei Pakhomov, University of Minnesota Twin Cities
pakh0002@umn.edu
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to:
The Free Software Foundation, Inc.,
59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.