[Refdb-devel] [ refdb-Bugs-1945901 ] risx tag multiplication & deletion
Status: Beta
Brought to you by:
mhoenicka
|
From: SourceForge.net <no...@so...> - 2008-04-24 17:44:09
|
Bugs item #1945901, was opened at 2008-04-18 16:36 Message generated for change (Comment added) made by damienjadeduff You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=385991&aid=1945901&group_id=26091 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: refdbd Group: None >Status: Closed Resolution: None Priority: 5 Private: No Submitted By: Damien Jade Duff (damienjadeduff) Assigned to: Markus Hoenicka (mhoenicka) Summary: risx tag multiplication & deletion Initial Comment: Gidday! My reunion with refdb after some absence brings with it some possible opportunities for me to help again! I hope my feedback is helpful. Here are two things that may be a bug or maybe some logic I'm not getting. Also it is from refdb-0.9.9-1.tar.gz, since, for reasons probably of my own making I'm not getting at the svn version now. (other system info at bottom of message) Note that I tried case 1 and case 2 (below) with the GEN type as well as the MISC. While case 1 applies to both GEN & MISC, case 2 applies to MISC only. This should be findable without the log file but if it ends up being a bit difficult, give me a yell and I'll do it again. Best wishes Damien Jade Duff Case 1: By repeatedly adding and then deleting a ref using risx I was able to make the libinfo tag multiply: First I add the following ref: ***(A)*** <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ris PUBLIC "-//Markus Hoenicka//DTD Ris V1.1.0//EN" "http://refdb.sourceforge.net/dtd/risx-1.1.0/risx.dtd" [ <!ENTITY lt "&#60;"> <!ENTITY gt ">"> <!ENTITY amp "&#38;"> <!ENTITY mdash "—"> <!ENTITY lsquo "‘"> <!ENTITY rsquo "’"> ]> <ris> <entry type="MISC" citekey="STEEDMANBALDRIDGE2003"> <part> <title type="full">Combinatory Categorial Grammar</title> <author> <name>Mark Steedman</name> </author> <author> <name>Jason Baldridge</name> </author> </part> <publication> <pubinfo> <pubdate type="primary"> <date> <month>00</month> <day>00</day> </date> </pubdate> </pubinfo> </publication> <libinfo user="djd"> <reprint status="INFILE"/> <availability type="useroot">Combinatorial Categorial Grammar/SteedmanBaldridge2003.pdf</availability> </libinfo> </entry> </ris> *** Then I retrieve it: ***(B)*** <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ris PUBLIC "-//Markus Hoenicka//DTD Ris V1.1.0//EN" "http://refdb.sourceforge.net/dtd/risx-1.1.0/risx.dtd" [ <!ENTITY lt "&#60;"> <!ENTITY gt ">"> <!ENTITY amp "&#38;"> <!ENTITY mdash "—"> <!ENTITY lsquo "‘"> <!ENTITY rsquo "’"> ]> <ris> <entry type="MISC" id="1" citekey="STEEDMANBALDRIDGE2003"> <publication> <title type="full">Combinatory Categorial Grammar</title> <author> <name>Mark Steedman</name> </author> <author> <name>Jason Baldridge</name> </author> <pubinfo> <pubdate type="primary"> <date><month>00</month><day>00</day></date> </pubdate> </pubinfo> </publication> <libinfo user="djd"> <reprint status="INFILE"/> <availability type="useroot">Combinatorial Categorial Grammar/SteedmanBaldridge2003.pdf</availability> </libinfo> </entry> </ris> *** Then I delete it: ***(C)*** refdbc: deleteref 1 999:1 deleted:0 skipped:0 failed *** Then I add it again in the original form (as in (A) above). And retrieve it. Retrived reference looks like this (note the multiplication of the libinfo tag): ***(D)*** <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ris PUBLIC "-//Markus Hoenicka//DTD Ris V1.1.0//EN" "http://refdb.sourceforge.net/dtd/risx-1.1.0/risx.dtd" [ <!ENTITY lt "&#60;"> <!ENTITY gt ">"> <!ENTITY amp "&#38;"> <!ENTITY mdash "—"> <!ENTITY lsquo "‘"> <!ENTITY rsquo "’"> ]> <ris> <entry type="MISC" id="1" citekey="STEEDMANBALDRIDGE2003"> <publication> <title type="full">Combinatory Categorial Grammar</title> <author> <name>Mark Steedman</name> </author> <author> <name>Jason Baldridge</name> </author> <pubinfo> <pubdate type="primary"> <date><month>00</month><day>00</day></date> </pubdate> </pubinfo> </publication> <libinfo user="djd"> <reprint status="INFILE"/> <availability type="useroot">Combinatorial Categorial Grammar/SteedmanBaldridge2003.pdf</availability> </libinfo> <libinfo user="djd"> <reprint status="INFILE"/> <availability type="useroot">Combinatorial Categorial Grammar/SteedmanBaldridge2003.pdf</availability> </libinfo> </entry> </ris> *** If I keep doing this it keeps acquiring libinfo tags (this is from a clean database, just created using refdbd -a and createdb, using standalone sqlite3, after deleting the previous database files) Case 2: I can lose the author tag on MISC references, even when adding refdb generated xml. Again, from a clean install (as per the above) If, rather than adding the citation in (A) above, I add the citation in (B) (i.e. the one generated by refdb itself) Then retrieve it using getref. In the retrieval the retrieved citation has lost the author info inside the publication tag: ***(E)*** <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ris PUBLIC "-//Markus Hoenicka//DTD Ris V1.1.0//EN" "http://refdb.sourceforge.net/dtd/risx-1.1.0/risx.dtd" [ <!ENTITY lt "&#60;"> <!ENTITY gt ">"> <!ENTITY amp "&#38;"> <!ENTITY mdash "—"> <!ENTITY lsquo "‘"> <!ENTITY rsquo "’"> ]> <ris> <entry type="MISC" id="1" citekey="STEEDMANBALDRIDGE2003"> <publication> <title type="full">Combinatory Categorial Grammar</title> <pubinfo> <pubdate type="primary"> <date><month>00</month><day>00</day></date> </pubdate> </pubinfo> </publication> <libinfo user="djd"> <reprint status="INFILE"/> <availability type="useroot">Combinatorial Categorial Grammar/SteedmanBaldridge2003.pdf</availability> </libinfo> </entry> </ris> *** However, if I retrieve it in RIS rather than RISX I get: ***(F)*** TY - MISC ID - STEEDMANBALDRIDGE2003 A2 - Mark Steedman A2 - Jason Baldridge TI - Combinatory Categorial Grammar PY - /00/00/ ER - *** i.e. the author information is still in the DB somewhere, just not being pulled out: suggestive that the problem is with the generation of the MISC risx. System info: sqlite-3.5.8 libdbi-0.8.3 libdbi-drivers-0.8.3-1 refdb-0.9.9-1 Linux acws-0175 2.6.9-67.0.7.ELsmp #1 SMP Sat Mar 15 06:54:55 EDT 2008 i686 i686 i386 GNU/Linux All installations are local non-root installations. ---------------------------------------------------------------------- >Comment By: Damien Jade Duff (damienjadeduff) Date: 2008-04-24 18:43 Message: Logged In: YES user_id=2066694 Originator: YES Thanks Marcus! There is indeed no MISC, silly me, that's a bibtex type. Thanks for the fix to that, working fine! I think if I'm to submit another bug I shall open a new job and set this one to closed.. (?) Thanks again for all of your efforts. Damien ---------------------------------------------------------------------- Comment By: Markus Hoenicka (mhoenicka) Date: 2008-04-20 00:34 Message: Logged In: YES user_id=85809 Originator: NO Thanks for the complete bug information. The first problem (libinfo duplication) turned out to be a problem of the sqlite/sqlite3 drivers. If you have a chance to run the same test on PostgreSQL or MySQL, you can verify that RefDB does not have a problem of its own here. I've checked in a fix for the drivers, but you'll have to upgrade to the CVS versions of both libdbi and libdbi-drivers to enjoy the fix. The second problem is caused by the fact that there is no MISC type in RIS. I haven't verified this, but you may have more luck with the GEN type. If that still causes problems, I'll be happy to have a closer look. BTW if you have problems accessing the svn repository, you may have an outdated working copy. The repository URL has changed at some point in the past. If this is what keeps you from updating your copy, toss it and check out a fresh copy using the instructions on the web page which has the current URLs. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=385991&aid=1945901&group_id=26091 |