From: rsoulliere Date: Wed, 25 Jan 2012 16:07:49 +0000 (-0500) Subject: Merge branch 'rel_1_6' of git.evergreen-ils.org:Evergreen-DocBook X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=462c283d14e1bb0fab254ce67889b0917dee03af;p=Evergreen-DocBook.git Merge branch 'rel_1_6' of git.evergreen-ils.org:Evergreen-DocBook Conflicts: 1.6/integration/intro.xml 1.6/stafftasks/intro.xml admin/AdminMisc.xml admin/Upgrading-Evergreen_1.6.xml admin/actiontriggers.xml admin/admin-booking.xml admin/admin-lsa.xml admin/admin-receipt.xml admin/admin-survey.xml admin/localization.xml admin/migratingdata_1.6.xml admin/serveradministration.xml admin/serversideinstallation.xml admin/sip.xml admin/staffclientinstallation.xml admin/troubleshooting.xml admin/z3950.xml appendices/about_this_documentation.xml appendices/bookindex.xml appendices/glossary.xml appendices/installchecklist.xml appendices/permissions.xml appendices/schema.xml appendices/schema1.6.1.2.xml appendices/schema1.6.1.6.xml development/OpenSRF_intro.xml development/customize_opac.xml development/customizingstaffclient.xml development/datamodelsandaccess.xml development/development_intro.xml development/directoriesandFiles.xml development/installchecklist.xml development/introduction_to_sql.xml development/json.xml development/supercat.xml integration/intro.xml intro/intro_intro.xml intro/releasenotes.xml media/add_holdings-1.png media/add_holdings-2.png media/add_holdings-3.png media/add_holdings-4.png media/add_holdings-5.png media/bills-1.png media/bills-10.png media/bills-11.png media/bills-12.png media/bills-13.png media/bills-14.png media/bills-15.png media/bills-16.png media/bills-17.png media/bills-18.png media/bills-19.png media/bills-2.png media/bills-20.png media/bills-3.png media/bills-4.png media/bills-5.png media/bills-6.png media/bills-7.png media/bills-8.png media/bills-9.png media/catalogue-10.png media/catalogue-11.png media/catalogue-3.png media/catalogue-4.png media/catalogue-5.png media/catalogue-6.png media/catalogue-7.png media/catalogue-8.png media/catalogue-9.png media/circulation-1.png media/circulation-10.png media/circulation-11.png media/circulation-12.png media/circulation-13.png media/circulation-14.png media/circulation-15.png media/circulation-16.png media/circulation-17.png media/circulation-18.png media/circulation-19.png media/circulation-2.png media/circulation-20.png media/circulation-21.png media/circulation-22.png media/circulation-23.png media/circulation-24.png media/circulation-25.png media/circulation-26.png media/circulation-27.png media/circulation-28.png media/circulation-29.png media/circulation-3.png media/circulation-30.png media/circulation-31.png media/circulation-32.png media/circulation-33.png media/circulation-34.png media/circulation-35.png media/circulation-36.png media/circulation-4.png media/circulation-5.png media/circulation-6.png media/circulation-7.png media/circulation-8.png media/circulation-9.png media/hold-1.png media/hold-10.png media/hold-11.png media/hold-12.png media/hold-14.png media/hold-15.png media/hold-16.png media/hold-17.png media/hold-18.png media/hold-19.png media/hold-2.png media/hold-20.png media/hold-21.png media/hold-22.png media/hold-23.png media/hold-24.png media/hold-25.png media/hold-26.png media/hold-27.png media/hold-28.png media/hold-29.png media/hold-4.png media/hold-5.png media/hold-6.png media/hold-7.png media/hold-8.png media/hold-9.png media/k_book_record.png media/lsa-1.png media/lsa-10.jpg media/lsa-11.jpg media/lsa-12.jpg media/lsa-14.jpg media/lsa-16.jpg media/lsa-17.jpg media/lsa-18.jpg media/lsa-2.jpg media/lsa-22.png media/lsa-23.jpg media/lsa-25.jpg media/lsa-26.jpg media/lsa-27.jpg media/lsa-28.jpg media/lsa-32.jpg media/lsa-33.jpg media/lsa-4.jpg media/lsa-5.jpg media/lsa-7.jpg media/lsa-8.jpg media/lsa-closed-mountain-1.png media/lsa-closed-mountain-2.png media/lsa-group-0.png media/lsa-group-1.png media/lsa-group-1a.png media/lsa-group-2.png media/lsa-group-3.png media/lsa-group-4.png media/lsa-group-5.png media/lsa-group-6.png media/myaccount-bookbags.png media/myaccount-itemrenew.png media/myaccount-itemscheckedout.png media/myaccount-itemsonhold.png media/myaccount-login-arrow.png media/myaccount-login-info.png media/myaccount-login.png media/myaccount-loginpasswordupdate.png media/myaccount-summary.png media/offline-1.png media/offline-10.png media/offline-11.png media/offline-12.png media/offline-13.png media/offline-14.png media/offline-15.png media/offline-16.png media/offline-17.png media/offline-18.png media/offline-19.png media/offline-2.png media/offline-20.png media/offline-21.png media/offline-22.png media/offline-23.png media/offline-24.png media/offline-25.png media/offline-26.png media/offline-27.png media/offline-28.png media/offline-29.png media/offline-3.png media/offline-30.png media/offline-31.png media/offline-32.png media/offline-33.png media/offline-34.png media/offline-35.png media/offline-36.png media/offline-4.png media/offline-5.png media/offline-6.png media/offline-7.png media/offline-8.png media/offline-9.png media/passwordresetmessage.png media/patron-1.png media/patron-10.png media/patron-11.png media/patron-12.png media/patron-13.png media/patron-14.png media/patron-15.png media/patron-16.png media/patron-17.png media/patron-18.png media/patron-19.png media/patron-2.png media/patron-20.png media/patron-21.png media/patron-22.png media/patron-23.png media/patron-24.png media/patron-25.png media/patron-26.png media/patron-27.png media/patron-28.png media/patron-29.png media/patron-3.png media/patron-30.png media/patron-31.png media/patron-32.png media/patron-3a.png media/patron-4.png media/patron-5.png media/patron-6.png media/patron-7.png media/patron-8.png media/patron-9.png media/patron-record-status-1.png media/patron-record-status-dark-grey.png media/patron-record-status-green.png media/patron-record-status-light-grey.png media/patron-record-status-orange.png media/patron-record-status-purple.png media/patron-record-status-red.png media/patron-record-status-yellow.png media/profile-5.png media/profile-6.png media/profile-7.png media/receipt-10.jpg media/receipt-11.jpg media/receipt-12.jpg media/receipt-13.jpg media/receipt-14.jpg media/receipt-15.jpg media/receipt-16.png media/receipt-17.jpg media/receipt-18.jpg media/receipt-19.jpg media/receipt-2.jpg media/receipt-20.jpg media/receipt-21.jpg media/receipt-22.jpg media/receipt-23.jpg media/receipt-24.jpg media/receipt-3.jpg media/receipt-4.jpg media/receipt-5.jpg media/receipt-6.jpg media/receipt-7.jpg media/receipt-8.jpg media/receipt-9.jpg media/server-3.png media/server-4.png media/server-5.png media/server-6.png media/serversideinstallation-staffclient-running-1.png media/serversideinstallation-staffclient-running-2.png media/serversideinstallation-staffclient-running-3.png media/serversideinstallation-staffclient-running-4.png media/serversideinstallation-testing-1.png media/serversideinstallation-testing-2.png media/serversideinstallation-virtual-vbox-install-1.png media/serversideinstallation-virtual-vbox-install-2.png media/serversideinstallation-virtual-vbox-install-3.png media/serversideinstallation-virtual-vbox-install-4.png media/serversideinstallation-virtual-vbox-install-5.png media/serversideinstallation-virtual-vm-install-1.png media/serversideinstallation-virtual-vm-install-10.png media/serversideinstallation-virtual-vm-install-11.png media/serversideinstallation-virtual-vm-install-12.png media/serversideinstallation-virtual-vm-install-13.png media/serversideinstallation-virtual-vm-install-14.png media/serversideinstallation-virtual-vm-install-15.png media/serversideinstallation-virtual-vm-install-16.png media/serversideinstallation-virtual-vm-install-17.png media/serversideinstallation-virtual-vm-install-18.png media/serversideinstallation-virtual-vm-install-19.png media/serversideinstallation-virtual-vm-install-2.png media/serversideinstallation-virtual-vm-install-20.png media/serversideinstallation-virtual-vm-install-21.png media/serversideinstallation-virtual-vm-install-3.png media/serversideinstallation-virtual-vm-install-4.png media/serversideinstallation-virtual-vm-install-5.png media/serversideinstallation-virtual-vm-install-6.png media/serversideinstallation-virtual-vm-install-7.png media/serversideinstallation-virtual-vm-install-8.png media/serversideinstallation-virtual-vm-install-9.png media/staffclient-1.png media/staffclient-2.png media/staffclient-3.png media/staffclient-4.png media/staffclient-5.png media/staffclient-6.png media/staffclient-6a.png media/staffclient-6b.png media/staffclient-6c.png media/staffclient-6d.png media/staffclient-7.png media/staffclient-7a.png media/staffclient-8.png media/staffclient-9.png media/staffclientinstallation-proxy-putty-1.png media/staffclientinstallation-proxy-socks-1.png media/staffclientinstallation-proxy-socks-2.png media/staffclientinstallation-staffclient-1.png media/staffclientinstallation-staffclient-2.png media/staffclientinstallation-staffclient-3.png media/staffclientinstallation-staffclient-4.png media/staffclientinstallation-staffclient-workstationnames-1.png media/staffclientinstallation-staffclient-workstationnames-2.png media/staffclientinstallation-staffclient-workstationnames-3.png media/staffclientinstallation-tabbed-1.png media/survey-1.png media/survey-10.png media/survey-2.png media/survey-3.png media/survey-4.png media/survey-5.png media/survey-6.png media/survey-7.png media/survey-8.png media/survey-9.png media/transit-1.png media/transit-10.png media/transit-2.png media/transit-3.png media/transit-4a.png media/transit-5.png media/transit-6.png media/transit-7.png media/transit-8.png media/transit-9.png opac/advancedsearch.xml opac/basicsearch.xml opac/myaccount.xml opac/search_URL.xml opac/searchmethodology.xml opac/searchresults.xml opac/searchtips.xml opac/simpleselfcheck.xml reports/report-add-data-source.xml reports/report.diffs root.xml stafftasks/booking.xml stafftasks/cataloging.xml stafftasks/circulation.xml stafftasks/intro.xml stafftasks/staffclient.xml --- 462c283d14e1bb0fab254ce67889b0917dee03af diff --cc admin/sip.xml index 5e8dd35,b22021b..0000000 deleted file mode 100644,100644 --- a/admin/sip.xml +++ /dev/null @@@ -1,607 -1,613 +1,0 @@@ -- -- -- -- SIP Server -- -- SIP, standing for Standard Interchange Protocol, was developed by the -- 3Mcorporation to be a common protocol for data transfer between ILS' -- (referred to in SIP as an ACS, or Automated Circulation System) -- Automated Circulation System and a -- third party device. Originally, the protocol was developed for -- use with 3M SelfCheck (often abbreviated SC, not to be confused with Staff Client) systems, but has since expanded to other companies and devices. It is now common to find -- SIP in use in several other vendors' SelfCheck systemsSelfCheck, as well as other non-SelfCheck devices. -- Some examples include: -- -- Patron Authentication (computer access, subscription databases) -- Automated Material Handling (AMH) Automated Material Handling (AMH)- The automated sorting of items, often to bins or -- book carts, based on shelving location or other programmable criteria -- -- --
-- -- Installing the <systemitem class="protocol">SIP</systemitem> Server -- -- This is a rough intro to installing the SIP server for Evergreen. -- -- Getting the code - Current SIP server code lives at in the Evergreen git repository: - Current SIP code lives at github: -- cd /opt - git clone git://git.evergreen-ils.org/SIPServer.git SIPServer - git clone git://github.com/atz/SIPServer.git SIPServer - Or use the old style: - $ cd /opt - $ sudo cvs -d:pserver:anonymous@openncip.cvs.sourceforge.net:/cvsroot/openncip login - When prompted for the CVS password, just hit Enter (sudo password may be req'd) - $ sudo cvs -z3 -d:pserver:anonymous@openncip.cvs.sourceforge.net:/cvsroot/openncip co -P SIPServer - -- -- -- Configuring the Server -- -- -- Type the following commands from the command prompt:configuration filesoils_sip.xml -- $ sudo su opensrf -- $ cd /openils/conf -- $ cp oils_sip.xml.example oils_sip.xml -- -- -- Edit oils_sip.xmlconfiguration filesoils_sip.xml. -- Change the commented out <server-params> section to this: -- --<server-params --min_servers='1' --min_spare_servers='0' --max_servers='25' --/> -- -- -- -- max_servers will directly correspond to the number of allowed SIP clients. Set the number accordingly, but -- bear in mind that too many connections can -- exhaust memory. On a 4G RAM/4 CPU server (that is also running evergreen), it is not recommended to exceed 100 -- SIP client connections. -- -- -- -- -- Adding <systemitem class="protocol">SIP</systemitem> Users -- -- -- Type the following commands from the command prompt:configuration filesoils_sip.xml -- $ sudo su opensrf -- $ cd /openils/conf -- $ cp oils_sip.xml.example oils_sip.xml -- -- -- in the <accounts> section, add SIP client login information. Make sure that all -- <logins> use the same institution attribute, and make -- sure the institution is listed in <institutions>. All attributes in the <login> section will be -- used by the SIP client. -- -- -- -- In Evergreen, create a new profile group called SIP. -- This group should be a sub-group of Users -- (not Staff or Patrons). -- Set Editing Permission as group_application.user.sip_client and give the group the following permissions: -- -- COPY_CHECKIN -- COPY_CHECKOUT -- RENEW_CIRC -- VIEW_CIRCULATIONS -- VIEW_COPY_CHECKOUT_HISTORY -- VIEW_PERMIT_CHECKOUT -- VIEW_USER -- VIEW_USER_FINES_SUMMARY -- VIEW_USER_TRANSACTIONS -- -- OR use SQL like: -- -- - INSERT INTO permission.grp_tree (name,parent,description,application_perm) - VALUES ('SIP', 1, 'SIP2 Client Systems', 'group_application.user.sip_client'); -INSERT INTO permission.grp_tree (id,name,parent,description,application_perm) -VALUES (8, 'SIP', 1, 'SIP2 Client Systems', 'group_application.user.sip_client'); -- --INSERT INTO -- permission.grp_perm_map (grp, perm, depth, grantable) --SELECT -- g.id, p.id, 0, FALSE --FROM -- permission.grp_tree g, -- permission.perm_list p --WHERE -- g.name = 'SIP' AND -- p.code IN ( -- 'COPY_CHECKIN', -- 'COPY_CHECKOUT', -- 'RENEW_CIRC', -- 'VIEW_CIRCULATIONS', -- 'VIEW_COPY_CHECKOUT_HISTORY', -- 'VIEW_PERMIT_CHECKOUT', -- 'VIEW_USER', -- 'VIEW_USER_FINES_SUMMARY', -- 'VIEW_USER_TRANSACTIONS' --); -- -- -- -- Verify: -- -- --SELECT * - FROM permission.grp_perm_map pgpm - INNER JOIN permission.perm_list ppl ON pgpm.perm = ppl.id - INNER JOIN permission.grp_tree pgt ON pgt.id = pgpm.grp - WHERE pgt.name = 'SIP'; -FROM permission.grp_perm_map JOIN permission.perm_list ON -permission.grp_perm_map.perm=permission.perm_list.id -WHERE grp=8; -- -- -- - Keep in mind that the id (8) may not necessarily be available on your system. -- -- -- For each account created in the <login> section of oils_sip.xml, create a user (via the staff client user editor) -- that has the same username -- and password and put that user into the SIP group. -- The expiration date will affect the SIP users' connection so you might want to make a note of -- this somewhere. -- -- -- -- -- Running the server -- To start the SIP server type the following commands from the command prompt: -- $ sudo su opensrf -- $ oils_ctl.sh -d /openils/var/run -s /openils/conf/oils_sip.xml -a [start|stop|restart]_sip -- -- -- Logging-SIPSIP -- -- <systemitem class="service">Syslog</systemitem> -- It is useful to log SIP requests to a separate file especially during initial setup by modifying your -- syslog config file.syslog -- -- -- Edit syslog.conf. -- $ sudo vi /etc/syslog.conf # maybe /etc/rsyslog.conf -- -- -- Add this: -- local6.* -/var/log/SIP_evergreen.log -- -- -- Syslog expects the logfile to exist so create the file. -- $ sudo touch /var/log/SIP_evergreen.log -- -- -- Restart sysklogd. -- $ sudo /etc/init.d/sysklogd restart -- -- -- -- -- <systemitem class="service">Syslog-NG</systemitem> -- -- -- -- Edit logging config.syslog-NG -- sudo vi /etc/syslog-ng/syslog-ng.conf -- -- -- Add: -- --# SIP2 for Evergreen --filter f_eg_sip { level(warn, err, crit) and facility(local6); }; --destination eg_sip { file("/var/log/SIP_evergreen.log"); }; --log { source(s_all); filter(f_eg_sip); destination(eg_sip); }; -- -- -- -- Syslog-ng expects the logfile to exist so create the file. -- $ sudo touch /var/log/SIP_evergreen.log -- -- -- Restart syslog-ng -- $ sudo /etc/init.d/syslog-ng restart -- -- -- -- -- -- Testing Your <systemitem class="protocol">SIP</systemitem> ConnectionSIP -- -- - In the root directory of the SIPServer code: - In the top level CVS checkout of the SIPServer code. -- $ cd SIPServer/t -- -- -- Edit SIPtest.pm, change the $instid, $server, $username, and -- $password variables. This will be enough to test connectivity. -- To run all tests, you'll need to change all the variables in the Configuration section. -- $ PERL5LIB=../ perl 00sc_status.t -- This should produce something like: -- --1..4 --ok 1 - Invalid username --ok 2 - Invalid username --ok 3 - login --ok 4 - SC status -- -- -- -- Don't be dismayed at Invalid Username. That's just one of the many tests that are run. -- -- -- -- -- More Testing -- -- -- Once you have opened up either the SIP OR SIP2 ports to be -- accessible from outside you can do some testing via telnet. You can try this with localhost -- if you so wish, but we want to prove that SIP2 works from non-localhost. -- Replace $instid, $server, $barcode, $username, -- and $password variables below as necessary. -- We are using 6001 here which is associated with SIP2 as per our configuration.telnet -- --$ telnet $server 6001 --Connected to $server. --Escape character is '^]'. --9300CN**$username**|CO**$password**|CP**$instid** -- -- You should get back. -- 941 -- -- -- Now just copy in the following line (with variables replaced) you don't need to hit enter, just paste! -- 2300120080623 172148AO**$instid**|AA**$barcode**|AC$password|AD**$password** -- You will get back the patron information for $barcode (something similar to the what's below). --24 Y 00120100113 170738AEFirstName MiddleName LastName|AA**$barcode**|BLY|CQY --|BHUSD|BV0.00|AFOK|AO**$instid**| -- -- The response declares it is a valid patron BLY with a valid password CQY and shows the user's -- $name. -- -- -- --
--
-- -- <systemitem class="protocol">SIP</systemitem> CommunicationSIP -- -- SIP generally communicates over a TCP connection (either raw sockets or over -- telnet), but can also communicate via serial connections and other methods. In Evergreen, -- the most common deployment is a RAW socket connection on port 6001. -- SIP communication consists of strings of messages, each message request and response begin with a 2-digit -- command - Requests usually being an odd -- number and responses usually increased by 1 to be an even number. The combination numbers for the request command and response is often referred to as a -- Message Pair (for example, a 23 command is a request for patron status, a 24 response is a patron status, and the message pair 23/24 is -- patron status message pair). The table in the next section shows the message pairs and a description of them. -- For clarification, the Request is from the device (selfcheck or otherwise) to the ILS/ACS. The response is… the response -- to the request ;). -- Within each request and response, a number of fields (either a fixed width or separated with a | [pipe symbol] and preceeded with a -- 2-character field identifier) -- are used. The fields vary between message pairs. -- -- -- -- -- -- -- -- -- Pair -- Name -- Supported? -- Details -- -- -- -- -- 01 -- Block Patron -- Yes -- 01_Block_Patron - ACS responds with 24 Patron Status Response -- -- -- 09/10 -- Checkin -- Yes (with extensions) -- 09/10_Checkin -- -- -- 11/12 -- Checkout -- Yes (no renewals) -- 11/12_Checkout -- -- -- 15/16 -- Hold -- No -- 15/16_Hold -- -- -- 17/18 -- Item Information -- Yes (no extensions) -- 17/18_Item_Information -- -- -- 19/20 -- Item Status Update -- No -- 19/20_Item_Status_Update - Returns Patron Enable response, but doesn't make any changes in EG -- -- -- 23/24 -- Patron Status -- Yes -- 23/24_Patron_Status - 63/64 Patron Information preferred -- -- -- 25/26 -- Patron Enable -- No -- 25/26_Patron_Enable - Used during system testing and validation -- -- -- 29/30 -- Renew -- NO (maybe?) -- 29/30_Renew -- -- -- 35/36 -- End Session -- Yes -- 35/36_End_Session -- -- -- 37/38 -- Fee Paid -- No -- 37/38_Fee_Paid -- -- -- 63/64 -- Patron Information -- Yes (no extensions) -- 63/64_Patron_Information -- -- -- 65/66 -- Renew All -- No -- 65/66_Renew_All -- -- -- 93/94 -- Login -- Yes -- 93/94_Login - Must be first command to Evergreen ACS (via socket) or SIP will terminate -- -- -- 97/96 -- Resend last message -- Yes -- 97/96_Resend -- -- -- 99/98 -- SC/ACS Status -- Yes -- 99/98_SC_and_ACS_Status -- -- -- -- -- -- 01 Block Patron -- A selfcheck will issue a Block Patron command if a patron leaves their card in a selfcheck machine or if the selfcheck detects tampering (such as attempts -- to disable multiple items during a single item checkout, multiple failed pin entries, etc).SelfCheck -- In Evergreen, this command does the following: -- -- User alert message: CARD BLOCKED BY SELF-CHECK MACHINE (this is independent of the AL -- Blocked Card Message field). -- Card is marked inactive. -- -- The request looks like: -- 01<card retained><date>[fields AO, AL, AA, AC] -- Card Retained: A single character field of Y or N - tells the ACS whether the SC has -- retained the card (ex: left in the machine) or not. -- Date: An 18 character field for the date/time when the block occurred. -- Format: YYYYMMDDZZZZHHMMSS (ZZZZ being zone - 4 blanks when local time, Z (3 blanks and a Z) represents UTC(GMT/Zulu) -- Fields: See Fields for more details. -- The response is a 24 Patron Status Response with the following: -- -- Charge privileges denied -- Renewal privileges denied -- Recall privileges denied (hard-coded in every 24 or 64 response) -- hold privileges denied -- Screen Message 1 (AF): blocked -- Patron -- -- -- -- -- 09/10 Checkin -- The request looks like: -- 09<No block (Offline)><xact date><return date>[Fields AP,AO,AB,AC,CH,BI] -- No Block (Offline): A single character field of Y or N - Offline transactions are not currently -- supported so send N. -- xact date: an 18 character field for the date/time when the checkin occurred. Format: YYYYMMDDZZZZHHMMSS (ZZZZ being zone - -- 4 blanks when local time, Z (3 blanks and a Z) represents UTC(GMT/Zulu) -- Fields: See Fields for more details. -- The response is a 10 Checkin Response with the following: -- 10<resensitize><magnetic media><alert><xact date>[Fields AO,AB,AQ,AJ,CL,AA,CK,CH,CR,CS,CT,CV,CY,DA,AF,AG] -- Example (with a remote hold): -- 09N20100507 16593720100507 165937APCheckin Bin 5|AOBR1|AB1565921879|ACsip_01| -- --101YNY20100623 165731AOBR1|AB1565921879|AQBR1|AJPerl 5 desktop reference|CK001|CSQA76.73.P33V76 1996 --|CTBR3|CY373827|DANicholas Richard Woodard|CV02| -- -- Here you can see a hold alert for patron CY 373827, named DA Nicholas Richard Woodard, -- to be picked up at CT BR3. Since the transaction is happening -- at AO BR1, the alert type CV is 02 for hold at remote library. -- The possible values for CV are: -- -- 00: unknown -- 01: local hold -- 02: remote hold -- 03: ILL transfer (not used by EG) -- 04: transfer -- 99: other -- -- - The logic for Evergreen to determine whether the content is magnetic_media comes from either legacy circ scripts or search_config_circ_modifier. - the logic for Evergreen to determine the content is magnetic_media comes from either legacy circ scripts or search_config_circ_modifier. -- The default is non-magnetic.magnetic media -- The same is true for media_type (default 001). Evergreen does not populate the collection_code because it does not really have any, but it will provide the -- call_number where available. -- Unlike the item_id (barcode), the title_id is actually a title string, unless the configuration forces the return of -- the bib ID. -- Don't be confused by the different branches that can show up in the same response line. -- -- AO is where the transaction took place, -- AQ is the permanent location, and -- CT is the destination location (i.e., pickup lib for a hold or target lib for a transfer). -- -- -- -- -- 11/12 Checkout -- -- -- 15/16 Hold -- Not yet supported. -- -- -- 17/18 Item Information -- The request looks like: -- 17<xact_date>[fields: AO,AB,AC] -- The request is very terse. AC is optional. -- The following response structure is for SIP2. (Version 1 of the protocol had only 6 total fields.) -- --18<circulation_status><security_marker><fee_type><xact_date> --[fields: CF,AH,CJ,CM,AB,AJ,BG,BH,BV,CK,AQ,AP,CH,AF,AG,+CT,+CS] -- -- Example: -- 1720060110 215612AOBR1|ABno_such_barcode| -- 1801010120100609 162510ABno_such_barcode|AJ| -- 1720060110 215612AOBR1|AB1565921879| --1810020120100623 171415AB1565921879|AJPerl 5 desktop reference|CK001|AQBR1|APBR1|BGBR1 --|CTBR3|CSQA76.73.P33V76 1996| -- -- The first case is with a bogus barcode. The latter shows an item with a circulation_status of 10 for in transit between libraries. -- The known values of circulation_status are enumerated in the spec. -- EXTENSIONS: The CT field for destination location and CS call number are used by -- Automated Material Handling systems.Automated Material Handling (AMH) -- -- -- 19/20 Item Status Update -- -- -- 23/24 Patron Status -- Example: -- 2300120060101 084235AOUWOLS|AAbad_barcode|ACsip_01|ADbad_password| -- 24YYYY 00120100507 013934AE|AAbad_barcode|BLN|AOUWOLS| -- 2300120060101 084235AOCONS|AA999999|ACsip_01|ADbad_password| -- 24 Y 00120100507 022318AEDoug Fiander|AA999999|BLY|CQN|BHUSD|BV0.00|AFOK|AOCONS| -- 2300120060101 084235AOCONS|AA999999|ACsip_01|ADuserpassword|LY|CQN|BHUSD|BV0.00|AFOK|AOCONS| -- 24 Y 00120100507 022803AEDoug Fiander|AA999999|BLY|CQY|BHUSD|BV0.00|AFOK|AOCONS| -- -- The BL field (SIP2, optional) is valid patron, so the -- N value means -- bad_barcode doesn't match a patron, the Y value means 999999 does. -- The CQ field (SIP2, optional) is valid password, so the N -- value means bad_password doesn't match 999999's password, the Y means userpassword -- does. -- -- So if you were building the most basic SIP2 authentication client, you would check for -- |CQY| in the response to know the user's barcode and password -- are correct (|CQY| implies |BLY|, since you cannot check the password unless the barcode exists). However, in practice, -- depending on the application, there are other factors to consider in authentication, like whether the user is blocked from checkout, owes excessive fines, reported their -- card lost, etc. These limitations are reflected in the 14-character patron status string immediately following the 24 code. -- See the field definitions in your copy of the spec. -- -- -- 25/26 Patron Enable -- Not yet supported. -- -- -- 29/30 Renew -- Evergreen ACS status message indicates renew is supported. -- -- -- 35/36 End Session -- 3520100505 115901AOBR1|AA999999| -- 36Y20100507 161213AOCONS|AA999999|AFThank you!| -- The Y/N code immediately after the 36 indicates success/failure. Failure is not particularly meaningful or -- important in this context, and for evergreen it is hardcoded Y. -- -- -- 37/38 Fee Paid -- Not implemented. -- -- -- 63/64 Patron Information -- Attempting to retrieve patron info with a bad barcode: -- 6300020060329 201700 AOBR1|AAbad_barcode| -- 64YYYY 00020100623 141130000000000000000000000000AE|AAbad_barcode|BLN|AOBR1| -- Attempting to retrieve patron info with a good barcode (but bad patron password): -- 6300020060329 201700 AOBR1|AA999999|ADbadpwd| -- --64 Y 00020100623 141130000000000000000000000000AA999999|AEDavid J. Fiander|BHUSD|BV0.00 --|BD2 Meadowvale Dr. St Thomas, ON Canada -- --90210|BEdjfiander@somemail.com|BF(519) 555 1234|AQBR1|BLY|CQN|PB19640925|PCPatrons --|PIUnfiltered|AFOK|AOBR1| -- -- See 23/24 Patron Status for info on BL and CQ fields. -- -- -- 65/66 Renew All -- Not yet supported. -- -- -- 93/94 Login -- Example: -- 9300CNsip_01|CObad_value|CPBR1| -- [Connection closed by foreign host.] -- ... -- 9300CNsip_01|COsip_01|CPBR1| -- 941 -- 941 means successful terminal login. 940 or getting dropped means failure. -- -- -- 97/96 Resend -- -- -- 99/98 SC and ACS Status -- 99<status code><max print width><protocol version> -- All 3 fields are required: -- -- status code - 1 character: -- -- 0: SC is OK -- 1: SC is out of paper -- 2: SC shutting down -- -- max print width - 3 characters - the integer number of characters the client can print -- protocol version - 4 characters - x.xx -- -- --98<on-line status><checkin ok><checkout ok><ACS renewal policy> --<status update ok><offline ok><timeout period> -- -- --<retries allowed><date/time sync><protocol version><institution id> --<library name><supported messages><terminal -- -- location><screen message><print line> -- Example: -- 9910302.00 -- 98YYYYNN60000320100510 1717202.00AOCONS|BXYYYYYYYYYNYNNNYN| -- The Supported Messages field BX appears only in SIP2, and specifies whether 16 different -- SIP commands are supported by the ACS or not. -- -- -- Fields -- All fixed-length fields in a communication will appear before the first variable-length field. This allows for simple parsing. Variable-length fields are by -- definition delimited, though there will not necessarily be an initial delimiter between the last fixed-length field and the first variable-length one. It would be -- unnecessary, since you should know the exact position where that field begins already. -- --
--
-- diff --cc appendices/about_this_documentation.xml index a806adc,090ac7b..0000000 deleted file mode 100644,100644 --- a/appendices/about_this_documentation.xml +++ /dev/null @@@ -1,162 -1,213 +1,0 @@@ -- -- -- -- About this Documentation -- --
-- About the Documentation Interest Group (DIG) -- The Evergreen DIG was established in May 2009 at the first Evergreen International Conference, where members of the Evergreen community committed to developing single-source, -- standards-based documentation for Evergreen. Since then, the DIG has been actively working toward that goal. -- -- Evergreen DIG Participants -- -- -- -- -- -- Name -- Organization -- -- -- -- - Hilary Caws-Elwitt - Susquehanna County Library - Jeremy Buhler - SITKA - - - Paula Burton - King County Library System - - - Matt Carlson - King County Library System - - - Sarah Childs - Hussey-Mayfield Memorial Public Library - - - - Anton Chuppin - Nova Scotia Provincial Library - - - Marlene Coleman - Beaufort Country Library -- -- -- Karen Collier -- Kent County Public Library -- -- -- Shannon Dineen -- SITKA -- -- -- George Duimovich -- NRCan Library -- -- - Sally Fortin - Equinox Software - Jennifer Durham - Statesboro Regional Library System - - - Jennifer Finney - Florence County Library -- -- - Wolf Halton - Lysaris - Lynn Floyd - Anderson County Library -- - - - Sally Fortin - Equinox Software - -- -- Tina Ji -- SITKA -- -- -- Catherine Lemmer -- Indiana State Library -- -- - June Rayner - eiNetwork - Roma Matott - Pioneer Library System - - - Andrea Neiman - Kent County Public Library - - - Kevin Pischke - William Jessup University -- -- -- Tara Robertson -- N/A -- -- -- Rod Schiffman -- Alpha-G Consulting -- - -- -- Steve Sheppard -- Open -- -- -- Ben Shum -- Bibliomation - - - Roni Shwaish - eiNetwork -- -- -- Robert Soulliere -- Mohawk College - - - Tim Spindler - C/W MARS -- -- -- Lindsay Stratton -- Pioneer Library System - - - Yamil Suarez - Berklee College of Music -- -- -- Jenny Turner -- PALS -- -- -- Repke de Vries -- International Institute for Social History - - - D. Ceabron Williams - Flint River Regional Library System -- -- -- Tigran Zargaryan -- Fundamental Scientific Library of the National Academy of Sciences -- -- -- --
- - Past DIG Participants - - - - - - Name - Organization - - - - - - Paul Weiss - Consultant/Sage Library System - - - Karen Schneider - Equinox Software - - - -
--
--
- Attributions - Copyright © 2009-2011 Evergreen DIG - Attributions - Copyright © 2009-2011 Evergreen DIG -- Copyright © 2007-2011 Equinox -- Copyright © 2007-2011 Dan Scott -- Copyright © 2009-2011 BC Libraries Cooperative (SITKA) -- Copyright © 2008-2011 King County Library System - Copyright © 2009-2011 Pioneer Library System - Copyright © 2009-2011 PALS - Copyright © 2009-2011 Georgia Public Library Service - Copyright © 2008-2011 Project Conifer - Copyright © 2009-2011 Bibliomation - Copyright © 2008-2011 Evergreen Indiana - Copyright © 2009-2010 Pioneer Library System - Copyright © 2009-2010 PALS - Copyright © 2009-2010 Georgia Public Library Service - Copyright © 2008-2010 Project Conifer - Copyright © 2009-2010 Bibliomation - Copyright © 2008-2010 Evergreen Indiana --
--
-- How to ParticipateDocumentation Interest Group (DIG) -- Contributing to documentation is an excellent way to support Evergreen, even if you are new to documentation. In fact, beginners often have a distinct advantage over the -- experts, more easily spotting the places where documentation is lacking or where it is unclear. -- We welcome your contribution with planning, writing, editing, testing, translating to DocBook, and other tasks. Whatever your background or experience we are keen to -- have your help! -- What you can do: -- -- Join the Evergreen documentation listserv: list.georgialibraries.org/mailman/listinfo/open-ils-documentation . This is the primary way we communicate with each other. -- Please send an email introducing yourself to the list.mailing lists -- Add yourself to the participant list -- if you have an Evergreen DokuWiki account, or send a request to docs@evergreen-ils.org. -- Check out the documentation outline to see which areas need work, -- and let the DIG list know in which areas you would like to work. -- Review the documentation and report any error or make suggestion using Launchpad. -- -- -- Volunteer Roles -- We are now looking for people to help produce the documentation. If you interested in participating, email the DIG facilitators at docs@evergreen-ils.org -- or post on the documentation mailing list. We're looking for volunteers to work on the following: -- -- Writing – Produce the documentation (from scratch, and/or revised from existing materials). We're open to receiving content in any formats, such as -- Word or Open Office, but of course, would be most delighted with DocBook xml format. -- Testing – Compare the documents with the functions they describe and ensuring that the procedures accomplish the desired results. Even if you are not -- officially in the DIG, we would appreciate any suggestions you may have for Evergreen documentation. -- XML conversion – Convert existing documentation to DocBook format. -- Editorial review – Ensuring the documentation is clear and follows Evergreen DIG style -- guide conventions. -- Style and Design – Edit the DocBook style sheets or post style tips and suggestions on the DIG list.DocBook -- -- --
--
-- -- diff --cc appendices/bookindex.xml index e69de29,82d9a74..0000000 deleted file mode 100644,100755 --- a/appendices/bookindex.xml +++ /dev/null diff --cc appendices/glossary.xml index 18887fd,661f12d..0000000 deleted file mode 100644,100644 --- a/appendices/glossary.xml +++ /dev/null @@@ -1,827 -1,796 +1,0 @@@ -- - - -- Glossary -- -- In this section we expand acronyms, define terms, and generally try -- to explain concepts used by Evergreen software. -- -- -- A -- -- Apache -- -- Apache -- -- -- Open-source web server software used to serve both static -- content and dynamic web pages in a secure and reliable way. More -- information is available at -- http://apache.org. -- -- -- -- -- B -- -- Bookbags -- -- bookbags -- -- -- Bookbags are lists of items that can be used for any number of -- purposes. For example, to keep track of what books you have read, -- books you would like to read, to maintain a class reading list, to -- maintain a reading list for a book club, to keep a list of books you -- would like for your birthday. There are an unlimited number of -- uses. -- -- -- -- -- C -- -- CentOS -- -- Linux -- CentOS -- -- -- A popular open-source operating system based on Red Hat -- Enterprises Linux -- (also known as "RHEL") and often used for in web servers. More -- information is available at -- http://www.centos.org. -- -- -- -- Closure Compiler -- -- A suite of open-source tools used to build web applications with -- Javascript; originally developed by Google. -- It is used to create special builds of the Evergreen Staff Client. -- More information is available at -- -- http://code.google.com/closure/compiler/. -- -- -- -- CPAN -- -- Perl -- CPAN -- -- -- An open-source archive of software modules written in -- Perl. More information is available at -- http://www.cpan.org. -- -- -- -- -- -- D -- -- Debian -- -- Linux -- Debian -- -- - One of the most popular open-source operating system based on the - One of the most popular open-source operating system using the -- Linux kernel that provides -- over 25000 useful precompiled software packages. Also known as -- Debian GNU/Linux. More -- information is available at -- http://www.debian.org. - - -- -- -- -- Domain name -- -- domain name -- -- -- A unique set of case-insensitive, alphanumeric strings -- separated by periods that are used to name organizations, web sites -- and addresses on the Internet (e.g.: -- www.esilibrary.com). Domain names can be reserved via -- third-party registration services, and can be associated with a -- unique IP address or suite of IP addresses. -- -- -- -- -- -- E -- -- ejabberd -- -- ejabberd -- -- -- An open-source Jabber/XMPP instant messaging server that is -- used for client-server message passing within Evergreen. It runs -- under popular operating systems (e.g., -- Mac OSX, -- GNU/Linux, and -- Microsoft Windows). One -- popular use is to provide XMPP messaging -- services for a Jabber domain across an -- extendable cluster of cheap, easily-replaced machine nodes. More -- information is available at -- http://www.ejabberd.im. -- -- -- -- -- -- -- F - - Fedora - - Linux - Fedora - - - A popular open-source operating system based on the - Linux kernel. - More information is available at - http://fedoraproject.org/. - - - - - -- -- -- G -- -- Gentoo -- -- Linux -- Gentoo -- -- -- A popular open-source operating system built on the -- Linux kernel. More -- information is available at -- http://www.gentoo.org. -- -- -- -- -- H -- -- -- -- I -- -- IP Address -- -- IP Address -- -- -- (Internet Protocol address) A numerical label consisting of -- four numbers separated by periods (e.g., "192.168.1.15") assigned to -- individual members of networked computing systems. It uniquely -- identifies each system on the network and allows controlled -- communication between such systems. The numerical label scheme must -- adhere to a strictly defined naming convention that is currently -- defined and overseen by the Internet Corporation for Assigned Names -- and Numbers ("ICANN"). -- -- -- -- Item/copy Buckets -- -- copy buckets -- item buckets -- -- -- item buckets -- copy buckets -- -- -- Virtual containers to use in batch processing -- of item or copy records. They can be used to perform various -- cataloging/holdings maintenance tasks in batch. -- -- -- -- -- J -- -- Jabber -- -- jabber -- XMPP -- -- -- The communications protocol used for client-server message -- passing within Evergreen. Now known as XMPP (eXtensible Messaging and -- Presence Protocol), it was originally named "Jabber". -- -- -- -- -- -- -- K -- -- -- -- L -- -- -- -- M -- -- MARC -- -- MARC -- -- -- The MARC formats are standards for the representation and -- communication of bibliographic and related information in -- machine-readable form. -- -- -- -- MARCXML -- -- MARCXML -- -- -- Framework for working with MARC data in a XML environment. -- -- -- -- McCoy -- -- An open-source application that allows add-on authors to -- provide secure updates to their users. It is used to create special -- builds of the Evergreen Staff Client. More information is available -- at -- http://developer.mozilla.org/en/McCoy. -- -- -- -- memcached -- -- memcached -- -- -- A general-purpose distributed memory caching system, usually -- with a client-server architecture spread over multiple computing -- systems. It reduces the number of times a data source (e.g., a -- database) must be directly accessed by temporarily caching data in -- memory, therefore dramatically speeding up database-driven web -- applications. -- -- -- -- -- N -- -- Network address -- -- network address -- ip address -- -- -- Also known as an IP address (Internet Protocol address). -- -- -- -- -- nsis -- -- An open-source software tool used to create Windows -- installers. It is used to create special builds of the Evergreen -- Staff Client. More information is available at -- -- http://nsis.sourceforge.net. -- -- -- -- -- O -- -- OPAC -- -- OPAC -- -- -- The "Online Public Access Catalog"; an online database of a -- library's holdings; used to find resources in their collections; -- possibly searchable by keyword, title, author, subject or call -- number. -- -- -- -- OpenSRF -- -- OpenSRF -- -- -- The "Open Scalable Request Framework" (pronounced 'open surf') -- is a stateful, decentralized service architecture that allows -- developers to create applications for Evergreen with a minimum of -- knowledge of its structure. -- -- -- -- -- P -- -- Perl -- -- Perl -- -- - The high-level scripting language in which most of the business logic of - Evergreen is written. - The high-level scripting language in which most of the business logic of Evergreen is written. -- -- -- -- -- PKI -- -- PKI -- -- -- Public Key Infrastructure (PKI) describes the schemes needed -- to generate and maintain digital SSL Certificates. -- -- -- -- -- PostgreSQL -- -- databases -- PostgreSQL -- -- -- A popular open-source object-relational database management -- system that underpins Evergreen software. -- -- -- -- PuTTY -- -- SSH -- Putty -- -- -- A popular open-source telnet/ssh client for the Windows and -- Unix platforms. As used in Evergreen, a handy utility used to create -- an SSH Tunnel for connecting Staff Clients to Evergreen servers over -- insecure networks. More information is available at -- -- http://www.chiark.greenend.org.uk/~sgtatham/putty/. -- -- -- -- -- -- Q -- -- -- -- R -- -- Resource Hacker -- -- An open-source utility used to view, modify, rename, add, -- delete and extract resources in 32bit Windows executables. It is -- used to create special builds of the Evergreen Staff Client. More -- information is available at -- -- Resource Hacker -- -- -- -- RHEL -- -- Linux -- RHEL -- -- -- Also known as "Red Hat Enterprises -- Linux". An official -- Linux distribution that is -- targeted at the commercial market. It is the basis of other popular -- Linux distributions, e.g., -- CentOS. More information is -- available at -- http://www.redhat.com. -- -- -- -- -- S -- -- SIP -- -- SIP -- -- -- SIP (Standard Interchange Protocol) is a communications -- protocol used within Evergreen for transferring data to and from -- other third party devices, such as RFID and barcode scanners that -- handle patron and library material information. Version 2.0 (also -- known as "SIP2") is the current standard. It was originally -- developed by the 3M Corporation. -- -- -- -- -- srfsh -- -- srfsh -- -- A command language interpreter (shell) that executes commands -- read from the standard input. It is used to test the Open Service -- Request Framework (OpenSRF). -- -- -- -- SRU -- -- SRU -- -- -- SRU (Search & Retrieve URL Service) is a search protocol -- used in web search and retrieval. It expresses queries in Contextual -- Query Language (CQL) and transmits them as a URL, returning XML data -- as if it were a web page. -- -- -- -- -- SRW -- -- SRW -- -- -- SRW (Search & Retrieve Web Service), also known as "SRU -- via HTTP SOAP", is a search protocol used in web search and -- retrieval. It uses a SOAP interface and expresses both the query and -- result as XML data streams. -- -- -- -- -- SSH -- -- SSH -- -- -- An encrypted network protocol using public-key cryptography -- that allows secure communications between systems on an insecure -- network. Typically used to access shell accounts but also supports -- tunneling, forwarding TCP ports and X11 connections, and -- transferring files. -- -- -- -- SSH proxy -- -- SSH -- proxy -- -- -- As used in Evergreen, a method of allowing one or more Staff -- Clients to communicate with one or more Evergreen servers over an -- insecure network by sending data through a secure SSH tunnel. It -- also buffers and caches all data travelling to and from Staff -- Clients to speed up access to resources on Evergreen servers. -- -- -- -- -- -- -- SSH tunnel -- -- SSH -- tunneling -- -- -- An encrypted data channel existing over an SSH network -- connection. Used to securely transfer unencrypted data streams over -- insecure networks. -- -- -- -- -- -- SSL Certificate -- -- SSL -- -- -- As used in Evergreen, it is a method of ensuring that Staff -- Clients are able to connect to legitimate Evergreen servers. -- In general, it is a special electronic document used to -- guarantee authenticity of a digital message. Also known as a "public -- key", or "identity" or "digital" certificate. It combines an -- identity (of a person or an organization) and a unique public key to -- form a so-called digital signature, and is used to verify that the -- public key does, in fact, belong with that particular -- identity. - - - - - SuperCat - - SuperCat - - - A popular commercial utility used to catalog, search and manage the - contents of media such as CDs and DVDs. -- -- -- -- -- -- T -- -- tunneling -- -- tunneling -- SSH tunneling -- -- -- As used in Evergreen, it is a method of allowing Staff Clients -- to securely connect to legitimate Evergreen servers. -- In general, it is a method of encapsulating data provided in -- one network protocol (the "delivery"protocol), within data in a -- different network protocol (the "tunneling" protocol). Used to -- provide a secure path and secure communications through an insecure -- or incompatible network. Can be used to bypass firewalls by -- communicating via a protocol the firewall normally blocks, but -- "wrapped" inside a protocol that the firewall does not block. -- -- -- -- -- -- U -- -- Ubuntu -- -- Linux -- Ubuntu -- -- - A popular open-source operating system based on the - A popular open-source operating system using the -- Linux kernel that was -- originally based on the -- Debian GNU/Linux -- operating system. More information is available at -- http://www.ubuntu.com. -- - -- -- -- -- -- V -- -- Virtualization -- -- virtualization -- -- -- A method of executing software in a special environment that -- is partitioned or separated from the real underlying hardware and -- software resources. In typical usage, it allows a -- host operating system to encapsulate or emulate -- a guest operating system environment in such a -- way that the emulated environment is completely unaware of the -- hosting environment. As used in Evergreen, it enables a copy of the -- Linux operating system -- running Evergreen software to execute within a -- Windows environment. -- -- -- -- -- -- -- VirtualBox -- -- virtualization software -- VirtualBox -- -- -- A popular commercial package of virtualization software that -- emulates the x86 microprocessor architecture. It can be installed on -- Linux, -- Mac OS X, -- Windows or -- Solaris "host" operating -- systems and allows other "guest" (typically including -- Linux and -- Windows) operating systems -- to be loaded and executed. -- -- -- -- -- Virtual PC -- -- virtualization software -- Virtual PC -- -- -- A popular commercial package of virtualization software that -- emulates the x86 microprocessor architecture. It is installed on a -- Windows "host" operating system and allows other "guest" (typically -- including Linux and -- Windows) operating systems -- to be loaded and executed. -- -- -- -- -- VMware -- -- virtualization software -- VMware -- -- -- A popular commercial package of virtualization software that -- emulates the x86 microprocessor architecture. It can be installed on -- Linux, -- Mac OS X, -- Windows or -- Solaris "host" operating systems -- and allows other "guest" (typically including -- Linux and -- Windows) operating systems -- to be loaded and executed. -- -- -- -- -- Volume Buckets -- -- volume buckets -- -- -- Virtual containers to use in batch processing -- of multiple volumes. They can be used to perform various -- cataloging/holdings maintenance tasks in batch. -- -- -- -- -- W -- -- Wine -- -- Linux -- Wine -- -- -- A popular open-source application that allows -- Linux and -- Unix -- systems to run Windows -- executables. More information is available at -- http://www.winehq.org/. -- -- -- -- -- X -- -- XML -- -- XML -- -- -- The eXtensible Markup Language, a subset of SGML; a set of -- rules for encoding information in a way that is both human- and -- machine-readable. It is primarily used to define documents but can -- also be used to define arbitrary data structures. It was originally -- defined by the World Wide Web Consortium (W3C). -- -- -- -- XMPP -- -- XMPP -- jabber -- -- -- The open-standard communications protocol (based on XML) used -- for client-server message passing within Evergreen. It supports the -- concept of a consistent domain of message types -- that flow between software applications, possibly on different -- operating systems and architectures. More information is available -- at http://xmpp.org. -- -- -- -- -- -- xpath -- -- xpath -- -- -- The XML Path Language, a query language based on a tree -- representation of an XML document. It is used to programmatically -- select nodes from an XML document and to do minor computation -- involving strings, numbers and Boolean values. It allows you to -- identify parts of the XML document tree, to navigate around the -- tree, and to uniquely select nodes. The currently version is "XPath -- 2.0". It was originally defined by the World Wide Web Consortium -- (W3C). -- -- -- -- XUL -- -- xUL -- -- -- The XML User Interface Language, a specialized interface -- language that allows building cross-platform applications that drive -- Mozilla-based browsers such as -- Firefox. More information is available at -- -- https://developer.mozilla.org/en/XUL. -- -- -- -- xulrunner -- -- XULRunner -- -- -- A specialized run-time application environment that provides -- support for installing, upgrading and uninstalling -- XUL applications. It operates with -- Mozilla-based applications such as the -- Firefox browser. More information is -- available at -- -- Reading git-diff-tree failed