Einfuehrung in die STN Express Scriptsprache (2004)

Post on 16-Nov-2014

247 views 2 download

description

 

Transcript of Einfuehrung in die STN Express Scriptsprache (2004)

1

Einführung in die STN Express Scriptsprache

InfoLit Infobroker GmbH, Andreas Litscher

a.litscher@infolit.ch 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 ......