You can subscribe to this list here.
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(18) |
Aug
(33) |
Sep
(30) |
Oct
(27) |
Nov
(59) |
Dec
(30) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2007 |
Jan
(67) |
Feb
(44) |
Mar
(70) |
Apr
(73) |
May
(119) |
Jun
(31) |
Jul
(92) |
Aug
(86) |
Sep
(76) |
Oct
(152) |
Nov
(156) |
Dec
(85) |
2008 |
Jan
(111) |
Feb
(121) |
Mar
(107) |
Apr
(102) |
May
(45) |
Jun
(65) |
Jul
(62) |
Aug
(133) |
Sep
(56) |
Oct
(56) |
Nov
(17) |
Dec
(15) |
2009 |
Jan
(10) |
Feb
(5) |
Mar
(10) |
Apr
(14) |
May
(49) |
Jun
(94) |
Jul
(67) |
Aug
(23) |
Sep
(9) |
Oct
(92) |
Nov
(26) |
Dec
(51) |
2010 |
Jan
(105) |
Feb
(83) |
Mar
(52) |
Apr
(59) |
May
(68) |
Jun
(71) |
Jul
(127) |
Aug
(49) |
Sep
(91) |
Oct
(27) |
Nov
(33) |
Dec
(26) |
2011 |
Jan
(26) |
Feb
(45) |
Mar
(26) |
Apr
(28) |
May
(17) |
Jun
(15) |
Jul
(45) |
Aug
(33) |
Sep
(50) |
Oct
(22) |
Nov
(10) |
Dec
(21) |
2012 |
Jan
(33) |
Feb
(24) |
Mar
(36) |
Apr
(60) |
May
(60) |
Jun
(43) |
Jul
(114) |
Aug
(19) |
Sep
(35) |
Oct
(24) |
Nov
(64) |
Dec
(12) |
2013 |
Jan
(54) |
Feb
(58) |
Mar
(51) |
Apr
(46) |
May
(21) |
Jun
(29) |
Jul
(25) |
Aug
(25) |
Sep
(13) |
Oct
(7) |
Nov
(14) |
Dec
(27) |
2014 |
Jan
(10) |
Feb
(7) |
Mar
(16) |
Apr
(14) |
May
(19) |
Jun
(8) |
Jul
(15) |
Aug
(11) |
Sep
(5) |
Oct
(11) |
Nov
(11) |
Dec
(4) |
2015 |
Jan
(52) |
Feb
(27) |
Mar
(22) |
Apr
(17) |
May
(2) |
Jun
(2) |
Jul
(2) |
Aug
(2) |
Sep
(2) |
Oct
|
Nov
(2) |
Dec
|
2016 |
Jan
(2) |
Feb
|
Mar
|
Apr
(2) |
May
(1) |
Jun
(1) |
Jul
(3) |
Aug
(2) |
Sep
(2) |
Oct
(2) |
Nov
(2) |
Dec
|
2017 |
Jan
|
Feb
|
Mar
(1) |
Apr
(1) |
May
(4) |
Jun
|
Jul
|
Aug
(1) |
Sep
(1) |
Oct
(2) |
Nov
|
Dec
(1) |
2018 |
Jan
|
Feb
|
Mar
(4) |
Apr
|
May
(2) |
Jun
(2) |
Jul
(2) |
Aug
(2) |
Sep
(1) |
Oct
(2) |
Nov
(1) |
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(3) |
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
(3) |
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
From: <mg...@us...> - 2007-02-07 23:02:29
|
Revision: 364 http://svn.sourceforge.net/obo/?rev=364&view=rev Author: mgibson Date: 2007-02-07 14:46:44 -0800 (Wed, 07 Feb 2007) Log Message: ----------- changed -i to -u --initialConfig to --updateConfig initial config is pase - as update config covers it finally moved config cmmd line options to CommandLine class where they belong so now it wont show that annoying message dont know -c option - took me long enough Modified Paths: -------------- phenote/trunk/src/java/phenote/config/Config.java phenote/trunk/src/java/phenote/main/CommandLine.java phenote/trunk/src/java/phenote/main/Phenote.java Modified: phenote/trunk/src/java/phenote/config/Config.java =================================================================== --- phenote/trunk/src/java/phenote/config/Config.java 2007-02-07 21:57:41 UTC (rev 363) +++ phenote/trunk/src/java/phenote/config/Config.java 2007-02-07 22:46:44 UTC (rev 364) @@ -41,10 +41,13 @@ private boolean uvicGraphEnabled = false; // default false for now private String reposUrlDir; private String version; + private boolean configInitialized = false; /** singleton */ private Config() {} + public boolean isInitialized() { return configInitialized; } + /** This is setting config file with nothing to do with personal config this is for the servlet where config file location is set in web.xml */ public void setConfigFile(String configFile) throws ConfigException { @@ -56,12 +59,12 @@ files is used - the -i option if you will. The initial config file will get copied to .phenote/my-phenote.cfg if it doesnt already exist. if it exists then this file is ignored */ - public void setInitialConfigFile(String configFile) throws ConfigException { - //if (configFile==null) configFile = getDefaultFile(); - //setConfigFile(configFile,true,false,true); // last true should be false! - updateConfigFileWithNewVersion(configFile); - //setConfigFile(configFile,true,false); - } +// public void setInitialConfigFile(String configFile) throws ConfigException { +// //if (configFile==null) configFile = getDefaultFile(); +// //setConfigFile(configFile,true,false,true); // last true should be false! +// updateConfigFileWithNewVersion(configFile); +// //setConfigFile(configFile,true,false); +// } // --update - set up cmd line! public void updateConfigFileWithNewVersion(String configFile) throws ConfigException { @@ -109,6 +112,9 @@ //System.out.println("config file: "+configUrl); parseXmlFile(configFile); // throws ex + // if we got here we succeeded in setting config + configInitialized = true; + //System.out.println("testing config writeback"); //new ConfigWriter().writeConfig(this,new File(FileUtil.getDotPhenoteDir(),"my-phenote.cfg")); } Modified: phenote/trunk/src/java/phenote/main/CommandLine.java =================================================================== --- phenote/trunk/src/java/phenote/main/CommandLine.java 2007-02-07 21:57:41 UTC (rev 363) +++ phenote/trunk/src/java/phenote/main/CommandLine.java 2007-02-07 22:46:44 UTC (rev 364) @@ -4,6 +4,8 @@ import com.townleyenterprises.command.CommandParser; import com.townleyenterprises.command.DefaultCommandListener; +import phenote.config.Config; +import phenote.config.ConfigException; import phenote.dataadapter.DataAdapterI; import phenote.dataadapter.phenosyntax.PhenoSyntaxFileAdapter; import phenote.dataadapter.phenoxml.PhenoXmlAdapter; @@ -22,9 +24,11 @@ private CommandOption inputFile = new InputFileCommandOption(); //private CommandOption inputFmtOption = new InputFormatCommandOption(); private CommandOption writeFile = new WriteFileCommandOption(); - //private CommandOption updateConfig + private CommandOption updateConfig = new UpdateConfigCommandOption(); + private CommandOption setConfig = new SetConfigCommandOption(); - CommandOption[] options = new CommandOption[] { inputFile, writeFile }; + CommandOption[] options = new CommandOption[] { inputFile, writeFile, updateConfig, + setConfig }; // this guarantees that we get the right classes (compile time check) private final static String PHENOXML = PhenoXmlAdapter.class.getName(); @@ -117,7 +121,44 @@ return adapter; } + private class UpdateConfigCommandOption extends CommandOption { + private final static String help = + "Specify config file to update from app conf, adds in new config fields." + +" if nothing to update just loads config file as is"; + private UpdateConfigCommandOption() { + // true -> has argument + super("updateConfig",'u',true,"config file",help); + } + public void execute() throws Exception { + //System.out.println("executing update config command option "+getArg()); + try { Config.inst().updateConfigFileWithNewVersion(getArg()); } + catch (ConfigException e) { loadDefaultConfig("overwrite",e); } + } + } + private class SetConfigCommandOption extends CommandOption { + private final static String help = + "Specify config file to set from app conf, careful this wipes out previous config"; + private SetConfigCommandOption() { + super("configSet",'c',true,"config file",help); // true -> has arg + } + public void execute() throws Exception { + try { Config.inst().setOverwriteConfigFile(getArg()); } + catch (ConfigException e) { loadDefaultConfig("overwrite",e); } + } + } + + private void loadDefaultConfig(String m, ConfigException e) { + System.out.println("Yikes! Failed to "+m+" config file "+e+" gonna try " + +"loading default config"); + try { Config.inst().loadDefaultConfigFile(); } + catch (ConfigException ce) { + System.out.println("bummer - even default config fails. we're hosed! "+ce); + } + } + + + /** INPUT FILE COMMAND OPTION */ private class InputFileCommandOption extends CommandOption { private final static String help = Modified: phenote/trunk/src/java/phenote/main/Phenote.java =================================================================== --- phenote/trunk/src/java/phenote/main/Phenote.java 2007-02-07 21:57:41 UTC (rev 363) +++ phenote/trunk/src/java/phenote/main/Phenote.java 2007-02-07 22:46:44 UTC (rev 364) @@ -109,67 +109,74 @@ } private void doCommandLine(String[] args) { - doCommandLineOld(args); // -c -i --> move to CommandLine! + //doCommandLineOld(args); // -c -i --> move to CommandLine! try { commandLine.setArgs(args); } // no log yet - sys.out catch (Exception e) { System.out.println("Command line read failed"+e); } - } - - /** for now just looking for '-c configFile.cfg', use command line package - if we need to get more sophisticated - so if user has personal config file should override this - however maybe - there should be a distinction between initial config file and user made configs - well really the initials are db/species specific - so could be - --initialConfig zf|fb|obd - actually da heck with that with entity chooser just - put all 3 ontologies in one which is then the default (unspecified on cmd line) - and -c file.cfg will load/overwrite that cfg into .phenote/my-phenote.cfg - (if it exists) - we can always add --init later if we need it - -c overwrites, -i doesnt -i is for initial startup of phenote */ - private void doCommandLineOld(String[] args) { - String configFile = getConfigFileFromCommandLine(args); - // if no config file specified then set default initial config file. this will be - // overridden by a personal config file if it exists - //if (configFile == null) configFile = Config.DEFAULT_CONFIG_FILE; stored in file - try { - if (isOverwriteConfigFile(args)) //causes wipeout move of app file to .phenote - Config.inst().setOverwriteConfigFile(configFile); - else if (isInitialConfigFile(args)) - Config.inst().setInitialConfigFile(configFile); - //else if update... - else // no command line config file specified - use last one specified (cache) - Config.inst().loadDefaultConfigFile(); - } catch (ConfigException e) { - //LOG.fatal("EXITING! Fatal error in config file: "+e.getMessage()); - LOG.error("Error in config file! "+e.getMessage()); - e.printStackTrace(); // log? - //System.exit(1); // isnt this a bit extreme? - System.out.println("Yikes! config exception "+e+" gonna try loading default" - +" config"); + // no config set from command line use default + if (!Config.inst().isInitialized()) { try { Config.inst().loadDefaultConfigFile(); } catch (ConfigException ce) { - System.out.println("bummer - even default config fails. we're hosed! "+ce); + System.out.println("default config has failed. we're hosed! "+ce); } } } - // change to -m for merge?? - move to CommandLine! - private boolean isInitialConfigFile(String args[]) { - if (args == null || args.length < 2) return false; - return args[0].equals("-i"); - } - private boolean isOverwriteConfigFile(String args[]) { - if (args == null || args.length < 2) return false; - return args[0].equals("-c"); - } +// /** for now just looking for '-c configFile.cfg', use command line package +// if we need to get more sophisticated +// so if user has personal config file should override this - however maybe +// there should be a distinction between initial config file and user made configs +// well really the initials are db/species specific - so could be +// --initialConfig zf|fb|obd - actually da heck with that with entity chooser just +// put all 3 ontologies in one which is then the default (unspecified on cmd line) +// and -c file.cfg will load/overwrite that cfg into .phenote/my-phenote.cfg +// (if it exists) - we can always add --init later if we need it +// -c overwrites, -i doesnt -i is for initial startup of phenote */ +// private void doCommandLineOld(String[] args) { +// String configFile = getConfigFileFromCommandLine(args); +// // if no config file specified then set default initial config file. this will be +// // overridden by a personal config file if it exists +// //if (configFile == null) configFile = Config.DEFAULT_CONFIG_FILE; stored in file +// try { +// if (isOverwriteConfigFile(args)) //causes wipeout move of app file to .phenote +// Config.inst().setOverwriteConfigFile(configFile); +// else if (isInitialConfigFile(args)) +// Config.inst().setInitialConfigFile(configFile); +// //else if update... +// else // no command line config file specified - use last one specified (cache) +// Config.inst().loadDefaultConfigFile(); +// } catch (ConfigException e) { +// //LOG.fatal("EXITING! Fatal error in config file: "+e.getMessage()); +// LOG.error("Error in config file! "+e.getMessage()); +// e.printStackTrace(); // log? +// //System.exit(1); // isnt this a bit extreme? +// System.out.println("Yikes! config exception "+e+" gonna try loading default" +// +" config"); +// try { Config.inst().loadDefaultConfigFile(); } +// catch (ConfigException ce) { +// System.out.println("bummer - even default config fails. we're hosed! "+ce); +// } +// } +// } - private String getConfigFileFromCommandLine(String args[]) { - // need 2 args - if (args == null || args.length < 2) return null; - //String firstArg = args[0]; - if (!isInitialConfigFile(args) && !isOverwriteConfigFile(args)) return null; - String configFile = args[1]; - return configFile; - } +// // change to -m for merge?? - move to CommandLine! +// private boolean isInitialConfigFile(String args[]) { +// if (args == null || args.length < 2) return false; +// return args[0].equals("-i"); +// } +// private boolean isOverwriteConfigFile(String args[]) { +// if (args == null || args.length < 2) return false; +// return args[0].equals("-c"); +// } +// private String getConfigFileFromCommandLine(String args[]) { +// // need 2 args +// if (args == null || args.length < 2) return null; +// //String firstArg = args[0]; +// if (!isInitialConfigFile(args) && !isOverwriteConfigFile(args)) return null; +// String configFile = args[1]; +// return configFile; +// } + public Frame getFrame() { return frame; } private void makeWindow() { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-07 21:57:40
|
Revision: 363 http://svn.sourceforge.net/obo/?rev=363&view=rev Author: mgibson Date: 2007-02-07 13:57:41 -0800 (Wed, 07 Feb 2007) Log Message: ----------- ok you can now specifiy a -i or -c config file and if file doesnt exist app conf but does exist in .phenote conf it uses one .phenote instead of giving up and using default config - this is actually really for those using distrib - doesnt effect preconfigged webstart users Modified Paths: -------------- phenote/trunk/src/java/phenote/config/Config.java phenote/trunk/src/java/phenote/dataadapter/OntologyDataAdapter.java phenote/trunk/src/java/phenote/util/FileUtil.java Modified: phenote/trunk/src/java/phenote/config/Config.java =================================================================== --- phenote/trunk/src/java/phenote/config/Config.java 2007-02-07 01:01:05 UTC (rev 362) +++ phenote/trunk/src/java/phenote/config/Config.java 2007-02-07 21:57:41 UTC (rev 363) @@ -57,8 +57,9 @@ get copied to .phenote/my-phenote.cfg if it doesnt already exist. if it exists then this file is ignored */ public void setInitialConfigFile(String configFile) throws ConfigException { - if (configFile==null) configFile = getDefaultFile(); - setConfigFile(configFile,true,false,true); // last true should be false! + //if (configFile==null) configFile = getDefaultFile(); + //setConfigFile(configFile,true,false,true); // last true should be false! + updateConfigFileWithNewVersion(configFile); //setConfigFile(configFile,true,false); } @@ -112,6 +113,7 @@ //new ConfigWriter().writeConfig(this,new File(FileUtil.getDotPhenoteDir(),"my-phenote.cfg")); } + // why return string? why not file or url? private String getMyPhenoteConfig(String passedInConfig,boolean overwritePersonalCfg, boolean mergeConfigs) throws ConfigException { @@ -119,23 +121,29 @@ // this wont work with merging/updating //File myPhenote = new File(dotPhenote,"my-phenote.cfg"); - try { - URL passedInUrl = getConfigUrl(passedInConfig); - String nameOfFile = FileUtil.getNameOfFile(passedInUrl); + //try { + boolean passedInExists = true; + URL passedInUrl=null; + // currently getConfigUrl doesnt search .phenote/conf - which is handy here + // if passed in conf doesnt exist, carry on with dotConf - funny logic? + try { passedInUrl = getConfigUrl(passedInConfig); } + catch (FileNotFoundException fe) { passedInExists = false; } + + String nameOfFile = FileUtil.getNameOfFile(passedInConfig); // this is the "species" conf file - eg ~/.phenote/conf/flybase.cfg File dotConfFile = new File(getDotPhenoteConfDir(),nameOfFile); - if (mergeConfigs) { + if (mergeConfigs && passedInExists) { mergeNewWithOld(passedInUrl,dotConfFile); } // if file doesnt exist yet or overwrite, copy over passedInConfig - else if (!dotConfFile.exists() || overwritePersonalCfg) { + else if (passedInExists && (!dotConfFile.exists() || overwritePersonalCfg)) { String s = overwritePersonalCfg ? " getting overwritten" : " does not exist"; System.out.println(dotConfFile+s+" Copying "+passedInUrl); //try { - //URL passedInUrl = getConfigUrl(passedInConfig); - copyUrlToFile(passedInUrl,dotConfFile); + //URL passedInUrl = getConfigUrl(passedInConfig); + copyUrlToFile(passedInUrl,dotConfFile); } // new way - set new default(no param) config file name in my-phenote.cfg @@ -143,9 +151,7 @@ return dotConfFile.toString(); // ? - } catch (FileNotFoundException e) { - throw new ConfigException(e); - } + //} catch (FileNotFoundException e) {throw new ConfigException(e);} //return dotConfFile.toString(); // ? } Modified: phenote/trunk/src/java/phenote/dataadapter/OntologyDataAdapter.java =================================================================== --- phenote/trunk/src/java/phenote/dataadapter/OntologyDataAdapter.java 2007-02-07 01:01:05 UTC (rev 362) +++ phenote/trunk/src/java/phenote/dataadapter/OntologyDataAdapter.java 2007-02-07 21:57:41 UTC (rev 363) @@ -233,7 +233,7 @@ // download obo to local cache (takes time!) String file = FileUtil.getNameOfFile(localUrl); try { - localUrl = new File(FileUtil.getUserOboCacheDir(),file).toURL(); + localUrl = new File(FileUtil.getDotPhenoteOboDir(),file).toURL(); LOG.info("Downloading new ontology from repository "+reposUrl+" to "+localUrl); copyReposToLocal(reposUrl,localUrl); } Modified: phenote/trunk/src/java/phenote/util/FileUtil.java =================================================================== --- phenote/trunk/src/java/phenote/util/FileUtil.java 2007-02-07 01:01:05 UTC (rev 362) +++ phenote/trunk/src/java/phenote/util/FileUtil.java 2007-02-07 21:57:41 UTC (rev 363) @@ -33,20 +33,41 @@ return dotPhenote; } - public static File getUserOboCacheDir() { + public static File getDotPhenoteOboDir() { + return getDotPhenoteSubDir("obo-files"); +// File d = getDotPhenoteDir(); +// File obo = new File(d,"obo-files"); +// if (!obo.exists()) { +// LOG.info("creating "+obo+" directory"); +// obo.mkdir(); +// } +// return obo; + } + + private static File getDotPhenoteConfDir() { + return getDotPhenoteSubDir("conf"); + } + + private static File getDotPhenoteSubDir(String subdirString) { File d = getDotPhenoteDir(); - File obo = new File(d,"obo-files"); - if (!obo.exists()) { - LOG.info("creating "+obo+" directory"); - obo.mkdir(); + File subdir = new File(d,subdirString); + if (!subdir.exists()) { + LOG.info("creating "+subdir+" directory"); + subdir.mkdir(); } - return obo; + return subdir; } /** get actual name of file sans path */ public static String getNameOfFile(URL urlFile) { - String path = urlFile.getPath(); + return getNameOfFile(urlFile.getPath()); +// int lastSlashIndex = path.lastIndexOf('/'); +// if (lastSlashIndex == -1) return path; +// return path.substring(lastSlashIndex); + } + + public static String getNameOfFile(String path) { int lastSlashIndex = path.lastIndexOf('/'); if (lastSlashIndex == -1) return path; return path.substring(lastSlashIndex); @@ -67,7 +88,7 @@ throw new FileNotFoundException(filename+" not found"); } - // this is muddling config and obo - probably should be 2 methods? or be smart about + // this is muddling config and obop - probably should be 2 methods? or be smart about // suffix - or who cares? private static List<URL> getPossibleUrls(String filename) { List<URL> urls = new ArrayList(5); @@ -77,8 +98,8 @@ addFile("conf/"+filename,urls); // ~/.phenote/obo-files cache for obo files - overrides phenote obo-files // eventually may have configured obo dir as well... - //addFile(sep(getDotPhenoteString(),"obo-files"),urls); - addFile(getUserOboCacheDir().getPath()+"/"+filename,urls); + addFile(getDotPhenoteOboDir().getPath()+"/"+filename,urls); + // addFile(getDotPhenoteConfDir().getPath() ??? addFile("obo-files/"+filename,urls);//this is obo-files specific - separate method? // URL jarUrl = FileUtil.class.getResource(filename); // if (jarUrl != null) urls.add(jarUrl); @@ -101,7 +122,9 @@ LOG.error("bad file url "+e); } } + + private static boolean urlExists(URL u) { try { u.openStream(); } catch (IOException e) { return false; } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-07 01:01:15
|
Revision: 362 http://svn.sourceforge.net/obo/?rev=362&view=rev Author: mgibson Date: 2007-02-06 17:01:05 -0800 (Tue, 06 Feb 2007) Log Message: ----------- on getting a config exception from -c or -i config loading now instead of awkwardly exiting which is particularly awkward in webstart as ya lose the output and ya have no idea what happened - it attempts to load the default config (with msg to stdout) - if that fails phenote still comes up though it looks rather silly with no configging - but probably still better than just keeling over (especially in webstart) - and eventually if theres gui config a user could even just config something up at that point. Modified Paths: -------------- phenote/trunk/src/java/phenote/main/Phenote.java Modified: phenote/trunk/src/java/phenote/main/Phenote.java =================================================================== --- phenote/trunk/src/java/phenote/main/Phenote.java 2007-02-07 00:40:54 UTC (rev 361) +++ phenote/trunk/src/java/phenote/main/Phenote.java 2007-02-07 01:01:05 UTC (rev 362) @@ -138,9 +138,16 @@ else // no command line config file specified - use last one specified (cache) Config.inst().loadDefaultConfigFile(); } catch (ConfigException e) { - LOG.fatal("EXITING! Fatal error in config file: "+e.getMessage()); + //LOG.fatal("EXITING! Fatal error in config file: "+e.getMessage()); + LOG.error("Error in config file! "+e.getMessage()); e.printStackTrace(); // log? - System.exit(1); + //System.exit(1); // isnt this a bit extreme? + System.out.println("Yikes! config exception "+e+" gonna try loading default" + +" config"); + try { Config.inst().loadDefaultConfigFile(); } + catch (ConfigException ce) { + System.out.println("bummer - even default config fails. we're hosed! "+ce); + } } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-07 00:40:57
|
Revision: 361 http://svn.sourceforge.net/obo/?rev=361&view=rev Author: mgibson Date: 2007-02-06 16:40:54 -0800 (Tue, 06 Feb 2007) Log Message: ----------- well this bug alluded until it went up on webstart so i thought it was a webstart only bug which wasnt at all the case - with -i option which is actually soon to be the -u --update option it wasnt checking if old file actually existed and got file not found exception and crashed actually it should handle that ex anyways wouldnt ya say Modified Paths: -------------- phenote/trunk/src/java/phenote/config/Config.java Modified: phenote/trunk/src/java/phenote/config/Config.java =================================================================== --- phenote/trunk/src/java/phenote/config/Config.java 2007-02-06 19:21:59 UTC (rev 360) +++ phenote/trunk/src/java/phenote/config/Config.java 2007-02-07 00:40:54 UTC (rev 361) @@ -193,6 +193,11 @@ only merge if versions are different(?) in other words only merge on version change/phenote upgrade - if version same then leave in users mucking */ private void mergeNewWithOld(URL newConfig,File oldDotConfFile) throws ConfigException { + if (!oldDotConfFile.exists()) { + System.out.println(oldDotConfFile+" doesnt exist, creating"); + copyUrlToFile(newConfig,oldDotConfFile); + return; + } Config newCfg = new Config(); newCfg.parseXmlUrl(newConfig); //?? Config oldCfg = new Config(); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-06 19:21:58
|
Revision: 360 http://svn.sourceforge.net/obo/?rev=360&view=rev Author: mgibson Date: 2007-02-06 11:21:59 -0800 (Tue, 06 Feb 2007) Log Message: ----------- woops -i should be -c for release Modified Paths: -------------- phenote/trunk/doc/phenote-website/phenote-flybase.jnlp phenote/trunk/doc/phenote-website/phenote-human.jnlp phenote/trunk/doc/phenote-website/phenote-zfin.jnlp Modified: phenote/trunk/doc/phenote-website/phenote-flybase.jnlp =================================================================== --- phenote/trunk/doc/phenote-website/phenote-flybase.jnlp 2007-02-06 19:15:49 UTC (rev 359) +++ phenote/trunk/doc/phenote-website/phenote-flybase.jnlp 2007-02-06 19:21:59 UTC (rev 360) @@ -38,7 +38,7 @@ <jar href="jars/log4j-1.2.13.jar" /> </resources> <application-desc main-class="phenote.main.Phenote"> - <argument>-i</argument> + <argument>-c</argument> <argument>/flybase.cfg</argument> </application-desc> </jnlp> Modified: phenote/trunk/doc/phenote-website/phenote-human.jnlp =================================================================== --- phenote/trunk/doc/phenote-website/phenote-human.jnlp 2007-02-06 19:15:49 UTC (rev 359) +++ phenote/trunk/doc/phenote-website/phenote-human.jnlp 2007-02-06 19:21:59 UTC (rev 360) @@ -38,7 +38,7 @@ <jar href="jars/log4j-1.2.13.jar" /> </resources> <application-desc main-class="phenote.main.Phenote"> - <argument>-i</argument> + <argument>-c</argument> <argument>/human.cfg</argument> </application-desc> </jnlp> Modified: phenote/trunk/doc/phenote-website/phenote-zfin.jnlp =================================================================== --- phenote/trunk/doc/phenote-website/phenote-zfin.jnlp 2007-02-06 19:15:49 UTC (rev 359) +++ phenote/trunk/doc/phenote-website/phenote-zfin.jnlp 2007-02-06 19:21:59 UTC (rev 360) @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> <jnlp spec="1.0+" -codebase="http://toy.lbl.gov:9010/phenote/1.1/" +codebase="http://toy.lbl.gov:9010/phenote/1.0/" href="phenote-zfin.jnlp"> <information> - <title>Phenote 1.1</title> + <title>Phenote 1.0</title> <vendor>BBOP</vendor> <description>Phenote standalone app via webstart</description> <!-- Declares that the application can run without @@ -38,7 +38,7 @@ <jar href="jars/log4j-1.2.13.jar" /> </resources> <application-desc main-class="phenote.main.Phenote"> - <argument>-i</argument> + <argument>-c</argument> <argument>/zfin-standalone.cfg</argument> </application-desc> </jnlp> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-06 19:15:52
|
Revision: 359 http://svn.sourceforge.net/obo/?rev=359&view=rev Author: mgibson Date: 2007-02-06 11:15:49 -0800 (Tue, 06 Feb 2007) Log Message: ----------- -> 1.1, new build option copy-version-jnlps Modified Paths: -------------- phenote/trunk/build.xml phenote/trunk/doc/phenote-website/phenote-zfin.jnlp phenote/trunk/src/java/phenote/main/PhenoteVersion.java Modified: phenote/trunk/build.xml =================================================================== --- phenote/trunk/build.xml 2007-02-01 23:46:01 UTC (rev 358) +++ phenote/trunk/build.xml 2007-02-06 19:15:49 UTC (rev 359) @@ -386,7 +386,7 @@ <!-- todo do all jars not just phenote - take out -signed --> <!-- depends on sym link phenote-webstart and env var PHENOTE_VERSION --> <!-- target name="build-webstart" depends="build-sign-jars,webstart"/ --> - <target name="build-webstart" depends="build-all,jar"/> + <target name="build-webstart" depends="build-all,jar,webstart"/> <!-- target name="build-sign-jars" depends="build-all,jar,sign-jars"/ --> @@ -414,17 +414,19 @@ </target> - <target name="copy-jnlps"> - <echo message="Env Var PHENOTE VERSION is set to ${env.PHENOTE_VERSION}" /> - <copy todir="phenote-webstart/${env.PHENOTE_VERSION}"> - <fileset file="doc/phenote-website/*.jnlp"/> - </copy> + <target name="copy-jnlps" depends="copy-version-jnlps"> <copy todir="phenote-webstart/latest"> <fileset file="doc/phenote-website/*.jnlp"/> </copy> </target> - + <target name="copy-version-jnlps"> + <echo message="Env Var PHENOTE VERSION is set to ${env.PHENOTE_VERSION}" /> + <copy todir="phenote-webstart/${env.PHENOTE_VERSION}"> + <fileset file="doc/phenote-website/*.jnlp"/> + </copy> + </target> + <target name="webstart-jars" depends="build-all,jar,copy-webstart-jars,sign-webstart-jars"/> <target name="copy-webstart-jars"> Modified: phenote/trunk/doc/phenote-website/phenote-zfin.jnlp =================================================================== --- phenote/trunk/doc/phenote-website/phenote-zfin.jnlp 2007-02-01 23:46:01 UTC (rev 358) +++ phenote/trunk/doc/phenote-website/phenote-zfin.jnlp 2007-02-06 19:15:49 UTC (rev 359) @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> <jnlp spec="1.0+" -codebase="http://toy.lbl.gov:9010/phenote/1.0/" +codebase="http://toy.lbl.gov:9010/phenote/1.1/" href="phenote-zfin.jnlp"> <information> - <title>Phenote 1.0</title> + <title>Phenote 1.1</title> <vendor>BBOP</vendor> <description>Phenote standalone app via webstart</description> <!-- Declares that the application can run without Modified: phenote/trunk/src/java/phenote/main/PhenoteVersion.java =================================================================== --- phenote/trunk/src/java/phenote/main/PhenoteVersion.java 2007-02-01 23:46:01 UTC (rev 358) +++ phenote/trunk/src/java/phenote/main/PhenoteVersion.java 2007-02-06 19:15:49 UTC (rev 359) @@ -6,7 +6,7 @@ //private static final float MAJOR_VERSION_NUM = 0.8f; //private static final float SUB_VERSION_NUM = .3f; - private static final String VERSION = "1.0.4"; // ?? + private static final String VERSION = "1.1"; // ?? // type is "dev" or "release" //private static final String type = " dev"; // "release" This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-01 23:46:01
|
Revision: 358 http://svn.sourceforge.net/obo/?rev=358&view=rev Author: mgibson Date: 2007-02-01 15:46:01 -0800 (Thu, 01 Feb 2007) Log Message: ----------- webstart-jars does ant buil & jar now Modified Paths: -------------- phenote/trunk/build.xml Modified: phenote/trunk/build.xml =================================================================== --- phenote/trunk/build.xml 2007-02-01 23:27:43 UTC (rev 357) +++ phenote/trunk/build.xml 2007-02-01 23:46:01 UTC (rev 358) @@ -425,7 +425,7 @@ </target> - <target name="webstart-jars" depends="copy-webstart-jars,sign-webstart-jars"/> + <target name="webstart-jars" depends="build-all,jar,copy-webstart-jars,sign-webstart-jars"/> <target name="copy-webstart-jars"> <echo message="Env Var PHENOTE VERSION is set to ${env.PHENOTE_VERSION}" /> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-01 23:27:42
|
Revision: 357 http://svn.sourceforge.net/obo/?rev=357&view=rev Author: mgibson Date: 2007-02-01 15:27:43 -0800 (Thu, 01 Feb 2007) Log Message: ----------- -c -> -i for config updating rather than wipe out Modified Paths: -------------- phenote/trunk/doc/phenote-website/phenote-human.jnlp Modified: phenote/trunk/doc/phenote-website/phenote-human.jnlp =================================================================== --- phenote/trunk/doc/phenote-website/phenote-human.jnlp 2007-02-01 23:15:42 UTC (rev 356) +++ phenote/trunk/doc/phenote-website/phenote-human.jnlp 2007-02-01 23:27:43 UTC (rev 357) @@ -38,7 +38,7 @@ <jar href="jars/log4j-1.2.13.jar" /> </resources> <application-desc main-class="phenote.main.Phenote"> - <argument>-c</argument> + <argument>-i</argument> <argument>/human.cfg</argument> </application-desc> </jnlp> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-01 23:15:41
|
Revision: 356 http://svn.sourceforge.net/obo/?rev=356&view=rev Author: mgibson Date: 2007-02-01 15:15:42 -0800 (Thu, 01 Feb 2007) Log Message: ----------- -c -> -i which updates config files instead of wipes it out Modified Paths: -------------- phenote/trunk/doc/phenote-website/phenote-flybase.jnlp phenote/trunk/doc/phenote-website/phenote-zfin.jnlp Modified: phenote/trunk/doc/phenote-website/phenote-flybase.jnlp =================================================================== --- phenote/trunk/doc/phenote-website/phenote-flybase.jnlp 2007-02-01 23:14:14 UTC (rev 355) +++ phenote/trunk/doc/phenote-website/phenote-flybase.jnlp 2007-02-01 23:15:42 UTC (rev 356) @@ -38,7 +38,7 @@ <jar href="jars/log4j-1.2.13.jar" /> </resources> <application-desc main-class="phenote.main.Phenote"> - <argument>-c</argument> + <argument>-i</argument> <argument>/flybase.cfg</argument> </application-desc> </jnlp> Modified: phenote/trunk/doc/phenote-website/phenote-zfin.jnlp =================================================================== --- phenote/trunk/doc/phenote-website/phenote-zfin.jnlp 2007-02-01 23:14:14 UTC (rev 355) +++ phenote/trunk/doc/phenote-website/phenote-zfin.jnlp 2007-02-01 23:15:42 UTC (rev 356) @@ -38,7 +38,7 @@ <jar href="jars/log4j-1.2.13.jar" /> </resources> <application-desc main-class="phenote.main.Phenote"> - <argument>-c</argument> + <argument>-i</argument> <argument>/zfin-standalone.cfg</argument> </application-desc> </jnlp> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <mg...@us...> - 2007-02-01 22:55:26
|
Revision: 354 http://svn.sourceforge.net/obo/?rev=354&view=rev Author: mgibson Date: 2007-02-01 14:55:23 -0800 (Thu, 01 Feb 2007) Log Message: ----------- config files are now updating merging on versoin changes - woohoo! previously you really couldnt config from webstart as every run the config gets wiped out as it had to put in the new config in case there were config changes - but now it merges the new and the old config and preserves user changes - very exciting - this is a step towards the gui config as well - a big step actually as now can write out configuration on update the order isnt preserved puts at end - bug also need to add -u option to command line - currently heisting -i option also made a bunch of format changes to config xml ontolgoy stuff shouldnt go in field anymore - single ontology still gets ontology element added enables to dataadapter and fields dataadapters no longer constrained - and the preferred way is to put the full class name in - though for gui we will want a nice label - that can come from data adapter itself post comp relation is now an ontology element with isPostCompRel=true new data adapter config and ConfigWriter - should break out ConfigReader so now users can config with webstart! Modified Paths: -------------- phenote/trunk/conf/flybase.cfg phenote/trunk/conf/human.cfg phenote/trunk/conf/phenote-config.rnc phenote/trunk/conf/phenote-config.xsd phenote/trunk/conf/zfin-standalone.cfg phenote/trunk/jars/phenoteconfigbeans.jar phenote/trunk/src/java/phenote/config/Config.java phenote/trunk/src/java/phenote/config/FieldConfig.java phenote/trunk/src/java/phenote/config/OntologyConfig.java phenote/trunk/src/java/phenote/dataadapter/OntologyDataAdapter.java phenote/trunk/src/java/phenote/dataadapter/phenoxml/PhenoXmlAdapter.java phenote/trunk/src/java/phenote/main/CommandLine.java phenote/trunk/src/java/phenote/main/Phenote.java phenote/trunk/src/java/phenote/main/PhenoteVersion.java Added Paths: ----------- phenote/trunk/src/java/phenote/config/ConfigWriter.java phenote/trunk/src/java/phenote/config/DataAdapterConfig.java Modified: phenote/trunk/conf/flybase.cfg =================================================================== --- phenote/trunk/conf/flybase.cfg 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/conf/flybase.cfg 2007-02-01 22:55:23 UTC (rev 354) @@ -1,8 +1,8 @@ <phenote-configuration version="1.0" xmlns="phenote/config/xml" noNamespaceSchemaLocation="phenote-config.xsd"> - <dataadapter name="phenosyntax"/> - <dataadapter name="phenoxml"/> + <dataadapter name="phenosyntax" enable="true"/> + <dataadapter name="phenoxml" enable="true"/> <log config-file="conf/log4j-standalone.xml" /> @@ -14,21 +14,31 @@ <field name="Genotype" syntax-abbrev="GT" type="free_text"/> - <field name="Genetic Context" file="context.obo" syntax-abbrev="GC"/> + <field name="Genetic Context" syntax-abbrev="GC"> + <ontology file="context.obo"/> + </field> <field name="Entity" syntax-abbrev="E"> - <postcomp relationship-ontology="relationship.obo" repos-subdir="OBO_REL"/> + <!-- postcomp relationship-ontology="relationship.obo" repos-subdir="OBO_REL"/ --> + <ontology file="relationship.obo" is-postcomp-rel="true" repos-subdir="OBO_REL"/> <ontology name="Fly" file="fly_anatomy.obo" repos-subdir="anatomy/gross_anatomy/animal_gross_anatomy/fly"/> <ontology name="GO" file="gene_ontology.obo" repos-subdir="genomic-proteomic"/> <ontology name="SP" file="spatial.obo"/> </field> - <field name="Quality" file="quality.obo" syntax-abbrev="Q" repos-subdir="phenotype"/> + <field name="Quality" syntax-abbrev="Q" repos-subdir="phenotype"> + <ontology file="quality.obo" repos-subdir="phenotype" /> + </field> - <field name="Absent" file="quality.obo" slim="absent_slim" syntax-abbrev="Tag"/> - <field name="Abnormal" file="quality.obo" slim="abnormal_slim" syntax-abbrev="Tag"/> + <field name="Absent" syntax-abbrev="Tag"> + <ontology file="quality.obo" slim="absent_slim" /> + </field> + <field name="Abnormal" syntax-abbrev="Tag"> + <ontology file="quality.obo" slim="abnormal_slim" /> + </field> + <field name="Description" syntax-abbrev="Desc"/> </phenote-configuration> Modified: phenote/trunk/conf/human.cfg =================================================================== --- phenote/trunk/conf/human.cfg 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/conf/human.cfg 2007-02-01 22:55:23 UTC (rev 354) @@ -1,8 +1,8 @@ <phenote-configuration version="1.0" xmlns="phenote/config/xml"> - <dataadapter name="phenosyntax"/> - <dataadapter name="phenoxml"/> + <dataadapter name="phenosyntax" enable="true"/> + <dataadapter name="phenoxml" enable="true"/> <log config-file="conf/log4j-standalone.xml" /> Modified: phenote/trunk/conf/phenote-config.rnc =================================================================== --- phenote/trunk/conf/phenote-config.rnc 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/conf/phenote-config.rnc 2007-02-01 22:55:23 UTC (rev 354) @@ -1,9 +1,10 @@ default namespace = "phenote/config/xml" ##default namespace = "http://phenote/config/xml" +## attribute version { xsd:float }, -- cant do float 1.0.3 is not a float start = element phenote-configuration { - attribute version { xsd:float }, + attribute version { xsd:string }, log, dataadapter*, uvic-graph, @@ -14,7 +15,11 @@ dataadapter = element dataadapter { ## for now just 2 dataadapters, phenoxml & phenosyntax (and now also nexus) - attribute name {"phenoxml" | "phenosyntax" | "nexus"} + ## take out this constraint - make more pluggable easy to add DA + ##attribute name {"phenoxml" | "phenosyntax" | "nexus"} + ## actual class name phenote.dataadapter.phenoxml.PhenoXmlAdapter + attribute name { xsd:string }, + attribute enable { xsd:boolean } } ## Whether to check if ontology(obo) has been updated/more current obo file @@ -27,43 +32,53 @@ ## Where the config file for log4j is log = element log { - attribute config-file { text } + attribute config-file { xsd:string } } uvic-graph = element uvic-graph { attribute enable { xsd:boolean } } -obo-repository = element obo-repository { attribute url-dir {text} } +obo-repository = element obo-repository { attribute url-dir {xsd:string} } field = element field { + attribute enable { xsd:boolean }, ##attribute name { "Pub" | "Genotype" | "Genetic Context" | "Entity" | "Quality" }, - attribute name { text }, + attribute name { xsd:string }, ## tag for field for pheno-syntax adapter - attribute syntax-abbrev { text }, + attribute syntax-abbrev { xsd:string }, ## whether field is free text or constrained by ontology - take out? ## this is actually unnecasary - if there is no file free text is assumed attribute type { "free_text" | "ontology" }, - ## file is for single ontology - rename ontology_file? - attribute file { text }, - attribute filter-out { text }, - attribute slim { text }, - attribute repos-subdir {text}, + ## file is for single ontology - rename ontology_file? + ## phase these 4 out - redundant with single ontology + attribute file { xsd:string }, + attribute filter-out { xsd:string }, + attribute slim { xsd:string }, + attribute repos-subdir {xsd:string}, postcomp?, ontology* } ontology = element ontology { - attribute name { text }, + attribute name { xsd:string }, ## obo file for ontology - attribute file { text }, - attribute filter-out { text }, - attribute slim { text }, - attribute repos-subdir {text} + attribute file { xsd:string }, + attribute filter-out { xsd:string }, + attribute slim { xsd:string }, + attribute repos-subdir {xsd:string}, + attribute is-postcomp-rel {xsd:boolean} } +## hmmmmm - this is funny - is there a need for more than one rel ontol?? +## alternatively should this just hold ontology+(1 or more) +## or alternatively just be another ontology with isRel flag and if theres +## an ontology with isRel flag then do post comp (could also have redundant +## isPostComp flag) hmmmm - cleaner but not as intuitive +## isRelForPostComp - more explicit as there may be rels for stage as well postcomp = element postcomp { - attribute relationship-ontology { text }, + attribute relationship-ontology { xsd:string }, + ## do we need this?? ontology* } Modified: phenote/trunk/conf/phenote-config.xsd =================================================================== --- phenote/trunk/conf/phenote-config.xsd 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/conf/phenote-config.xsd 2007-02-01 22:55:23 UTC (rev 354) @@ -9,28 +9,18 @@ <xs:element ref="x:obo-repository"/> <xs:element minOccurs="0" maxOccurs="unbounded" ref="x:field"/> </xs:sequence> - <xs:attribute name="version" use="required" type="xs:float"/> + <xs:attribute name="version" use="required" type="xs:string"/> </xs:complexType> </xs:element> <xs:element name="dataadapter"> <xs:complexType> - <xs:attribute name="name" use="required"> - <xs:annotation> - <xs:documentation>for now just 2 dataadapters, phenoxml & phenosyntax (and now also nexus)</xs:documentation> - </xs:annotation> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:enumeration value="phenoxml"/> - <xs:enumeration value="phenosyntax"/> - <xs:enumeration value="nexus"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> + <xs:attribute name="name" use="required" type="xs:string"/> + <xs:attribute name="enable" use="required" type="xs:boolean"/> </xs:complexType> </xs:element> <xs:element name="log"> <xs:complexType> - <xs:attribute name="config-file" use="required"/> + <xs:attribute name="config-file" use="required" type="xs:string"/> </xs:complexType> </xs:element> <xs:element name="uvic-graph"> @@ -40,7 +30,7 @@ </xs:element> <xs:element name="obo-repository"> <xs:complexType> - <xs:attribute name="url-dir" use="required"/> + <xs:attribute name="url-dir" use="required" type="xs:string"/> </xs:complexType> </xs:element> <xs:element name="field"> @@ -49,12 +39,13 @@ <xs:element minOccurs="0" ref="x:postcomp"/> <xs:element minOccurs="0" maxOccurs="unbounded" ref="x:ontology"/> </xs:sequence> - <xs:attribute name="name" use="required"> + <xs:attribute name="enable" use="required" type="xs:boolean"/> + <xs:attribute name="name" use="required" type="xs:string"> <xs:annotation> <xs:documentation>attribute name { "Pub" | "Genotype" | "Genetic Context" | "Entity" | "Quality" },</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attribute name="syntax-abbrev" use="required"> + <xs:attribute name="syntax-abbrev" use="required" type="xs:string"> <xs:annotation> <xs:documentation>tag for field for pheno-syntax adapter</xs:documentation> </xs:annotation> @@ -67,35 +58,36 @@ </xs:restriction> </xs:simpleType> </xs:attribute> - <xs:attribute name="file" use="required"> - <xs:annotation> - <xs:documentation>file is for single ontology - rename ontology_file? </xs:documentation> - </xs:annotation> - </xs:attribute> - <xs:attribute name="filter-out" use="required"/> - <xs:attribute name="slim" use="required"/> - <xs:attribute name="repos-subdir" use="required"/> + <xs:attribute name="file" use="required" type="xs:string"/> + <xs:attribute name="filter-out" use="required" type="xs:string"/> + <xs:attribute name="slim" use="required" type="xs:string"/> + <xs:attribute name="repos-subdir" use="required" type="xs:string"/> </xs:complexType> </xs:element> <xs:element name="ontology"> <xs:complexType> - <xs:attribute name="name" use="required"/> - <xs:attribute name="file" use="required"> + <xs:attribute name="name" use="required" type="xs:string"/> + <xs:attribute name="file" use="required" type="xs:string"> <xs:annotation> <xs:documentation>obo file for ontology</xs:documentation> </xs:annotation> </xs:attribute> - <xs:attribute name="filter-out" use="required"/> - <xs:attribute name="slim" use="required"/> - <xs:attribute name="repos-subdir" use="required"/> + <xs:attribute name="filter-out" use="required" type="xs:string"/> + <xs:attribute name="slim" use="required" type="xs:string"/> + <xs:attribute name="repos-subdir" use="required" type="xs:string"/> + <xs:attribute name="is-postcomp-rel" use="required" type="xs:boolean"/> </xs:complexType> </xs:element> <xs:element name="postcomp"> <xs:complexType> <xs:sequence> - <xs:element minOccurs="0" maxOccurs="unbounded" ref="x:ontology"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="x:ontology"> + <xs:annotation> + <xs:documentation>do we need this??</xs:documentation> + </xs:annotation> + </xs:element> </xs:sequence> - <xs:attribute name="relationship-ontology" use="required"/> + <xs:attribute name="relationship-ontology" use="required" type="xs:string"/> </xs:complexType> </xs:element> </xs:schema> Modified: phenote/trunk/conf/zfin-standalone.cfg =================================================================== --- phenote/trunk/conf/zfin-standalone.cfg 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/conf/zfin-standalone.cfg 2007-02-01 22:55:23 UTC (rev 354) @@ -1,7 +1,9 @@ <phenote-configuration version="1.0" xmlns="phenote/config/xml" xmlns:xsi="http://www.w3.org/1999/XMLSchema/instance" schemaLocation="phenote-config.xsd"> - <dataadapter name="phenosyntax"/> - <dataadapter name="phenoxml"/> + <dataadapter name="phenote.dataadapter.phenosyntax.PhenoSyntaxFileAdapter" + enable="true"/> + <dataadapter name="phenote.dataadapter.phenoxml.PhenoXmlAdapter" enable="true"/> + <dataadapter name="phenote.dataadapter.nexus.NEXUSAdapter" enable="true"/> <log config-file="conf/log4j-standalone.xml"/> @@ -9,13 +11,13 @@ <obo-repository url-dir="http://obo.cvs.sourceforge.net/*checkout*/obo/obo/ontology/"/> - <field name="Pub" syntax-abbrev="PUB"/> + <field name="Pub" syntax-abbrev="PUB" enable="true"/> - <field name="Genotype" syntax-abbrev="GT" type="free_text"/> + <field name="Genotype" syntax-abbrev="GT" enable="true"/> - <field name="Genetic Context" file="context.obo" syntax-abbrev="GC"/> + <field name="Genetic Context" file="context.obo" syntax-abbrev="GC" enable="true"/> - <field name="Entity" syntax-abbrev="E"> + <field name="Entity" syntax-abbrev="E" enable="true"> <postcomp relationship-ontology="relationship.obo" repos-subdir="OBO_REL"/> <ontology name="ZF" file="zebrafish_anatomy.obo" filter-out="ZFS:" repos-subdir="anatomy/gross_anatomy/animal_gross_anatomy/fish"/> @@ -23,15 +25,21 @@ <ontology name="SP" file="spatial.obo"/> </field> - <field name="Stage" file="zebrafish_anatomy.obo" filter-out="ZFA:" syntax-abbrev="T"/> + <field name="Stage" syntax-abbrev="T" enable="true"> + <ontology name="Stage" file="zebrafish_anatomy.obo" filter-out="ZFA:"/> + </field> - <field name="Quality" file="quality.obo" syntax-abbrev="Q" repos-subdir="phenotype"/> + <field name="Quality" file="quality.obo" syntax-abbrev="Q" repos-subdir="phenotype" + enable="true"/> - <field name="Absent" file="quality.obo" slim="absent_slim" syntax-abbrev="Tag"/> - <field name="Abnormal" file="quality.obo" slim="abnormal_slim" syntax-abbrev="Tag"/> + <field name="Absent" file="quality.obo" slim="absent_slim" syntax-abbrev="Tag" + enable="true"/> + <field name="Abnormal" file="quality.obo" slim="abnormal_slim" syntax-abbrev="Tag" + enable="true"/> - <field name="Evidence" file="evidence_code.obo" syntax-abbrev="EV"/> + <field name="Evidence" file="evidence_code.obo" syntax-abbrev="EV" repos-subdir="." + enable="true"/> - <field name="Description" syntax-abbrev="Desc" repos-subdir="."/> + <field name="Description" syntax-abbrev="Desc" enable="true"/> </phenote-configuration> Modified: phenote/trunk/jars/phenoteconfigbeans.jar =================================================================== (Binary files differ) Modified: phenote/trunk/src/java/phenote/config/Config.java =================================================================== --- phenote/trunk/src/java/phenote/config/Config.java 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/src/java/phenote/config/Config.java 2007-02-01 22:55:23 UTC (rev 354) @@ -3,27 +3,26 @@ import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; +import java.io.FileReader; import java.io.IOException; import java.io.InputStream; +import java.io.LineNumberReader; +import java.io.PrintStream; import java.net.URL; import java.util.ArrayList; import java.util.List; import org.apache.xmlbeans.XmlException; +import phenote.main.PhenoteVersion; import phenote.config.xml.PhenoteConfigurationDocument; import phenote.config.xml.DataadapterDocument.Dataadapter; import phenote.config.xml.FieldDocument.Field; import phenote.config.xml.LogDocument.Log; import phenote.config.xml.OboRepositoryDocument.OboRepository; -import phenote.config.xml.OntologyDocument.Ontology; import phenote.config.xml.PhenoteConfigurationDocument.PhenoteConfiguration; import phenote.config.xml.UvicGraphDocument.UvicGraph; import phenote.dataadapter.DataAdapterI; -import phenote.dataadapter.fly.FlybaseDataAdapter; -import phenote.dataadapter.nexus.NEXUSAdapter; -import phenote.dataadapter.phenosyntax.PhenoSyntaxFileAdapter; -import phenote.dataadapter.phenoxml.PhenoXmlAdapter; import phenote.datamodel.CharField; import phenote.datamodel.CharFieldEnum; import phenote.util.FileUtil; @@ -33,25 +32,24 @@ public final static String DEFAULT_CONFIG_FILE = "flybase.cfg"; private static Config singleton = new Config(); private String configFile = DEFAULT_CONFIG_FILE; - //private FieldConfig lumpConfig = new FieldConfig(CharFieldEnum.LUMP,"Genotype"); - //private String lumpOntologyFile = null; private OntologyConfig lumpConfig = new OntologyConfig("Genotype"); - private List<DataAdapterI> dataAdapterList; - private List<FieldConfig> fieldList = new ArrayList<FieldConfig>(); - //private boolean checkForNewOntologies = false; - //private int newOntologyCheckMinutes = 10; + private List<DataAdapterConfig> dataAdapConfList; + /** only enabled fields */ + private List<FieldConfig> enabledFields = new ArrayList<FieldConfig>(); + /** enabled & disabled */ + private List<FieldConfig> allFields = new ArrayList<FieldConfig>(); private String logConfigFile = "conf/log4j.xml"; // default log config file private boolean uvicGraphEnabled = false; // default false for now private String reposUrlDir; + private String version; /** singleton */ - private Config() { - //parseXmlFile("./conf/initial-flybase.cfg"); // hardwired for now... - } + private Config() {} /** This is setting config file with nothing to do with personal config this is for the servlet where config file location is set in web.xml */ public void setConfigFile(String configFile) throws ConfigException { - setConfigFile(configFile,false,false); // dont use .phenote by default (servlet) + //if (configFile==null) configFile = getDefaultFile(); + setConfigFile(configFile,false,false,false); // dont use .phenote by default (servlet) } /** This is for when phenote is first installed and one of the default config @@ -59,54 +57,125 @@ get copied to .phenote/my-phenote.cfg if it doesnt already exist. if it exists then this file is ignored */ public void setInitialConfigFile(String configFile) throws ConfigException { - setConfigFile(configFile,true,false); + if (configFile==null) configFile = getDefaultFile(); + setConfigFile(configFile,true,false,true); // last true should be false! + //setConfigFile(configFile,true,false); } + // --update - set up cmd line! + public void updateConfigFileWithNewVersion(String configFile) throws ConfigException { + if (configFile==null) configFile = getDefaultFile(); + setConfigFile(configFile,true,false,true); + } + public void setOverwriteConfigFile(String configFile) throws ConfigException { - setConfigFile(configFile,true,true); + if (configFile==null) configFile = getDefaultFile(); + setConfigFile(configFile,true,true,false); } + public void loadDefaultConfigFile() throws ConfigException { + setConfigFile(getDefaultFile(),true,false,false); + } + + /** default file should be in .phenote/conf/my-phenote.cfg. if not set yet then just + do good ol flybase.cfg */ + private String getDefaultFile() { + String file=null; + try { + LineNumberReader r = new LineNumberReader(new FileReader(getMyPhenoteFile())); + file = r.readLine(); + } catch (IOException e) {} + if (file == null || file.equals("")) + file = DEFAULT_CONFIG_FILE; + return file; + } + /** if usePersonalConfig is false then ignore personal(my-phenote.cfg). if true then overwrite personal if overwritePersonal is true, otherwise only write to personal if personal doesnt exist, if personal exists ignore passed in config file (its an initial config -i) */ private void setConfigFile(String file, boolean usePersonalConfig, - boolean overwritePersonalConfig) + boolean overwritePersonalConfig,boolean mergeConfigs) throws ConfigException { this.configFile = file; // ?? // look to see if config file in ~/.phenote - if not copy there if (usePersonalConfig) { // for standalone not servlet - configFile = getMyPhenoteConfig(configFile,overwritePersonalConfig); + configFile = getMyPhenoteConfig(configFile,overwritePersonalConfig,mergeConfigs); } System.out.println("Attempting to read config from "+configFile); //parseXmlFileWithDom(configFile); // do parse here? //URL configUrl = getConfigUrl(filename); //System.out.println("config file: "+configUrl); parseXmlFile(configFile); // throws ex + + //System.out.println("testing config writeback"); + //new ConfigWriter().writeConfig(this,new File(FileUtil.getDotPhenoteDir(),"my-phenote.cfg")); } - private String getMyPhenoteConfig(String passedInConfig, - boolean overwritePersonalCfg) + private String getMyPhenoteConfig(String passedInConfig,boolean overwritePersonalCfg, + boolean mergeConfigs) throws ConfigException { - File dotPhenote = FileUtil.getDotPhenoteDir(); - File myPhenote = new File(dotPhenote,"my-phenote.cfg"); - // if file doesnt exist yet or overwrite, copy over passedInConfig - if (!myPhenote.exists() || overwritePersonalCfg) { - String s = overwritePersonalCfg ? " getting overwritten" : " does not exist"; - System.out.println(myPhenote+s+" Copying "+passedInConfig); - try { - URL passedInUrl = getConfigUrl(passedInConfig); - copyUrlToFile(passedInUrl,myPhenote); - } catch (FileNotFoundException e) { - throw new ConfigException(e); + //File dotPhenote = FileUtil.getDotPhenoteDir(); + // this wont work with merging/updating + //File myPhenote = new File(dotPhenote,"my-phenote.cfg"); + + try { + URL passedInUrl = getConfigUrl(passedInConfig); + String nameOfFile = FileUtil.getNameOfFile(passedInUrl); + // this is the "species" conf file - eg ~/.phenote/conf/flybase.cfg + File dotConfFile = new File(getDotPhenoteConfDir(),nameOfFile); + + if (mergeConfigs) { + mergeNewWithOld(passedInUrl,dotConfFile); } + + // if file doesnt exist yet or overwrite, copy over passedInConfig + else if (!dotConfFile.exists() || overwritePersonalCfg) { + String s = overwritePersonalCfg ? " getting overwritten" : " does not exist"; + System.out.println(dotConfFile+s+" Copying "+passedInUrl); + //try { + //URL passedInUrl = getConfigUrl(passedInConfig); + copyUrlToFile(passedInUrl,dotConfFile); + } + + // new way - set new default(no param) config file name in my-phenote.cfg + writeMyPhenoteDefaultFile(passedInConfig); // ? passedIn? + + return dotConfFile.toString(); // ? + + } catch (FileNotFoundException e) { + throw new ConfigException(e); } - return myPhenote.toString(); // ? + //return dotConfFile.toString(); // ? } + private File getDotPhenoteConfDir() { + File dotPhenote = FileUtil.getDotPhenoteDir(); + File conf = new File(dotPhenote,"conf"); + conf.mkdir(); + return conf; + } + + private File getMyPhenoteFile() { + return new File(getDotPhenoteConfDir(),"my-phenote.cfg"); + } + + /** Write name of config file loaded out to .phenote/conf/my-phenote.cfg for use + by future startups with no config specified */ + private void writeMyPhenoteDefaultFile(String newDefaultFileString) + throws ConfigException { + try { + File myPhenote = getMyPhenoteFile(); + PrintStream os = new PrintStream(new FileOutputStream(myPhenote)); + os.print(newDefaultFileString); + os.close(); + } catch (FileNotFoundException e) { throw new ConfigException(e); } + } + /** goes thru url line by line and copies to file - is there a better way to do this? */ private void copyUrlToFile(URL configUrl,File myPhenote) throws ConfigException { + try { InputStream is = configUrl.openStream(); FileOutputStream os = new FileOutputStream(myPhenote); @@ -119,37 +188,99 @@ } catch (Exception e) { throw new ConfigException(e); } } + + /** MERGING/UPDATING Load in 2 configs, anything new in newConfig gets put into my phenote + only merge if versions are different(?) in other words only merge on version + change/phenote upgrade - if version same then leave in users mucking */ + private void mergeNewWithOld(URL newConfig,File oldDotConfFile) throws ConfigException { + Config newCfg = new Config(); + newCfg.parseXmlUrl(newConfig); //?? + Config oldCfg = new Config(); + oldCfg.parseXmlFile(oldDotConfFile.toString()); + + // so actually new/sys config may have out of date version or none - just use + // PhenoteVersion itself! + String version = PhenoteVersion.versionString();//newCfg.version + if (version != null && version.equals(oldCfg.version)) { + System.out.println("System & user config same version, not updating cfg"); + return; + } + else + System.out.println("System config is newer than user, updating user config"); + + // Data Adapters + for (DataAdapterConfig dac : newCfg.getAdapConfigs()) { + if (!oldCfg.hasAdapConfig(dac)) + oldCfg.addAdapConfig(dac); + } + // log defaulted and probably wont change - dont worry about?? or check if set? + // but it is a version change so check if diff? maybe? not sure hmmm + // but i do think ok to update uvic - version change may go from false to true + oldCfg.uvicGraphEnabled = newCfg.uvicGraphEnabled; // hmmmm? + oldCfg.reposUrlDir = newCfg.reposUrlDir; // ?? + for (FieldConfig newFC : newCfg.getFieldConfigList()) + newFC.mergeWithOldConfig(oldCfg); + + // write out updated old cfg - todo write out to .phenote/conf/filename.cfg not mycfg + new ConfigWriter().writeConfig(oldCfg,oldDotConfFile);//getMyPhenoteCfgFile()); + } + +// private File getMyPhenoteCfgFile() { +// return new File(FileUtil.getDotPhenoteDir(),"my-phenote.cfg"); +// } + + public static Config inst() { return singleton; } public boolean hasDataAdapters() { - return dataAdapterList != null && !dataAdapterList.isEmpty(); + //return dataAdapConfList != null && !dataAdapConfList.isEmpty(); + return getDataAdapters() != null && !getDataAdapters().isEmpty(); } - public List<DataAdapterI> getDataAdapters() { - return new ArrayList(dataAdapterList); + List<DataAdapterConfig> getAdapConfigs() { + if (dataAdapConfList == null) + dataAdapConfList = new ArrayList<DataAdapterConfig>(4); + return dataAdapConfList; } + /** Check if has data adapter config with same name */ + private boolean hasAdapConfig(DataAdapterConfig dac) { + for (DataAdapterConfig d : getAdapConfigs()) { + //if (d.getName().equals(dac.getName())) + if (d.hasSameAdapter(dac)) + return true; + } + return false; + } - /** Return true if have a dataadapter, and only 1 data adapter */ - public boolean hasSingleDataAdapter() { - return hasDataAdapters() && dataAdapterList.size() == 1; + /** Returns enabled data adapters - empty list if none enabled */ + public List<DataAdapterI> getDataAdapters() { + if (dataAdapConfList==null) return null; // ex? + ArrayList daList = new ArrayList(dataAdapConfList.size()); + for (DataAdapterConfig d : dataAdapConfList) { + if (d.isEnabled()) + daList.add(d.getDataAdapter()); + } + return daList; //new ArrayList(dataAdapConfList); } +// /** Return true if have a dataadapter, and only 1 data adapter */ +// public boolean hasSingleDataAdapter() { +// return hasDataAdapters() && dataAdapConfList.size() == 1; +// } + + /** LoadSaveMangr uses if no extension works */ public DataAdapterI getSingleDataAdapter() { - if (!hasDataAdapters()) return null; - return dataAdapterList.get(0); + if (!hasDataAdapters()) return null; // ex? + for (DataAdapterConfig d : dataAdapConfList) + if (d.isEnabled()) return d.getDataAdapter(); + //return dataAdapConfList.get(0); + return null; // none enabled - shouldnt happen - ex? } - // --> quartz -// /** perhaps not best name - check if ontology is still fresh, if something newer -// than load it - for obo files check file date - get this into config file! */ -// public boolean checkForNewOntologies() { -// return checkForNewOntologies; -// } -// /** How many minutes between checks for new ontologies */ -// public int getOntologyCheckMinutes() { return newOntologyCheckMinutes; } + /** config flag for enabling uvic shrimp dag graph */ public boolean uvicGraphIsEnabled() { return uvicGraphEnabled; } @@ -157,6 +288,8 @@ return FileUtil.findUrl(logConfigFile); } + String getLogConfigFile() { return logConfigFile; } + public int getNumberOfFields() { return getFieldConfigList().size(); } @@ -180,9 +313,23 @@ /** OntologyDataAdapter calls this to figure which ontologies to load */ public List<FieldConfig> getFieldConfigList() { - return fieldList; + return enabledFields; } + /** returns true if has field config with same name - contents may differ */ + boolean hasFieldConfig(FieldConfig newFC) { + return getFieldConfig(newFC.getLabel()) != null; + } + + /** returns field config with label fieldName */ + FieldConfig getFieldConfig(String fieldName) { + for (FieldConfig fc : getFieldConfigList()) { + if (fc.getLabel().equals(fieldName)) + return fc; + } + return null; // ex? + } + /** kinda silly to return list?? so there are 2 fields for "Tag" which perhaps is silly but thats whats happening so need to deal with it */ public List<CharField> getCharFieldsForSyntaxAbbrev(String abb) throws ConfigException { @@ -215,28 +362,41 @@ //public FieldConfig getRelationshipFieldConfig() { } - /** parse xml file with xml beans (phenoteconfigbeans.xml). Put in own class? */ + /** parse xml file with xml beans (phenoteconfigbeans.xml). + Put in own class? YES ConfigReader */ private void parseXmlFile(String filename) throws ConfigException { + //try { try { URL configUrl = getConfigUrl(filename); + parseXmlUrl(configUrl); + } + catch (FileNotFoundException e) { throw new ConfigException(e); } + } + + private void parseXmlUrl(URL configUrl) throws ConfigException { + try { System.out.println("config file: "+configUrl); PhenoteConfigurationDocument pcd = PhenoteConfigurationDocument.Factory.parse(configUrl);//configFile); pcd.validate(); //??? PhenoteConfiguration pc = pcd.getPhenoteConfiguration(); + version = pc.getVersion(); // LOG CONFIG FILE Log log = pc.getLog(); if (log != null && log.getConfigFile() != null) { - logConfigFile = log.getConfigFile().getStringValue(); + logConfigFile = log.getConfigFile(); } - // DATA ADAPTERS + // DATA ADAPTERS <dataadapter name="phenoxml" enable="true"/> + Dataadapter[] adapters = pc.getDataadapterArray(); for (Dataadapter da : adapters) { - String name = da.getName().toString(); - addDataAdapterFromString(name); + DataAdapterConfig dac = new DataAdapterConfig(da); + addAdapConfig(dac); + //String name = da.getName().toString(); + //addDataAdapterFromString(name); } // GRAPH @@ -247,7 +407,7 @@ // Repos url dir OboRepository or = pc.getOboRepository(); if (or != null && or.getUrlDir() != null) - reposUrlDir = or.getUrlDir().getStringValue(); + reposUrlDir = or.getUrlDir(); // FIELDS Field[] fields = pc.getFieldArray(); @@ -270,112 +430,126 @@ return FileUtil.findUrl(filename); } - // do some other way? DataAdapterManager has mapping? DataAdapter has mapping? - // DataAdapterManager.getAdapter(name)??? - private void addDataAdapterFromString(String daString) { - if (daString.equalsIgnoreCase("phenoxml")) - addDataAdapter(new PhenoXmlAdapter()); - else if (daString.equalsIgnoreCase("phenosyntax")) - addDataAdapter(new PhenoSyntaxFileAdapter()); - else if (daString.equalsIgnoreCase("flybase")) // pase?? - addDataAdapter(new FlybaseDataAdapter()); // for now... - else if (daString.equalsIgnoreCase("nexus")) - addDataAdapter(new NEXUSAdapter()); - } - private void addDataAdapter(DataAdapterI da) { - if (dataAdapterList == null) - dataAdapterList = new ArrayList<DataAdapterI>(3); - dataAdapterList.add(da); + private void addAdapConfig(DataAdapterConfig dac) { + getAdapConfigs().add(dac); } private void makeFieldConfig(Field field) { - String name = field.getName().getStringValue(); //toString(); - // has to be a valid value - no longer true for generic free types - FieldConfig fc; - try { // phase this out!! - CharFieldEnum cfe = CharFieldEnum.getCharFieldEnum(name); - //if (cfe == null) ??? - fc = new FieldConfig(cfe,name); - } - catch (Exception e) { // no char field enum for name - new generic! - fc = new FieldConfig(name); - } + FieldConfig fc = new FieldConfig(field); + addFieldConfig(fc); + } + void addFieldConfig(FieldConfig fc) { + allFields.add(fc); + if (fc.isEnabled()) + enabledFields.add(fc); + } + +} + //parseXmlFile("./conf/initial-flybase.cfg"); // hardwired for now... + //private FieldConfig lumpConfig = new FieldConfig(CharFieldEnum.LUMP,"Genotype"); + //private String lumpOntologyFile = null; private OntologyConfig lumpConfig = new OntologyConfig("Genotype"); - if (field.getSyntaxAbbrev() != null) { - fc.setSyntaxAbbrev(field.getSyntaxAbbrev().getStringValue()); - } - - // POST COMP, relationship ontol - if (field.getPostcomp() != null) { - fc.setIsPostComp(true); - String relFile = field.getPostcomp().getRelationshipOntology().getStringValue(); - fc.setPostCompRelOntCfg(makeOntologyConfig("Relationship",relFile)); - } + //private boolean checkForNewOntologies = false; + //private int newOntologyCheckMinutes = 10; + // --> quartz +// /** perhaps not best name - check if ontology is still fresh, if something newer +// than load it - for obo files check file date - get this into config file! */ +// public boolean checkForNewOntologies() { +// return checkForNewOntologies; +// } +// /** How many minutes between checks for new ontologies */ +// public int getOntologyCheckMinutes() { return newOntologyCheckMinutes; } +// private class DataAdapterConfig { +// /** construct from Dataadapter xml bean */ +// private DataAdapterConfig(Dataadapter xmlBean) { +// String name = da.getName(); +// addDataAdapterFromString(name); +// } - // ONTOLOGIES if only one ontology file is an attribute... (convenience) - if (field.getFile() != null) { - fc.addOntologyConfig(new OntologyConfig(field)); - } - // otherwise its multiple ontologies listed in ontology elements (entity) - else { - Ontology[] ontologies = field.getOntologyArray(); - for (Ontology o : ontologies) { - fc.addOntologyConfig(new OntologyConfig(o)); - } - } - fieldList.add(fc); - } +// boolean enabled=true; // enabled by default +// // new -> class name, old -> phenoxml|phenosyntax|nexus +// String configString; +// // will be null if enabled = false +// DataAdapterI dataAdapter; - +// // do some other way? DataAdapterManager has mapping? DataAdapter has mapping? +// // DataAdapterManager.getAdapter(name)??? +// // just do class string see tracker issue 1649004 +// private void addDataAdapterFromString(String daString) { + +// // new way of doing things is class name itself - so 1st try introspect... +// try { +// Class c = Class.forName(daString); +// Object o = c.newInstance(); +// if ( ! (o instanceof DataAdapterI)) +// throw new Exception("class not instance of DataAdapterI"); +// DataAdapterI da = (DataAdapterI)o; +// addDataAdapter(da); +// } +// catch (Exception e) { + +// // backward compatibility - have merger replace these with class names eventually +// if (daString.equalsIgnoreCase("phenoxml")) +// addDataAdapter(new PhenoXmlAdapter()); +// else if (daString.equalsIgnoreCase("phenosyntax")) +// addDataAdapter(new PhenoSyntaxFileAdapter()); +// else if (daString.equalsIgnoreCase("flybase")) // pase?? +// addDataAdapter(new FlybaseDataAdapter()); // for now... +// else if (daString.equalsIgnoreCase("nexus")) +// addDataAdapter(new NEXUSAdapter()); +// // LOG not set up yet??? +// else +// System.out.println("Data adapter not recognized "+daString); +// } +// } +// } - private OntologyConfig makeOntologyConfig(String name, String file) { - OntologyConfig oc = new OntologyConfig(name,file); - return oc; - } -} +//} -// String oName = o.getName().getStringValue(); -// String oFile = o.getFile().getStringValue(); -// String filterOut=null; -// if (o.getFilterOut() != null) -// filterOut = o.getFilterOut().getStringValue(); -// String slim = o.getSlim()!=null ? o.getSlim().getStringValue() : null; -// OntologyConfig oc = makeOntologyConfig(oName,oFile,filterOut,slim); -// String file = field.getFile().getStringValue(); -// // downside of strogly types xml beans is filterOut has to be dealt with -// // separately for field & ontology - annoying - & all other attribs -// String filterOut = -// field.getFilterOut()!=null ? field.getFilterOut().getStringValue() : null; -// String slim = field.getSlim()!=null ? field.getSlim().getStringValue() : null; -// if (field.getReposSubdir() != null) -// fc.setReposSubdir(field.getReposSubdir().getStringValue()); +// String name = field.getName(); //toString(); +// // has to be a valid value - no longer true for generic free types +// FieldConfig fc; +// try { // phase this out!! +// CharFieldEnum cfe = CharFieldEnum.getCharFieldEnum(name); +// //if (cfe == null) ??? +// fc = new FieldConfig(cfe,name); +// } +// catch (Exception e) { // no char field enum for name - new generic! +// fc = new FieldConfig(name); +// } -// private OntologyConfig makeOntologyConfig(Field field) { -// String name = field.getName().getStringValue(); -// String file = field.getFile().getStringValue(); -// // downside of strongly types xml beans is filterOut has to be dealt with -// // separately for field & ontology - annoying - & all other attribs -// String filterOut = -// field.getFilterOut()!=null ? field.getFilterOut().getStringValue() : null; -// String slim = field.getSlim()!=null ? field.getSlim().getStringValue() : null; -// String rs = field.getReposSubdir()!=null ? -// field.getReposSubdir().getStringValue() : null; -// return makeOntologyConfig(name,file,filterOut,slim,rs); -// //fc.addOntologyConfig(makeOntologyConfig(name,file,filterOut,slim)); -// } +// if (field.getSyntaxAbbrev() != null) { +// fc.setSyntaxAbbrev(field.getSyntaxAbbrev()); +// } + +// // POST COMP, relationship ontol +// if (field.getPostcomp() != null) { +// fc.setIsPostComp(true); +// String relFile = field.getPostcomp().getRelationshipOntology(); +// fc.setPostCompRelOntCfg(OntologyConfig.makeRelCfg(relFile)); +// } -// private OntologyConfig makeOntologyConfig(String name, String file, String filterOut) { -// return new OntologyConfig(name,file,filterOut); + +// // ONTOLOGIES if only one ontology file is an attribute... (convenience) +// if (field.getFile() != null) { +// fc.addOntologyConfig(new OntologyConfig(field)); +// } +// // otherwise its multiple ontologies listed in ontology elements (entity) +// else { +// Ontology[] ontologies = field.getOntologyArray(); +// for (Ontology o : ontologies) { +// fc.addOntologyConfig(new OntologyConfig(o)); +// } +// } + +// private OntologyConfig makeOntologyConfig(String name, String file) { +// OntologyConfig oc = new OntologyConfig(name,file); +// return oc; // } -// private OntologyConfig makeOntologyConfig(String name, String file, String filterOut, -// String slim,String reposSubdir) { -// return new OntologyConfig(name,file,filterOut,slim,reposSubdir); -// } - // // CHECK FOR ONTOLOGIES // CheckForNewOntologies cfno = pc.getCheckForNewOntologies(); // if (cfno != null) { // ? Added: phenote/trunk/src/java/phenote/config/ConfigWriter.java =================================================================== --- phenote/trunk/src/java/phenote/config/ConfigWriter.java (rev 0) +++ phenote/trunk/src/java/phenote/config/ConfigWriter.java 2007-02-01 22:55:23 UTC (rev 354) @@ -0,0 +1,87 @@ +package phenote.config; + +import java.io.File; +import java.io.IOException; + +import org.apache.xmlbeans.XmlOptions; +import phenote.config.xml.DataadapterDocument.Dataadapter; +import phenote.config.xml.LogDocument.Log; +import phenote.config.xml.OboRepositoryDocument.OboRepository; +import phenote.config.xml.OntologyDocument.Ontology; +import phenote.config.xml.PhenoteConfigurationDocument; +import phenote.config.xml.PhenoteConfigurationDocument.PhenoteConfiguration; +import phenote.config.xml.UvicGraphDocument.UvicGraph; + +import phenote.dataadapter.DataAdapterI; +import phenote.main.PhenoteVersion; + +class ConfigWriter { + + private Config config; + private PhenoteConfiguration phenCfg; + + void writeConfig(Config config, File file) { //throws IOException? { + this.config = config; // convenience + PhenoteConfigurationDocument doc = PhenoteConfigurationDocument.Factory.newInstance(); + phenCfg = doc.addNewPhenoteConfiguration(); + phenCfg.setVersion(PhenoteVersion.versionString()); + // namespace??? need to get that working - xsd as a check - dont know how + + addDataAdapters(); + + addLog(); + + addUvicGraph(); + + addRepository(); + + addFields(); + + try { // xmlOptions? pretty print + doc.save(file,getXmlOptions()); } + catch (IOException e) { + System.out.println("Failed to save config file "+e); } + } + + private void addDataAdapters() { + for (DataAdapterConfig dac : config.getAdapConfigs()) { + addDataAdapter(dac); + } + } + private void addDataAdapter(DataAdapterConfig dac) { + // ideally config string is the class name (unless its an invalid class??) + String daClassString = dac.getConfigString(); //getClass().getName(); + Dataadapter daBean = phenCfg.addNewDataadapter(); + daBean.setName(daClassString); + daBean.setEnable(dac.isEnabled()); + } + + private void addLog() { + Log log = phenCfg.addNewLog(); + log.setConfigFile(config.getLogConfigFile()); + } + + private void addUvicGraph() { + UvicGraph uvic = phenCfg.addNewUvicGraph(); + uvic.setEnable(config.uvicGraphIsEnabled()); + } + + private void addRepository() { + if (config.getReposUrlDir() == null) return; // should there be a default + OboRepository rep = phenCfg.addNewOboRepository(); + rep.setUrlDir(config.getReposUrlDir()); + } + + private void addFields() { + for (FieldConfig fc : config.getFieldConfigList()) { + fc.write(phenCfg); + } + } + + private XmlOptions getXmlOptions() { + XmlOptions options = new XmlOptions(); + options.setSavePrettyPrint(); + options.setSavePrettyPrintIndent(2); + return options; + } +} Added: phenote/trunk/src/java/phenote/config/DataAdapterConfig.java =================================================================== --- phenote/trunk/src/java/phenote/config/DataAdapterConfig.java (rev 0) +++ phenote/trunk/src/java/phenote/config/DataAdapterConfig.java 2007-02-01 22:55:23 UTC (rev 354) @@ -0,0 +1,92 @@ +package phenote.config; + +import phenote.config.xml.DataadapterDocument.Dataadapter; + +import phenote.dataadapter.DataAdapterI; +import phenote.dataadapter.fly.FlybaseDataAdapter; +import phenote.dataadapter.nexus.NEXUSAdapter; +import phenote.dataadapter.phenosyntax.PhenoSyntaxFileAdapter; +import phenote.dataadapter.phenoxml.PhenoXmlAdapter; + +class DataAdapterConfig { + + String name; + boolean enabled=true; // enabled by default + // new -> class name, old -> phenoxml|phenosyntax|nexus + String configString; + boolean configStringIsClassName = false; + // will be null if enabled = false + DataAdapterI dataAdapter; + + /** construct from Dataadapter xml bean */ + DataAdapterConfig(Dataadapter xmlBean) { + name = xmlBean.getName(); + configString = xmlBean.getName(); // must be set for setDAFromCfgStr + + // yes - this is a way of checking if flag actually specified - nice + // if not specified default is true actually not false + if (xmlBean.xgetEnable() != null) + enabled = xmlBean.getEnable(); + + if (enabled) + setDataAdapterFromConfigString(); + } + + String getName() { return name; } + + boolean isEnabled() { return enabled; } + + /** check if enabled/constructed? */ + DataAdapterI getDataAdapter() { return dataAdapter; } + + boolean hasSameAdapter(DataAdapterConfig dac) { + if (name.equals(dac.getName())) return true; + return getConfigString().equals(dac.getConfigString()); + } + + String getConfigString() { + // attempt to make class string (even if not enabled) - flag for attempt made? + if (!configStringIsClassName) { + if (dataAdapter == null) + setDataAdapterFromConfigString(); + if (dataAdapter != null) + configString = dataAdapter.getClass().getName(); + } + return configString; + } + + // do some other way? DataAdapterManager has mapping? DataAdapter has mapping? + // DataAdapterManager.getAdapter(name)??? + // just do class string see tracker issue 1649004 + private void setDataAdapterFromConfigString() { + + // new way of doing things is class name itself - so 1st try introspect... + try { + Class c = Class.forName(configString); + Object o = c.newInstance(); + if ( ! (o instanceof DataAdapterI)) + throw new Exception("class not instance of DataAdapterI"); + DataAdapterI da = (DataAdapterI)o; + //addDataAdapter(da); + dataAdapter = da; + configStringIsClassName = true; + } + catch (Exception e) { + + // backward compatibility - have merger replace these with class names eventually + if (configString.equalsIgnoreCase("phenoxml")) + dataAdapter = new PhenoXmlAdapter(); + else if (configString.equalsIgnoreCase("phenosyntax")) + dataAdapter = new PhenoSyntaxFileAdapter(); + else if (configString.equalsIgnoreCase("flybase")) // pase?? + dataAdapter = new FlybaseDataAdapter(); // for now... + else if (configString.equalsIgnoreCase("nexus")) + dataAdapter = new NEXUSAdapter(); + // LOG not set up yet??? + else + System.out.println("Data adapter not recognized "+configString); + configStringIsClassName = false; + } + } +} + Modified: phenote/trunk/src/java/phenote/config/FieldConfig.java =================================================================== --- phenote/trunk/src/java/phenote/config/FieldConfig.java 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/src/java/phenote/config/FieldConfig.java 2007-02-01 22:55:23 UTC (rev 354) @@ -4,36 +4,79 @@ import java.util.List; import phenote.datamodel.CharField; +import phenote.config.xml.OntologyDocument.Ontology; import phenote.datamodel.CharFieldEnum; // phase out +// xml beans for writeback +import phenote.config.xml.FieldDocument.Field; +import phenote.config.xml.PhenoteConfigurationDocument.PhenoteConfiguration; + public class FieldConfig { - private CharFieldEnum charFieldEnum; // phase out + //private CharFieldEnum charFieldEnum; // phase out private CharField charField; private String label; // Entity field can have multiple ontologies private List<OntologyConfig> ontologyConfigList; - private boolean isPostComp; - private OntologyConfig postCompRelOntCfg; + //private boolean isPostComp; + //private OntologyConfig postCompRelOntCfg; private String syntaxAbbrev; + private boolean enabled = true; // default if not specified is true - FieldConfig(CharFieldEnum c, String label) { - charFieldEnum = c; - this.label = label; + /** construct from xml bean field - READ */ + FieldConfig(Field field) { + this.label = field.getName(); + +// try{//phase this out!charFieldEnum = CharFieldEnum.getCharFieldEnum(label);} +// catch (Exception e) {} // no char field enum for name - new generic! + //fc = new FieldConfig(name); + + if (field.xgetEnable() != null) + enabled = field.getEnable(); + + if (field.getSyntaxAbbrev() != null) { + setSyntaxAbbrev(field.getSyntaxAbbrev()); + } + + // POST COMP, relationship ontol - old way - phase out - now in ont arr below + if (field.getPostcomp() != null) { + //setIsPostComp(true); - set in OC read by ODA + String relFile = field.getPostcomp().getRelationshipOntology(); + OntologyConfig rel = OntologyConfig.makePostCompRelCfg(relFile); + //setPostCompRelOntCfg(rel); dont need anymore - set in OC + addOntologyConfig(rel); // new way + } + + // ONTOLOGIES if only one ontology file is an attribute... (convenience) + // this is being phased out - no need and a hassle + if (field.getFile() != null) { + addOntologyConfig(new OntologyConfig(field)); + } + // otherwise its multiple ontologies listed in ontology elements (entity) + // also in new way post comp rel comes in here as well + else { + Ontology[] ontologies = field.getOntologyArray(); + for (Ontology o : ontologies) { + addOntologyConfig(new OntologyConfig(o,getLabel())); // label -> default name + } + } } +// FieldConfig(CharFieldEnum c, String label) { +// charFieldEnum = c; +// this.label = label; +// } + /** No char field enum - its a generic not in hard wired datamodel! */ - FieldConfig(String label) { - this.label = label; - //isGeneric = true; - } - +// FieldConfig(String label) { +// this.label = label; +// //isGeneric = true; +// } /** with generic fields these are going to become pase' */ - public CharFieldEnum getCharFieldEnum() { return charFieldEnum; } + //public CharFieldEnum getCharFieldEnum() { return charFieldEnum; } + //public boolean hasCharFieldEnum() { return charFieldEnum != null; } - public boolean hasCharFieldEnum() { return charFieldEnum != null; } - // --> getName? public String getLabel() { return label; } boolean hasLabel(String label) { return label.equals(this.label); } @@ -59,6 +102,19 @@ getOntologyConfigList().add(o); } + boolean hasOntConfig(OntologyConfig oc) { + return getOntConfig(oc.getName()) != null; + } + + /** return OC with name - null if none */ + OntologyConfig getOntConfig(String name) { + for (OntologyConfig oc : getOntologyConfigList()) { + if (name.equals(oc.getName())) + return oc; + } + return null; + } + void setOntologyConfigList(List<OntologyConfig> configs) { ontologyConfigList = configs; } @@ -69,22 +125,7 @@ return ontologyConfigList; } - // POST COMP config... - void setIsPostComp(boolean isPostComp) { - this.isPostComp = isPostComp; - } - public boolean isPostComp() { - return isPostComp; - } - void setPostCompRelOntCfg(OntologyConfig oc) { - postCompRelOntCfg = oc; - } - /** If isPostComp() return relationship ontology filename */ - public OntologyConfig getPostCompRelOntCfg() { - return postCompRelOntCfg; - } - void setSyntaxAbbrev(String syn) { this.syntaxAbbrev = syn; } @@ -95,11 +136,66 @@ //void String getSyntaxAbbrev() { return syntaxAbbrev; } boolean hasSyntaxAbbrev(String abb) { return abb.equals(syntaxAbbrev); } + public boolean isEnabled() { return enabled; } + public void setCharField(CharField cf) { charField = cf; } CharField getCharField() { return charField; } boolean hasCharField(CharField cf) { return charField == cf; } + + /** create xml bean and add it to phenCfg for writeback */ + void write(PhenoteConfiguration phenCfg) { + Field f = phenCfg.addNewField(); + f.setName(getLabel()); + f.setSyntaxAbbrev(getSyntaxAbbrev()); + f.setEnable(isEnabled()); + // f.setType(getType()); // do we need this - no - maybe in future? + // new way is to just write out with other ontol configs - delete this +// if (isPostComp()) getPostCompRelOntCfg().writePostComp(f); + // everything else is in ontology config + // change here - writing out ontology element even for single ontology - phasing + // out shoving ontology in field attribs + // this also will have post comp rel - new way + for (OntologyConfig oc : getOntologyConfigList()) + oc.writeOntology(f); + } + + void mergeWithOldConfig(Config oldConfig) { + // ADD - 1st see if field is new - if so add it and done + if (!oldConfig.hasFieldConfig(this)) { + oldConfig.addFieldConfig(this); + return; + } + + // UPDATE - its not new - need to check contents + FieldConfig oldFieldConfig = oldConfig.getFieldConfig(getLabel()); + // replace syntax abbrev or fill in if blank?? - it is a change in version so replace? + // yea if syn has changed that prob means its a cng in format + if (syntaxAbbrev != null) + oldFieldConfig.syntaxAbbrev = syntaxAbbrev; + // ONTOLOGIES + for (OntologyConfig newOC : getOntologyConfigList()) { + newOC.mergeWithOldConfig(oldFieldConfig); + } + } + } + // POST COMP config... +// void setIsPostComp(boolean isPostComp) { +// this.isPostComp = isPostComp; +// } +// public boolean isPostComp() { +// return isPostComp; +// } +// void setPostCompRelOntCfg(OntologyConfig oc) { +// setIsPostComp(true); +// postCompRelOntCfg = oc; +// } +// /** If isPostComp() return relationship ontology filename */ +// public OntologyConfig getPostCompRelOntCfg() { +// return postCompRelOntCfg; +// } + // FieldConfig(CharFieldEnum c,OntologyConfig o) { // charFieldEnum = c; // if (o == null) return; // shouldnt happen Modified: phenote/trunk/src/java/phenote/config/OntologyConfig.java =================================================================== --- phenote/trunk/src/java/phenote/config/OntologyConfig.java 2007-02-01 18:31:40 UTC (rev 353) +++ phenote/trunk/src/java/phenote/config/OntologyConfig.java 2007-02-01 22:55:23 UTC (rev 354) @@ -5,6 +5,7 @@ import phenote.config.xml.FieldDocument.Field; import phenote.config.xml.OntologyDocument.Ontology; +import phenote.config.xml.PostcompDocument.Postcomp; /** May not even have ontology file (free text eg genotype) rename FieldConfig? */ public class OntologyConfig { @@ -15,18 +16,23 @@ public String filterOut; // public? private String slim; private String reposSubdir; + private boolean isPostCompRel = false; //static OntologyConfig defaultPato = new OntologyConfig("Pato","attribute_and_value.obo"); OntologyConfig() {} // not sure this is actually needed/used OntologyConfig(String name) { this.name = name; } - OntologyConfig(String name, String file) { + private OntologyConfig(String name, String file) { this(name); - ontologyFile = file; - if (isBad(file)) // exception? - System.out.println("null or empty ontology file given for "+name+" "+file); + setOntologyFile(file); } + static OntologyConfig makePostCompRelCfg(String file) { + OntologyConfig rel = new OntologyConfig("Relationship",file); + rel.isPostCompRel = true; + return rel; + } + OntologyConfig(String name, String file, String filterOut) { this(name,file); this.filterOut = filterOut; @@ -36,28 +42,37 @@ this.slim = slim; } - /** Ontology stuff in field itself (field only has one ontology) */ + /** Ontology stuff in field itself (field only has one ontology) - this is getting phased + out replaced by field with single ontology element */ OntologyConfig(Field field) { - name = field.getName().getStringValue(); - ontologyFile = field.getFile().getStringValue(); + name = field.getName(); + ontologyFile = field.getFile(); // downside of strongly types xml beans is filterOut has to be dealt with // separately for field & ontology - annoying - & all other attribs - filterOut = field.getFilterOut()!=null ? field.getFilterOut().getStringValue() : null; - slim = field.getSlim()!=null ? field.getSlim().getStringValue() : null; + filterOut = field.getFilterOut()!=null ? field.getFilterOut() : null; + slim = field.getSlim()!=null ? field.getSlim() : null; reposSubdir = field.getReposSubdir()!=null ? - field.getReposSubdir().getStringValue() : null; + field.getReposSubdir() : null; } - OntologyConfig(Ontology o) { - name = o.getName().getStringValue(); - ontologyFile = o.getFile().getStringValue(); + /** confusing - this is xml bean Ontology NOT datamodel Ontology - this is reading + in from xml config - if ontology doesnt have name use fieldName (single ontols + just use field name) */ + OntologyConfig(phenote.config.xml.OntologyDocument.Ontology o, String fieldName) { + name = o.getName()!=null ? o.getName() : fieldName; + ontologyFile = o.getFile(); if (o.getFilterOut() != null) - filterOut = o.getFilterOut().getStringValue(); - slim = o.getSlim()!=null ? o.getSlim().getStringValue() : null; + filterOut = o.getFilterOut(); + slim = o.getSlim()!=null ? o.getSlim() : null; if (o.getReposSubdir()!=null) - reposSubdir = o.getReposSubdir().getStringValue(); + reposSubdir = o.getReposSubdir(); + // if xgetIsPostCompRel !=... [truncated message content] |
From: <nl...@us...> - 2007-02-01 18:31:52
|
Revision: 353 http://svn.sourceforge.net/obo/?rev=353&view=rev Author: nlw Date: 2007-02-01 10:31:40 -0800 (Thu, 01 Feb 2007) Log Message: ----------- hopefully it fixes it this time Modified Paths: -------------- phenote/trunk/doc/phenote-website/ssi/header.html Modified: phenote/trunk/doc/phenote-website/ssi/header.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 18:29:35 UTC (rev 352) +++ phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 18:31:40 UTC (rev 353) @@ -11,7 +11,7 @@ <!-- TODO: need an icon --> <link rel="icon" href="" type="image/png" /> <link rel="shortcut icon" href="" type="image/png" /> -<link rel="stylesheet" type="text/css" href="/css/style.css" title="standard" /> +<link rel="stylesheet" type="text/css" href="/phenote/css/style.css" title="standard" /> <script type="text/javascript" src="/javascript/obfuscate.js"></script> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 18:29:34
|
Revision: 352 http://svn.sourceforge.net/obo/?rev=352&view=rev Author: nlw Date: 2007-02-01 10:29:35 -0800 (Thu, 01 Feb 2007) Log Message: ----------- undoing what i just did Modified Paths: -------------- phenote/trunk/doc/phenote-website/css/style.css Modified: phenote/trunk/doc/phenote-website/css/style.css =================================================================== --- phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 18:27:15 UTC (rev 351) +++ phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 18:29:35 UTC (rev 352) @@ -111,15 +111,7 @@ clear: right; /*border: 1px solid brown;*/ -#main_content table{ -align: center; -col {width: 100;} -td {align: center; } -} -#main_content td{ - align: center; -} /* ---------- "copyright" class. ---------- */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 18:27:15
|
Revision: 351 http://svn.sourceforge.net/obo/?rev=351&view=rev Author: nlw Date: 2007-02-01 10:27:15 -0800 (Thu, 01 Feb 2007) Log Message: ----------- more with css Modified Paths: -------------- phenote/trunk/doc/phenote-website/content/about/index.shtml phenote/trunk/doc/phenote-website/css/style.css Modified: phenote/trunk/doc/phenote-website/content/about/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 18:14:55 UTC (rev 350) +++ phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 18:27:15 UTC (rev 351) @@ -55,7 +55,7 @@ <h3><a name="collaborations">Collaborations</a></h3> This software is being developed in collaboration with several organizations: -<table border="0" class="collab_table"> +<table border="0"> <tr> <td><a href="http://flybase.bio.indiana.edu/"> <img class="portrait" height="50" border="0" src="/images/fly_logo.png"alt="Flybase" /></a> Modified: phenote/trunk/doc/phenote-website/css/style.css =================================================================== --- phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 18:14:55 UTC (rev 350) +++ phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 18:27:15 UTC (rev 351) @@ -111,12 +111,16 @@ clear: right; /*border: 1px solid brown;*/ -#main_content .collab_table{ +#main_content table{ align: center; col {width: 100;} td {align: center; } } +#main_content td{ + align: center; +} + /* ---------- "copyright" class. ---------- */ /**/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 18:14:55
|
Revision: 350 http://svn.sourceforge.net/obo/?rev=350&view=rev Author: nlw Date: 2007-02-01 10:14:55 -0800 (Thu, 01 Feb 2007) Log Message: ----------- edits to header Modified Paths: -------------- phenote/trunk/doc/phenote-website/ssi/header.html Modified: phenote/trunk/doc/phenote-website/ssi/header.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 18:12:49 UTC (rev 349) +++ phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 18:14:55 UTC (rev 350) @@ -11,9 +11,9 @@ <!-- TODO: need an icon --> <link rel="icon" href="" type="image/png" /> <link rel="shortcut icon" href="" type="image/png" /> -<link rel="stylesheet" type="text/css" href="/phenote/css/style.css" title="standard" /> +<link rel="stylesheet" type="text/css" href="/css/style.css" title="standard" /> -<script type="text/javascript" src="/phenote/javascript/obfuscate.js"></script> +<script type="text/javascript" src="/javascript/obfuscate.js"></script> <title>Phenote: A Phenotype Annotation Tool using Ontologies</title> @@ -31,7 +31,7 @@ </div> <div class="page_logo"> -<a href="http://www.bioontology.org"><img class="portrait" border="0" src="/phenote/images/NCBO_logo.jpg" /></a> +<a href="http://www.bioontology.org"><img class="portrait" border="0" src="/images/NCBO_logo.jpg" /></a> </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 18:12:56
|
Revision: 349 http://svn.sourceforge.net/obo/?rev=349&view=rev Author: nlw Date: 2007-02-01 10:12:49 -0800 (Thu, 01 Feb 2007) Log Message: ----------- trying out this stylesheet thing Modified Paths: -------------- phenote/trunk/doc/phenote-website/content/about/index.shtml phenote/trunk/doc/phenote-website/css/style.css Modified: phenote/trunk/doc/phenote-website/content/about/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 17:48:05 UTC (rev 348) +++ phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 18:12:49 UTC (rev 349) @@ -55,7 +55,7 @@ <h3><a name="collaborations">Collaborations</a></h3> This software is being developed in collaboration with several organizations: -<table border="0"> +<table border="0" class="collab_table"> <tr> <td><a href="http://flybase.bio.indiana.edu/"> <img class="portrait" height="50" border="0" src="/images/fly_logo.png"alt="Flybase" /></a> Modified: phenote/trunk/doc/phenote-website/css/style.css =================================================================== --- phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 17:48:05 UTC (rev 348) +++ phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 18:12:49 UTC (rev 349) @@ -110,6 +110,11 @@ #main_content .contact{ clear: right; /*border: 1px solid brown;*/ + +#main_content .collab_table{ +align: center; +col {width: 100;} +td {align: center; } } /* ---------- "copyright" class. ---------- */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 17:48:07
|
Revision: 348 http://svn.sourceforge.net/obo/?rev=348&view=rev Author: nlw Date: 2007-02-01 09:48:05 -0800 (Thu, 01 Feb 2007) Log Message: ----------- made a table of collaborators Modified Paths: -------------- phenote/trunk/doc/phenote-website/content/about/index.shtml Modified: phenote/trunk/doc/phenote-website/content/about/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 17:27:29 UTC (rev 347) +++ phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 17:48:05 UTC (rev 348) @@ -2,7 +2,7 @@ <div id="page_body"> -<!--#include virtual="/ssi/navi_home.html" --> +<!--#include virtual="/ssi/navi_about.html" --> <div id="main_content"> @@ -26,7 +26,7 @@ <br /> <h3><a name="Bugs">Bug Reporting</a></h3> -<p>If you find bugs in Phenote, please <a href="https://sourceforge.net/tracker/?group_id=76834&atid=887913">submit a bug report on our Bug Tracker</a> located on sourceforge.</p> +<p>If you find bugs in Phenote, please <a href="https://sourceforge.net/tracker/?group_id=76834&atid=887913">submit a bug report</a> on our Bug Tracker located on sourceforge.</p> <p>Please use this same tracker to submit your enhancement and feature requests.</p> <br /> @@ -34,50 +34,56 @@ <h3><a name="contact">Contact Us</a></h3> <p>Software Development: <script type="text/javascript"> -obfuscate("fruitfly.org", "mgibson", "Mark Gibson"); +obfuscate("berkeleybop.org", "mgibson", "Mark Gibson"); </script></p> <p>Requirements, Analysis, Documentation: <script type="text/javascript"> obfuscate("lbl.gov", "nlwashington", "Nicole Washington"); </script></p> +<p>Phenotype EQ model and XML data formats: +<script type="text/javascript"> +obfuscate("berkeleybop.org", "cjm", "Chris Mungall"); +</script></p> <p> Learn more about our supporting organizations by visiting their websites: -<a href="http://www.bioontology.org">NCBO</a> <br /> -<a href="www.berkeleybop.org">Berkeley BOP</a> <br /> +<a href="http://www.bioontology.org">NCBO</a> and +<a href="www.berkeleybop.org">Berkeley BOP</a> </p> +<br /> + <h3><a name="collaborations">Collaborations</a></h3> This software is being developed in collaboration with several organizations: -<p><a href="http://flybase.bio.indiana.edu/"> -<img class="portrait" height="50" border="0" src="/images/fly_logo.png"\ - alt="Flybase" /></a>Flybase: The Drosophila Genome Database. -</p> -<p><a href="http://www.zfin.org/"><img class="portrait" border="0" src="/im\ -ages/zfin_logo.gif" height="50" alt="Zfin" /></a>ZFIN: The Zebrafish Genome Dat\ -abase -</p> -We are also collaborating with several groups: -<p><a href="http://www.geneontology.org/"><img class="portrait" border="0" src="/images/go_logo.gif" height="50" alt="GO" /></a>The Gene Ontology +<table border="0"> + <tr> + <td><a href="http://flybase.bio.indiana.edu/"> + <img class="portrait" height="50" border="0" src="/images/fly_logo.png"alt="Flybase" /></a> + </td> + <td><a href="http://www.zfin.org/"><img class="portrait" border="0" src="/images/zfin_logo.gif" height="50" alt="Zfin" /></a> + </td> + <td><a href="http://www.dictybase.org/"><img class="portrait" border="0" src="/images/dicty_logo.png" height="50" alt="Dictybase" /></a> + </td> + <th<a href="http://www.geneontology.org/"><img class="portrait" border="0" src="/images/go_logo.gif" height="50" alt="GO" /></a> + </td> + <td><a href="http://www.nescent.org/"> + <img class="portrait" border="0" src="/images/nescent_logo.gif" height="50" alt="Nescent" /></a> + </td> + <td><a href="http://www.pharmgkb.org/"><img class="portrait" border="0" src="/images/pgkb_logo.png" height="50" alt="PharmGKB" /></a> + </td> + </tr> + <tr> + <td>Flybase</td> + <td>Zfin</td> + <td>Dictybse</td> + <td>Gene Ontology</td> + <td>NESCent</td> + <td>PharmGKB</td> + </tr> +</table> <br /> <br /> </p> -<p><a href="http://www.nescent.org/"> -<img class="portrait" border="0" src="/images/nescent_logo.gif" height="50" alt="Nescent" /></a>NESCENT: The Nati\ -onal Evolutionary Synthesis Center -<br /> -</p> -<br /> -<br /> -<p><a href="http://www.pharmgkb.org/"><img class="portrait" border="0" src="/images/pgkb_logo.png" height="50" alt="PharmGKB" /></a>PharmGKB: The Phar\ -macogenetics and Pharmacogenomics Knowledge Base -<br /> -<br /> -</p> -<p><a href="http://www.dictybase.org/"><img class="portrait" border="0" src="/images/dicty_logo.png" height="50" alt="Dictybase" /></a>Dictybase -<br /> -<br /> -</p> <h3><a name="funding">Funding Sources</a></h3> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 17:27:39
|
Revision: 347 http://svn.sourceforge.net/obo/?rev=347&view=rev Author: nlw Date: 2007-02-01 09:27:29 -0800 (Thu, 01 Feb 2007) Log Message: ----------- editing more stuff Modified Paths: -------------- phenote/trunk/doc/phenote-website/content/info/index.shtml phenote/trunk/doc/phenote-website/ssi/navi_info.html Added Paths: ----------- phenote/trunk/doc/phenote-website/ssi/navi_about.html Modified: phenote/trunk/doc/phenote-website/content/info/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/info/index.shtml 2007-02-01 17:20:12 UTC (rev 346) +++ phenote/trunk/doc/phenote-website/content/info/index.shtml 2007-02-01 17:27:29 UTC (rev 347) @@ -46,7 +46,7 @@ <h3><a name="roadmap">Roadmap</a></h3> <h3><a name="rel_notes">Release Notes</a></h3> -<a href="phenote-release-notes.html">[Release Notes]</a> +<a href="/phenote-release-notes.html">[Release Notes]</a> <br /> Added: phenote/trunk/doc/phenote-website/ssi/navi_about.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/navi_about.html (rev 0) +++ phenote/trunk/doc/phenote-website/ssi/navi_about.html 2007-02-01 17:27:29 UTC (rev 347) @@ -0,0 +1,52 @@ +<div id="navi"> +<div class="navi_head"></div> +<ul> +<!-- <li> + Home +--> </li> + <li> + <a href="/">Home</a> + </li> + <li> + <a href="/content/info/">Software Info</a> + </li> + <li> + <a href="/content/under_construction.shtml">Downloads</a> + </li> + <li> + <a href="/content/howtos/">How-tos</a> + </li> + <li> + <a href="/content/under_construction.shtml">References</a> + </li> + <li> + <a href="/content/under_construction.shtml">FAQ</a> + </li> + <li> + <a href="/content/about/">About us</a> + <ul> + <li> + <a href="#lists">Mailing Lists</a> + </li> + <li> + <a href="#bugs">Bug Reporting</a> + </li> + <li> + <a href="#contact">Contact us</a> + <li> + <a href="#collaborations">Collaborations</a> + </li> + <li> + <a href="#funding">Funding Sources</a> + </li> + </ul> + </li> + <li> + <a href="/content/links/">Links</a> + </li> + <li> + <a href="http://www.bioontology.org/wiki-internal/index.php/Phenote_-_A_Phenotype_Annotation_Tool">Internal Wiki</a> + </li> +</ul> +</div> + Modified: phenote/trunk/doc/phenote-website/ssi/navi_info.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/navi_info.html 2007-02-01 17:20:12 UTC (rev 346) +++ phenote/trunk/doc/phenote-website/ssi/navi_info.html 2007-02-01 17:27:29 UTC (rev 347) @@ -42,7 +42,7 @@ <a href="/content/about/">About us</a> </li> <li> - <a href="/phenote/content/links/">Links</a> + <a href="/content/under_construction.shtml">Links</a> </li> <li> <a href="http://www.bioontology.org/wiki-internal/index.php/Phenote_-_A_Phenotype_Annotation_Tool">Internal Wiki</a> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 17:20:40
|
Revision: 346 http://svn.sourceforge.net/obo/?rev=346&view=rev Author: nlw Date: 2007-02-01 09:20:12 -0800 (Thu, 01 Feb 2007) Log Message: ----------- adding dicty logo, moving collaboration info from front page Modified Paths: -------------- phenote/trunk/doc/phenote-website/content/about/index.shtml phenote/trunk/doc/phenote-website/index.shtml Added Paths: ----------- phenote/trunk/doc/phenote-website/images/go_logo.gif Modified: phenote/trunk/doc/phenote-website/content/about/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 01:50:44 UTC (rev 345) +++ phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 17:20:12 UTC (rev 346) @@ -41,10 +41,45 @@ obfuscate("lbl.gov", "nlwashington", "Nicole Washington"); </script></p> -<h3><a name="Groups">Groups</a></h3> -<p><a href="www.bioontology.org"><img class="protrait" height="50" src="/phenote/images/NCBO_logo.jpg" border="0" /></a>NCBO</p> -<p><a href="www.berkeleybop.org">Berkeley BOP</a> +<p> +Learn more about our supporting organizations by visiting their websites: +<a href="http://www.bioontology.org">NCBO</a> <br /> +<a href="www.berkeleybop.org">Berkeley BOP</a> <br /> +</p> +<h3><a name="collaborations">Collaborations</a></h3> +This software is being developed in collaboration with several organizations: +<p><a href="http://flybase.bio.indiana.edu/"> +<img class="portrait" height="50" border="0" src="/images/fly_logo.png"\ + alt="Flybase" /></a>Flybase: The Drosophila Genome Database. +</p> +<p><a href="http://www.zfin.org/"><img class="portrait" border="0" src="/im\ +ages/zfin_logo.gif" height="50" alt="Zfin" /></a>ZFIN: The Zebrafish Genome Dat\ +abase +</p> +We are also collaborating with several groups: +<p><a href="http://www.geneontology.org/"><img class="portrait" border="0" src="/images/go_logo.gif" height="50" alt="GO" /></a>The Gene Ontology +<br /> +<br /> +</p> +<p><a href="http://www.nescent.org/"> +<img class="portrait" border="0" src="/images/nescent_logo.gif" height="50" alt="Nescent" /></a>NESCENT: The Nati\ +onal Evolutionary Synthesis Center +<br /> +</p> +<br /> +<br /> +<p><a href="http://www.pharmgkb.org/"><img class="portrait" border="0" src="/images/pgkb_logo.png" height="50" alt="PharmGKB" /></a>PharmGKB: The Phar\ +macogenetics and Pharmacogenomics Knowledge Base +<br /> +<br /> +</p> +<p><a href="http://www.dictybase.org/"><img class="portrait" border="0" src="/images/dicty_logo.png" height="50" alt="Dictybase" /></a>Dictybase +<br /> +<br /> +</p> + + <h3><a name="funding">Funding Sources</a></h3> The funding for Phenote development is provided from the National Center for Biomedical Ontologies, which is part of the <a href="http://www.bisti.nih.gov/ncbc/index.cfm">National Centers for Biomedical Computing</a> network, Added: phenote/trunk/doc/phenote-website/images/go_logo.gif =================================================================== (Binary files differ) Property changes on: phenote/trunk/doc/phenote-website/images/go_logo.gif ___________________________________________________________________ Name: svn:mime-type + application/octet-stream Modified: phenote/trunk/doc/phenote-website/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/index.shtml 2007-02-01 01:50:44 UTC (rev 345) +++ phenote/trunk/doc/phenote-website/index.shtml 2007-02-01 17:20:12 UTC (rev 346) @@ -5,44 +5,32 @@ <!--#include virtual="/ssi/navi_home.html" --> <div id="main_content"> -<h1>Phenote: A Phenotype Annotation Tool using Ontologies</h1> +<h2>Phenote: A Phenotype Annotation Tool using Ontologies</h2> <p> <b><i>Phenote</i></b> is both a complete piece of software and a software toolkit designed to facilitate the annotation of biological phenotypes using ontologies. It provides an interface to record genotype-phenotype pairs, together with the provenance for the annotation. </p> -<p>Data annotated with Phenote is based on the <a href="http://www.fruitfly.org/~cjm/obd/formats.html">EQ model</a> for representing phenotypes, combining entities from any OBO ontology with qualities (such as <a href="http://http://www.bioontology.org/wiki/index.php/PATO:About">PATO</a>). +<p>Data annotated with Phenote is based on the <a href="http://www.fruitfly.org/~cjm/obd/formats.html">EQ model</a> for representing phenotypes, combining entities from any OBO ontology with qualities (such as from <a href="http://www.bioontology.org/wiki/index.php/PATO:About">PATO</a>). </p> -<p>The software can be used as a complete package, or individual compontents can be downloaded and plugged in to your desired application. Check out our <a href="/phenote/info/">Info</a> page to learn more.</p> +<p>The software can be used as a complete package, or individual compontents can be downloaded and plugged in to your desired application. Check out our <a href="/info/">Info</a> page to learn more.</p> <p>This tool is being developed by the <a href="http://berkeleybop.org/">Bioinformatics Core</a> of the <a href="http://www.bioontology.org">National Center for Biomedical Ontology</a>. </p> -There are two groups driving the development of this software project: +There are two groups driving the development of this software project through the NCBO: <p><a href="http://flybase.bio.indiana.edu/"> -<img class="portrait" height="50" border="0" src="/phenote/images/fly_logo.png" alt="Flybase" /></a>Flybase: The Drosophila Genome Database. +<img class="portrait" height="50" border="0" src="/images/fly_logo.png" alt="Flybase" /></a>Flybase: The Drosophila Genome Database. <br /> </p> <br /> <br /> -<p><a href="http://zfin.org/"><img class="portrait" border="0" src="/phenote/images/zfin_logo.gif" height="50" alt="Zfin" /></a>ZFIN: The Zebrafish Genome Database +<p><a href="http://www.zfin.org/"><img class="portrait" border="0" src="/images/zfin_logo.gif" height="50" alt="Zfin" /></a>ZFIN: The Zebrafish Genome Database <br /> </p> <br /> <br /> -We are also collaborating with several groups: -<p><a href="http://www.nescent.org/"><img class="portrait" border="0" src="/phenote/images/nescent_logo.gif" height="50" alt="Nescent" /></a>NESCENT: The National Evolutionary Synthesis Center -<br /> -</p> -<br /> -<br /> -<p><a href="http://www.pharmgkb.org/"><img class="portrait" border="0" src="/phenote/images/pgkb_logo.png" height="50" alt="PharmGKB" /></a>PharmGKB: The Pharmacogenetics and Pharmacogenomics Knowledge Base -<br /> -</p> -<br /> -<br /> - </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 01:50:45
|
Revision: 345 http://svn.sourceforge.net/obo/?rev=345&view=rev Author: nlw Date: 2007-01-31 17:50:44 -0800 (Wed, 31 Jan 2007) Log Message: ----------- changing ssis Modified Paths: -------------- phenote/trunk/doc/phenote-website/content/about/index.shtml phenote/trunk/doc/phenote-website/content/documentation/index.shtml phenote/trunk/doc/phenote-website/content/howtos/index.shtml phenote/trunk/doc/phenote-website/content/info/index.shtml phenote/trunk/doc/phenote-website/index.shtml phenote/trunk/doc/phenote-website/ssi/navi_howtos.html phenote/trunk/doc/phenote-website/ssi/navi_info.html Modified: phenote/trunk/doc/phenote-website/content/about/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 01:41:33 UTC (rev 344) +++ phenote/trunk/doc/phenote-website/content/about/index.shtml 2007-02-01 01:50:44 UTC (rev 345) @@ -1,8 +1,8 @@ -<!--#include virtual="/phenote/ssi/header.html" --> +<!--#include virtual="/ssi/header.html" --> <div id="page_body"> -<!--#include virtual="/phenote/ssi/navi_home.html" --> +<!--#include virtual="/ssi/navi_home.html" --> <div id="main_content"> @@ -53,4 +53,4 @@ </div> </div> -<!--#include virtual="/phenote/ssi/footer.shtml" --> +<!--#include virtual="/ssi/footer.shtml" --> Modified: phenote/trunk/doc/phenote-website/content/documentation/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/documentation/index.shtml 2007-02-01 01:41:33 UTC (rev 344) +++ phenote/trunk/doc/phenote-website/content/documentation/index.shtml 2007-02-01 01:50:44 UTC (rev 345) @@ -1,8 +1,8 @@ -<!--#include virtual="/phenote/ssi/header.html" --> +<!--#include virtual="/ssi/header.html" --> <div id="page_body"> -<!--#include virtual="/phenote/ssi/navi_home.html" --> +<!--#include virtual="/ssi/navi_home.html" --> <div id="main_content"> @@ -15,4 +15,4 @@ </div> </div> -<!--#include virtual="/phenote/ssi/footer.shtml" --> +<!--#include virtual="/ssi/footer.shtml" --> Modified: phenote/trunk/doc/phenote-website/content/howtos/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/howtos/index.shtml 2007-02-01 01:41:33 UTC (rev 344) +++ phenote/trunk/doc/phenote-website/content/howtos/index.shtml 2007-02-01 01:50:44 UTC (rev 345) @@ -1,8 +1,8 @@ -<!--#include virtual="/phenote/ssi/header.html" --> +<!--#include virtual="/ssi/header.html" --> <div id="page_body"> -<!--#include virtual="/phenote/ssi/navi_howtos.html" --> +<!--#include virtual="/ssi/navi_howtos.html" --> <div id="main_content"> @@ -57,4 +57,4 @@ </div> </div> -<!--#include virtual="/phenote/ssi/footer.shtml" --> +<!--#include virtual="/ssi/footer.shtml" --> Modified: phenote/trunk/doc/phenote-website/content/info/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/info/index.shtml 2007-02-01 01:41:33 UTC (rev 344) +++ phenote/trunk/doc/phenote-website/content/info/index.shtml 2007-02-01 01:50:44 UTC (rev 345) @@ -1,8 +1,8 @@ -<!--#include virtual="/phenote/ssi/header.html" --> +<!--#include virtual="/ssi/header.html" --> <div id="page_body"> -<!--#include virtual="/phenote/ssi/navi_info.html" --> +<!--#include virtual="/ssi/navi_info.html" --> <div id="main_content"> @@ -41,16 +41,16 @@ <br /> <h3><a name="documentation">Documentation</a></h3> -<p><a href="">Phenotype Annotation User Guide</a></p> +<p>[A <a href="">Phenotype Annotation User Guide</a> is being developed.]</p> <h3><a name="roadmap">Roadmap</a></h3> <h3><a name="rel_notes">Release Notes</a></h3> -<a href="http://toy.lbl.gov:9010/phenote/phenote-release-notes.html">[Release Notes]</a> +<a href="phenote-release-notes.html">[Release Notes]</a> <br /> </div> </div> -<!--#include virtual="/phenote/ssi/footer.shtml" --> +<!--#include virtual="/ssi/footer.shtml" --> Modified: phenote/trunk/doc/phenote-website/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/index.shtml 2007-02-01 01:41:33 UTC (rev 344) +++ phenote/trunk/doc/phenote-website/index.shtml 2007-02-01 01:50:44 UTC (rev 345) @@ -46,5 +46,5 @@ </div> </div> -<!--#include virtual="/phenote/ssi/footer.shtml" --> +<!--#include virtual="/ssi/footer.shtml" --> Modified: phenote/trunk/doc/phenote-website/ssi/navi_howtos.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/navi_howtos.html 2007-02-01 01:41:33 UTC (rev 344) +++ phenote/trunk/doc/phenote-website/ssi/navi_howtos.html 2007-02-01 01:50:44 UTC (rev 345) @@ -5,13 +5,13 @@ Home --> </li> <li> - <a href="/phenote/">Home</a> + <a href="/">Home</a> </li> <li> - <a href="/phenote/content/info/">Software Info</a> + <a href="/content/info/">Software Info</a> </li> <li> - <a href="/phenote/content/software/">Downloads</a> + <a href="/content/under_construction.shtml">Downloads</a> </li> <li> <a href="/phenote/content/howtos/">How-tos</a> @@ -25,16 +25,16 @@ </ul> </li> <li> - <a href="/phenote/content/refs/">References</a> + <a href="/content/under_construction.shtml">References</a> </li> <li> - <a href="/phenote/content/faq/">FAQ</a> + <a href="/content/under_construction">FAQ</a> </li> <li> - <a href="/phenote/content/about/">About us</a> + <a href="/content/about/">About us</a> </li> <li> - <a href="/phenote/content/links/">Links</a> + <a href="/content/under_construction.shtml">Links</a> </li> <li> <a href="http://www.bioontology.org/wiki-internal/index.php/Phenote_-_A_Phenotype_Annotation_Tool">Internal Wiki</a> Modified: phenote/trunk/doc/phenote-website/ssi/navi_info.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/navi_info.html 2007-02-01 01:41:33 UTC (rev 344) +++ phenote/trunk/doc/phenote-website/ssi/navi_info.html 2007-02-01 01:50:44 UTC (rev 345) @@ -8,7 +8,7 @@ <a href="/">Home</a> </li> <li> - <a href="/phenote/content/info/">Software Info</a> + <a href="/content/info/">Software Info</a> <ul> <li> <a href="#features">Features</a> @@ -22,24 +22,24 @@ <a href="#roadmap">Roadmap</a> </li> <li> - <a href="/phenote/content/info/release_notes.html">Release Notes</a> + <a href="/content/info/release_notes.html">Release Notes</a> </li> </ul> </li> <li> - <a href="/phenote/content/software/">Downloads</a> + <a href="/content/under_construction.shtml">Downloads</a> </li> <li> - <a href="/phenote/content/howtos/">How-tos</a> + <a href="/content/howtos/">How-tos</a> </li> <li> - <a href="/phenote/content/refs/">References</a> + <a href="/content/under_construction.shtml">References</a> </li> <li> - <a href="/phenote/content/faq/">FAQ</a> + <a href="/content/under_construction.shtml">FAQ</a> </li> <li> - <a href="/phenote/content/about/">About us</a> + <a href="/content/about/">About us</a> </li> <li> <a href="/phenote/content/links/">Links</a> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 01:42:32
|
Revision: 344 http://svn.sourceforge.net/obo/?rev=344&view=rev Author: nlw Date: 2007-01-31 17:41:33 -0800 (Wed, 31 Jan 2007) Log Message: ----------- adding under construction page, editing the navi home page Modified Paths: -------------- phenote/trunk/doc/phenote-website/ssi/navi_home.html phenote/trunk/doc/phenote-website/ssi/navi_home.html~ Added Paths: ----------- phenote/trunk/doc/phenote-website/content/under_construction.shtml Added: phenote/trunk/doc/phenote-website/content/under_construction.shtml =================================================================== --- phenote/trunk/doc/phenote-website/content/under_construction.shtml (rev 0) +++ phenote/trunk/doc/phenote-website/content/under_construction.shtml 2007-02-01 01:41:33 UTC (rev 344) @@ -0,0 +1,14 @@ +<!--#include virtual="/ssi/header.html" --> + +<div id="page_body"> + +<!--#include virtual="/ssi/navi_home.html" --> + +<div id="main_content"> + +<h2>This page is under construction</h2> + +</div> +</div> + +<!--#include virtual="/ssi/footer.shtml" --> Modified: phenote/trunk/doc/phenote-website/ssi/navi_home.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/navi_home.html 2007-02-01 01:33:58 UTC (rev 343) +++ phenote/trunk/doc/phenote-website/ssi/navi_home.html 2007-02-01 01:41:33 UTC (rev 344) @@ -8,25 +8,25 @@ <a href="/">Home</a> </li> <li> - <a href="/phenote/content/info/">Software Info</a> + <a href="/content/info/">Software Info</a> </li> <li> - <a href="/phenote/content/software/">Downloads</a> + <a href="/content/under_construction.shtml">Downloads</a> </li> <li> - <a href="/phenote/content/howtos/">How-tos</a> + <a href="/content/howtos/">How-tos</a> </li> <li> - <a href="/phenote/content/refs/">References</a> + <a href="/content/under_construction.shtml">References</a> </li> <li> - <a href="/phenote/content/faq/">FAQ</a> + <a href="/content/under_construction.shtml">FAQ</a> </li> <li> - <a href="/phenote/content/about/">About us</a> + <a href="/content/about/">About us</a> </li> <li> - <a href="/phenote/content/links/">Links</a> + <a href="/content/under_construction.shtml">Links</a> </li> <li> <a href="http://www.bioontology.org/wiki-internal/index.php/Phenote_-_A_Phenotype_Annotation_Tool">Internal Wiki</a> Modified: phenote/trunk/doc/phenote-website/ssi/navi_home.html~ =================================================================== --- phenote/trunk/doc/phenote-website/ssi/navi_home.html~ 2007-02-01 01:33:58 UTC (rev 343) +++ phenote/trunk/doc/phenote-website/ssi/navi_home.html~ 2007-02-01 01:41:33 UTC (rev 344) @@ -14,7 +14,7 @@ <a href="/phenote/content/software/">Downloads</a> </li> <li> - <a href="/phenote/content/documentation/">How-tos</a> + <a href="/phenote/content/howtos/">How-tos</a> </li> <li> <a href="/phenote/content/refs/">References</a> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 01:33:57
|
Revision: 343 http://svn.sourceforge.net/obo/?rev=343&view=rev Author: nlw Date: 2007-01-31 17:33:58 -0800 (Wed, 31 Jan 2007) Log Message: ----------- adding dictybase logo Added Paths: ----------- phenote/trunk/doc/phenote-website/images/dicty_logo.png Added: phenote/trunk/doc/phenote-website/images/dicty_logo.png =================================================================== (Binary files differ) Property changes on: phenote/trunk/doc/phenote-website/images/dicty_logo.png ___________________________________________________________________ Name: svn:mime-type + application/octet-stream This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 01:22:00
|
Revision: 342 http://svn.sourceforge.net/obo/?rev=342&view=rev Author: nlw Date: 2007-01-31 17:21:57 -0800 (Wed, 31 Jan 2007) Log Message: ----------- Modified Paths: -------------- phenote/trunk/doc/phenote-website/ssi/header.html Modified: phenote/trunk/doc/phenote-website/ssi/header.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:20:17 UTC (rev 341) +++ phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:21:57 UTC (rev 342) @@ -26,11 +26,12 @@ <div id="page_head"> <div class="ehead"> -<h1 align="center">Phenote</h1> +<br /> +<h1>Phenote</h1> </div> <div class="page_logo"> -<a href="http://www.bioontology.org"><img class="portrait" border="0" src="/phenote/images/NCBO_logo.jpg" align="left" /></a> +<a href="http://www.bioontology.org"><img class="portrait" border="0" src="/phenote/images/NCBO_logo.jpg" /></a> </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 01:20:20
|
Revision: 341 http://svn.sourceforge.net/obo/?rev=341&view=rev Author: nlw Date: 2007-01-31 17:20:17 -0800 (Wed, 31 Jan 2007) Log Message: ----------- edits Modified Paths: -------------- phenote/trunk/doc/phenote-website/ssi/header.html Modified: phenote/trunk/doc/phenote-website/ssi/header.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:15:20 UTC (rev 340) +++ phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:20:17 UTC (rev 341) @@ -26,13 +26,11 @@ <div id="page_head"> <div class="ehead"> -<br /> -<br /> -<h1>Phenote</h1> +<h1 align="center">Phenote</h1> </div> <div class="page_logo"> -<a href="http://www.bioontology.org"><img class="portrait" border="0" src="/phenote/images/NCBO_logo.jpg" align="right" /></a> +<a href="http://www.bioontology.org"><img class="portrait" border="0" src="/phenote/images/NCBO_logo.jpg" align="left" /></a> </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 01:15:26
|
Revision: 340 http://svn.sourceforge.net/obo/?rev=340&view=rev Author: nlw Date: 2007-01-31 17:15:20 -0800 (Wed, 31 Jan 2007) Log Message: ----------- added link to ncbo, moving image Modified Paths: -------------- phenote/trunk/doc/phenote-website/css/style.css phenote/trunk/doc/phenote-website/ssi/header.html Modified: phenote/trunk/doc/phenote-website/css/style.css =================================================================== --- phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 01:11:31 UTC (rev 339) +++ phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 01:15:20 UTC (rev 340) @@ -22,7 +22,7 @@ .ehead{ white-space: nowrap; - left: 10em; + left: 1em; font-size: 1.25em; font-weight: bold; color: 999999; Modified: phenote/trunk/doc/phenote-website/ssi/header.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:11:31 UTC (rev 339) +++ phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:15:20 UTC (rev 340) @@ -26,11 +26,13 @@ <div id="page_head"> <div class="ehead"> +<br /> +<br /> <h1>Phenote</h1> </div> <div class="page_logo"> -<img src="/phenote/images/NCBO_logo.jpg" /> +<a href="http://www.bioontology.org"><img class="portrait" border="0" src="/phenote/images/NCBO_logo.jpg" align="right" /></a> </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <nl...@us...> - 2007-02-01 01:12:05
|
Revision: 339 http://svn.sourceforge.net/obo/?rev=339&view=rev Author: nlw Date: 2007-01-31 17:11:31 -0800 (Wed, 31 Jan 2007) Log Message: ----------- edits to add NCBO logo Modified Paths: -------------- phenote/trunk/doc/phenote-website/css/style.css phenote/trunk/doc/phenote-website/index.shtml phenote/trunk/doc/phenote-website/ssi/header.html Modified: phenote/trunk/doc/phenote-website/css/style.css =================================================================== --- phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 01:03:15 UTC (rev 338) +++ phenote/trunk/doc/phenote-website/css/style.css 2007-02-01 01:11:31 UTC (rev 339) @@ -22,7 +22,7 @@ .ehead{ white-space: nowrap; - left: 1em; + left: 10em; font-size: 1.25em; font-weight: bold; color: 999999; Modified: phenote/trunk/doc/phenote-website/index.shtml =================================================================== --- phenote/trunk/doc/phenote-website/index.shtml 2007-02-01 01:03:15 UTC (rev 338) +++ phenote/trunk/doc/phenote-website/index.shtml 2007-02-01 01:11:31 UTC (rev 339) @@ -1,4 +1,4 @@ -<!--#include virtual="//ssi/header.html" --> +<!--#include virtual="/ssi/header.html" --> <div id="page_body"> @@ -10,7 +10,7 @@ <b><i>Phenote</i></b> is both a complete piece of software and a software toolkit designed to facilitate the annotation of biological phenotypes using ontologies. It provides an interface to record genotype-phenotype pairs, together with the provenance for the annotation. </p> -<p>Data annotated with Phenote is based on the <a href="http://http://www.fruitfly.org/~cjm/obd/formats.html">EQ model</a> for representing phenotypes, combining entities from any OBO ontology with qualities (such as <a href="http://http://www.bioontology.org/wiki/index.php/PATO:About">PATO</a>). +<p>Data annotated with Phenote is based on the <a href="http://www.fruitfly.org/~cjm/obd/formats.html">EQ model</a> for representing phenotypes, combining entities from any OBO ontology with qualities (such as <a href="http://http://www.bioontology.org/wiki/index.php/PATO:About">PATO</a>). </p> <p>The software can be used as a complete package, or individual compontents can be downloaded and plugged in to your desired application. Check out our <a href="/phenote/info/">Info</a> page to learn more.</p> Modified: phenote/trunk/doc/phenote-website/ssi/header.html =================================================================== --- phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:03:15 UTC (rev 338) +++ phenote/trunk/doc/phenote-website/ssi/header.html 2007-02-01 01:11:31 UTC (rev 339) @@ -30,7 +30,7 @@ </div> <div class="page_logo"> -<img src="/phenote/images/" /> +<img src="/phenote/images/NCBO_logo.jpg" /> </div> </div> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |