Date post: | 16-Nov-2014 |
Category: |
Technology |
Upload: | andreas-litscher |
View: | 246 times |
Download: | 2 times |
1
Einführung in die STN Express Scriptsprache
InfoLit Infobroker GmbH, Andreas Litscher
[email protected] http://www.infolit.ch/
2
http://stnweb.fiz-karlsruhe.de/
Front-End SoftwareSTN Express
http://stneasy.fiz-karlsruhe.de/
telnet://stn.fiz-karlsruhe.de/
STN-Zugänge mit Script-MöglichkeitSTN-Zugänge mit Script-Möglichkeit
3
Beispiel eines Scripts für STN ExpressBeispiel eines Scripts für STN Express
\* STN Express Command File nspray.sc\*\* Recherchenaufgabe: Zum Thema "Nasenspray bei Schnupfen"\* soll wissenschafliche und Patentliteratur der letzten\* 10 Jahre gefunden werden\* ---------------------------------------------------------------
=> DEL HIS Y
=> FILE CAPLUS=> S NASAL DRUG DELIVERY SYSTEMS/CT,TI \> _m1=> S _m1 AND SPRAY### \> _m2=> S _m2 OR (NASAL OR NOSE)(1A)SPRAY### \> _m4=> S DECONGEST####/CT,TI \> _m5=> S _m4 AND _m5 \> _m6=> S _m6 AND PY>1990 \> _m7
4
Beispiel eines Scripts für STN ExpressBeispiel eines Scripts für STN Express
=> FILE MEDLINE=> S NASAL DECONGESTANT?/CT,TI \> _m8=> S _m8 AND SPRAY?/CT,TI \> _m9=> S _m9 AND PY>1990 \> _m10
=> FILE EMBASE=> S DECONGEST?/CT,TI \> _m11=> S _m11 AND (NOSE? OR NASAL)/CT,TI AND SPRAY?/CT,TI \> _m12=> S _m12 AND PY>1990 \> _m13
=> FILE BIOSIS=> S DECONGEST#### AND (NASAL OR NOSE)(1A)SPRAY### \> _bs1=> S _bs1 AND PY>1990 \> _bs2
5
Beispiel eines Scripts für STN ExpressBeispiel eines Scripts für STN Express
=> FILE WPINDEX=> S (NASAL OR NOSE)(1A)SPRAY### \> _PL1=> S DECONGEST#### \> _PL2=> S _PL1 AND _PL2 OR (NASAL DECONGEST#### AND SPRAY?) \> _PL2=> S _PL2 AND PY>1990 \> _PL3=> D TI TRIAL TOT NOH
=> D HIS
\* ----------------------------------------------------------------\* InfoLit Information Broker - Andreas Litscher - 15.5.2002
6
Beispiel eines Scripts für STN ExpressBeispiel eines Scripts für STN Express
=> FILE CAPLUS MEDLINE EMBASE BIOSIS=> S _m7 OR _m10 OR _m13 OR _bs2 \> _m14=> SET DUPORDER FILE=> DUP REM _m14 \> _m15=> D TI CT TOT NOH
=> FILE ADISALERT=> S DECONGEST#### AND (NASAL OR NOSE)(1A)SPRAY### \AND PY>1990 \> _adisalert1\* sind alles klinische Studien. Originaldokumente im Volltext!=> D TRIAL TOT NOH=> log y
7
Beispiel eines Scripts für STN ExpressBeispiel eines Scripts für STN Express
=> D HIS
(FILE 'HOME' ENTERED AT 16:39:20 ON 15 MAY 2002) DEL HIS Y
FILE 'CAPLUS' ENTERED AT 16:39:42 ON 15 MAY 2002L1 279 S NASAL DRUG DELIVERY SYSTEMS/CT,TI L2 76 S L1 AND SPRAY### L3 501 S L2 OR (NASAL OR NOSE)(1A)SPRAY### L4 242 S DECONGEST####/CT,TI L5 11 S L3 AND L4 L6 8 S L5 AND PY>1990
FILE 'MEDLINE' ENTERED AT 16:39:59 ON 15 MAY 2002L7 705 S NASAL DECONGESTANT?/CT,TI L8 44 S L7 AND SPRAY?/CT,TI L9 17 S L8 AND PY>1990
8
Beispiel eines Scripts für STN ExpressBeispiel eines Scripts für STN Express
FILE 'EMBASE' ENTERED AT 16:41:13 ON 15 MAY 2002L10 952 S DECONGEST?/CT,TI L11 17 S L10 AND (NOSE? OR NASAL)/CT,TI AND SPRAY?/CT,TI L12 14 S L11 AND PY>1990
FILE 'BIOSIS' ENTERED AT 16:42:18 ON 15 MAY 2002L13 39 S DECONGEST#### AND (NASAL OR NOSE)(1A)SPRAY### L14 29 S L13 AND PY>1990
FILE 'CAPLUS, MEDLINE, EMBASE, BIOSIS' ENTERED AT 16:44:05 ON 15 MAY 2002L15 152 S L6 OR L9 OR L12 OR L14 SET DUPORDER FILEL16 89 DUP REM L15 (63 DUPLICATES REMOVED)
9
Beispiel eines Scripts für STN ExpressBeispiel eines Scripts für STN Express
FILE 'ADISALERTS' ENTERED AT 16:57:25 ON 15 MAY 2002L17 16 S DECONGEST#### AND (NASAL OR NOSE)(1A)SPRAY### AND PY>1990
FILE 'WPINDEX' ENTERED AT 16:57:38 ON 15 MAY 2002L18 271 S (NASAL OR NOSE)(1A)SPRAY### L19 445 S DECONGEST#### L20 15 S L18 AND L19 OR (NASAL DECONGEST#### AND SPRAY?) L21 11 S L20 AND PY>1990
=> LOG YCOST IN EUROS SINCE FILE TOTAL ENTRY SESSIONFULL ESTIMATED COST 31,65 137,43
STN INTERNATIONAL LOGOFF AT 17:01:42 ON 15 MAY 2002
10
Das Command Window von STN ExpressDas Command Window von STN Express
Nach der interaktiven Recherche kann der Inhalt des Command Window für die spätere Aktivierung gespeichertwerden.
11
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN ExpressOnline-Aktivierung mit STN Express
Methode 1 von 2: Mit dem Command Window
(kann auch mit anderen Hosts, z.B. DIALOG, DATASTAR verwendet werden)
Offline:
Mit "Prepare Command File" (oder einem anderen Texteditor) das Kommando bzw. Zeile für Zeile die Kommandos schreiben
12
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN ExpressOnline-Aktivierung mit STN Express
Methode 1 von 2: Mit dem Command Window
Online:
Laden Sie die Script-Datei (z.B. c:\stnexp\uscripts\cw-seq01.sc)
13
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN ExpressOnline-Aktivierung mit STN Express
Methode 1 von 2: Mit dem Command Window
Klicken Sie auf die einzelne Linie rechts, um eine einzelne Zeile zu übergeben. Ein Klick auf das Symbol mit den vier Linien übergibt Zeile um Zeile nacheinander. Das rote Schloss muss aber mit einem Klick freigemacht werden.
14
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN ExpressOnline-Aktivierung mit STN Express
Methode 2 von 2: Mit einem Command File
Offline:
Prepare ... bedeutet: ein neues Command File anfertigenoder ein bestehendes editieren.
15
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN ExpressOnline-Aktivierung mit STN Express
Methode 2 von 2: Mit einem Command File
Achtung: Messenger-Kommandos immer mit dem Prompt
=>
16
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN ExpressOnline-Aktivierung mit STN Express
Methode 2 von 2: Mit einem Command File
Online: Das Command File kann kostenlos im File STNGUIDE gestartet werden:
L1 QUE AGAAAAAAGGAGQGGYGG z.B. im STNGUIDE L2 RUN GETSEQ L1 im DGENE L3 S L1/SQSP im REGISTRY
17
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN on the WebOnline-Aktivierung mit STN on the Web
Schreiben Sie mit einem einfachen Texteditorein „Command-File“:
AbspeichernAchtung: Wechseln auf *.*
18
Offline-Vorbereitung undOffline-Vorbereitung undOnline-Aktivierung mit STN on the WebOnline-Aktivierung mit STN on the Web
Aktivieren des „Command-Files“:
19
Die vordefinierten Scripts *.pssDie vordefinierten Scripts *.pss(Predefined Search Strategies)(Predefined Search Strategies)
Das sind von CAS vorbereitete und im STN Express enthaltene Command Files, z.B. c:\stnexp\pssfiles\catox.pss
\* toxicity Chemistry - general strategy for toxicity\*\* This Predefined Search Strategy is designed to help you search for\* articles relating to "toxicity" or "toxicology" in the CA File. This\* strategy was provided by staff from Chemical Abstracts Service.echo ""echo " This Predefined Search Strategy .... to be used in the CA File"echo " in combination with other search terms."echo ""echo " FOR EXAMPLE: If L1 contains the results from your other search and"echo " if L2 is final L-number created for this Predefined Search"echo " Strategy, then you should use the following overall strategy"echo ""echo " => search L1 AND L2"echo ""=> QUERY toxicology/SC,SX or 59/SC,SX or carcino? or \cytotox? or forensic or hazard? or lethal or \muta? or poison? or terato? or toxic? or neurotoxic? or \phototoxic? or allerg?
20
Die Regeln im EinzelnenDie Regeln im EinzelnenMethode 1 von 2: Mit dem Command Window (STN Express) bzw. mit STN Web
- Jede Zeile, die Messenger-Befehle übergibt, beginnt direkt mit dem Messenger-Befehl. Es können/dürfen keine Prompts benutzt werden.
- Die Commandfile-Befehle funktionieren im Command Window nicht. Hier wird nicht mit der Express-Scriptsprache gearbeitet, sondern es werden nur die Messenger- Kommandos verwendet.
- Es kann - im Unterschied zur Express-Script-Sprache - nicht mit Variablen gearbeitet werden.
21
Die Regeln im EinzelnenDie Regeln im EinzelnenMethode 2 von 2: Mit einem Command File (nur STN Express)
- Jede Zeile, die Messenger-Befehle übergibt, muss mit einem STN-Prompt beginnen:
=> (Hauptprompt) oder : (Unterbefehlsebene)
- Jede Zeile, die Commandfile-Befehle übergibt, beginnt mit dem entsprechenden Kommando, z.B.
\* echo get capture usw.
22
Die Regeln im EinzelnenDie Regeln im Einzelnen
Wir behandeln in diesem Kurs von jetzt an ausschliesslich die Methode 2 von 2:
Mit einem Command File (STN Express)
=>
23
Die Regeln im EinzelnenDie Regeln im Einzelnen
Einige syntaktische Fehler bei der Erstellung eines Command Files kann die Software selbst erkennen:
24
=> oder am Beginn einer Zeile
:
Die beiden Bereitschaftszeichen (Prompts) von STN Messenger.Alles, was auf dieser Zeile steht, wird gesendet.
=> wartet auf den Hauptprompt: wartet auf den Sekundärprompt (Unterbefehlsebene)
Beispiel:
=> search ascorbic acid and pauling ?/au
25
\* am Beginn einer Zeile
In dieser Zeile steht eine Bemerkung, die nicht als Kommando ausgeführt wird(wie z.B. REM in Basic- oder DOS-Makros).
Beispiel:
\* Name: alldel.sc\* Funktion: Löscht alle L- und E-Nummern \* Autor: Andreas Litscher, InfoLit, Bern\* Datum: 15.5.02\* ------------------------------------------
=> del his y;del exp y
26
echo "" am Beginn einer Zeile
Zeigt eine Meldung (oder einen Zeilenabstand) auf dem Bildschirm an.
Beispiel:
echo ""echo "Das ist das COMMAND File fuer die" echo "wöchentliche Suche."echo ""echo "Bitte geben Sie irgendein Datum"echo "im ISO-Format ein, das mindestens"echo "3 Wochen zurückliegt (z.B. 20020415):"
27
get _ am Beginn einer Zeile
Übernimmt eine Eingabe als Variable, die später beliebig benutzt werden kann.
Beispiel:
get _datum\* [CH02] Alle CH-Patente PATDPA=> set highlight off=> del his y=> del exp y=> fil patdpa=> expand _datum/upecho "Bitte tippen Sie die letzte E-Nummer“echo "ein (z.B. e6):"get _enummer=> s _enummer and *ch/paa
28
get _ am Beginn einer Zeile
29
capture on <> am Beginn einer Zeile
capture off <>
Schliesst bzw. öffnet ein Transcript-File.
Beispiel:
capture off <>=> s _enummer and *ch/paa=> sor L1 ic acapture on <ch02.trn>=> d ti 1-5capture off <>
30
capture on <> am Beginn einer Zeile
capture off <>
\* Ask for Parameters of Monitoring Run\*capture off <>=> fil stnguideecho "Provide name of month monitored (Format: MMMM YY)"get _monthecho "Provide date of this monitoring (Format: YYMMDD)"get _date_transcr="MM_date"+".trn"echo "Provide date of last monthly monitoring (Format: YYMMDD)"get _lastupdcapture on <_transcr>\*\* List saved items and allow for cancelling the obsolete ones.\*echo "List of Currently Saved Items for Consideration of"echo "Cancellation"echo ""=> d saved
31
capture on <> am Beginn einer Zeile
capture off <>
capture off <>=> FILE WPINDEXcapture on <test.doc>=> s blimp/ticapture off <>capture on <test.doc/A> A p p e n d ! ! => d bibcapture off <>
32
\> _ am Ende einer Zeile
Zuteilung der L-Nummer in eine Variable: Die resultierende L-Nummer wird in der Variablen _xxxxx für die spätere Verwendung gespeichert.
Beispiel:
=> FILE EMBASE=> S DECONGEST?/CT,TI \> _lnum1=> S _lnum1 AND NASAL AND SPRAY?/CT,TI \> _m12=> S _m12 AND PY>1999 \> _yearlimit
33
\! am Ende einer Zeile
Die Zeile kann vor dem Abschicken editiert werden. Es gibt einen Unterbruch.
Beispiel:
=> s petrzilka ?/au \!
34
Command File für Überwachung
Beispiel eines Scripts für SDI (Alert)(Fehler nicht abgefangen)
\* SDIPAT.SC\*echo ""echo "Das ist das COMMAND File fuer die woechentliche Suche."echo ""echo "Bitte geben Sie irgendein Datum im ISO-Format ein,"echo "das mindestens 3 Wochen zurueckliegt (z.B. 970426):"get _datum
\* [CH02] Alle CH-Patente PATDPA=> set highlight off=> del his y=> del exp y=> fil patdpa=> expand _datum/up
35
echo "Bitte tippen Sie die letze E-Nummer ein (z.B. e6):"get _enummer=> s _enummer and *ch/paa=> sor L1 ic acapture on <ch02.trn>=> d ti 1-5capture off <>
\* [CH01] Alle CH-Basispatente WPINDEX=> del his y=> del exp y=> fil wpindex=> expand _datum/upecho "Bitte Sie die letze E-Nummer ein (z.B. e6):"get _enummer=> s _enummer and ch/pc.b=> sor L1 dc acapture on <ch01.trn>=> d tri 1-3capture off <>
Command File für Überwachung
36
Command File für Überwachung
\* [TK01] Alle europ. Basispatente H04L + H04Q WPINDEX=> del his y=> del exp y=> expand _datum/up=> s _enummer and (h04l or h04q)/ic and ep/pc.b=> sor L1 dc acapture on <tk01.trn>=> fil stnguide=> d ti pa 1-4 ycapture off <>
capture on <sdicost.trn>=> d cost fullcapture off <>
37
Command File in einer Multifile-Umgebung
Beispiel eines Scripts für aktuelle Recherchen in der Multifile-Umgebung (Fehler nicht abgefangen)
\* MULTI.SC\*capture off <>=> set plural onecho ""echo "Das ist das COMMAND File fuer"echo "zeitlich begrenzte aktuelle Suche."echo ""echo "Bitte geben Sie das Datum im ISO-Format ein, ab welchem gesucht"echo "werden soll (z.B. 970426 ; etwa die letzten 3-5 Wochen):"get _datum=> del his y=> del exp y=> ind biosis caplus embase inspec medline=> set detail on=> s fetal(2a)(disease or surgery) and up>_datum \> _lnum1
38
capture on <fetsurg.trn>=> set detail off=> file hit => s _lnum1 \> _lnum2=> set duporder file=> dup rem _lnum2capture off <>echo ""echo "Die Suche ist in FETSURG.TRN gespeichert."echo "Fahren Sie von Hand fort; ACHTUNG CAPTURE!"echo ""=> fil stnguide=> set cost on=> d cost
Command File in einer Multifile-Umgebung
39
\ am Ende einer Zeile
Damit können Zeilen zusammengehängt werden.
Beispiel:
=> fil reg=> que MAKGDPKKPKGKMSAYAFFVQTCREEHKKKNPEVPVNFAEFSKKCSERWK\TMSSKEKSKFDEMAKADKVRYDREMKDYGPAKGGKKKKDPNAPKRPPSGF\FLFCSEFRPKIKSTNPGISIGDVAKKLGEMWNNLSDNEKQPYVTKAAKLK\EKYEKDVADYKSKGKFDGAKGPAKVARKKVEEEEEEEEEEEEEEEEEEDE
40
\ am Ende einer Zeile
Achtung: Gesamte Zeilenlänge ist auf 255 Zeichen limitiert.Wenn grosse Biosequenz, dann:
=> fil reg=> que cgcggcagtgaattcgagctcaggcctgatgacatccagagcagattttt\ttaaaacacaccctttttgtatagcaaaattattttcagaaataatcatg\aaatgagtaatggaaatggccagaaagaaaacttgaactgtatgtgcgcg\cgcgcgcnnnacaccaacnacacacacacacatcatataaatcataccag/sqen \> _L1
=> que acttttaaattgcattaatatatgttttttgaaatagtggaaaaacttat\ctgcatactgatatgtcacaataatgaatacaaatgttacaggatttttt\gttttgnnttttgttttgtttgttttgttttgttttttttgagacggagt\gttgctctgtcacccaggctggagtgcagtggcatgatcttggcacatag/sqen \> _L2
=> s _L1&_L2
41
\ am Ende einer Zeile
bzw.
=> fil dgene......
=> run getseq _L1&_L2
42
edit on am Beginn einer Zeile
edit off
Die Zeile kann vor dem Abschicken editiert werden. Es gibt einen Unterbruch.
Beispiel:
=> file registryedit on=> e aspirin/cnedit off=> s e3 \! s i e h e a u c h \!
43
if else .... begin end
Ausführung optionaler Funktionen in Abhängigkeit von bestimmten Bedingungen.
Beispiel:
=> file stnguideecho "Geben Sie den PACO der gewuenschten Firma ein"echo ""get _pacoecho ""echo "Das erste Publikationsdatum im Format YYYYMMDD"echo ""get _dat1echo ""echo "Das letzte Publikationsdatum im Format YYYYMMDD"echo ""get _dat2
44
if else .... begin end
=> file wpindex=> s _paco/paco and _dat1-_dat2/pd \> _result if (#_result=0)
begin echo "Keine neuen Patente der Firma _paco im" echo "Zeitraum _dat1-_dat2/pd" echo "" => d his => file stnguide exit end else=> file stnguide=> d ti 1-5 y
45
#
Bedeutet die Anzahl der gefundenen Dokumente.
Beispiel:
if (#_result=0)
begin echo "Keine neuen Patente der Firma _paco im" echo "Zeitraum _dat1-_dat2/pd" echo "" => d his => file stnguide exit end else
46
exit
Ausstieg aus dem Script.
Beispiel:
if (#_result=0)
begin echo "Keine neuen Patente der Firma _paco im" echo "Zeitraum _dat1-_dat2/pd" echo "" => d his => file stnguide exit end else
47
upload am Beginn einer Zeile
Wird benutzt, um eine Strukturdatei auf den Rechner zu laden.
Beispiel:
=> fil zcaupload lnum _lnum1 <c:\stnexp\queries\cephalon.str>=> s _lnum1
Anstelle von \> _ wird mit lnum _ die L-Nummerin eine Variable gelesen
48
upload am Beginn einer Zeile
bewirkt:
=> fil zcaFILE 'ZCA' ENTERED AT 13:11:30 ON 04 SEP 1998
=> Uploading c:\stnexp\queries\cephalon.str
L9 STRUCTURE UPLOADED
=> s L9 REG1stRY INITIATED Substance data SEARCH and crossover from CAS REGISTRY in progress... Use DISPLAY HITSTR (or FHITSTR) to directly view retrieved structures.
usw ......