Gizmo bug?
Peter Kukla via saxon-help <[email protected]> Fri, 24 Sep 2021 17:43:58 +0000 (UTC)
| Newsgroups | gmane.text.xml.saxon.help |
|---|---|
| Message-ID | <[email protected]> |
--===============6423951968735748956== Content-Type: multipart/alternative; boundary="----=_Part_1544557_1800592825.1632505438489" Content-Length: 24009 ------=_Part_1544557_1800592825.1632505438489 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I've just discovered the "Gizmo" utility and I'm really enjoying it, but I'= m wondering if I've found a bug. TLDR:=C2=A0 Some "delete" commands result in: =20 Exception in thread "main" java.util.ConcurrentModificationException=C2=A0 = =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.ArrayList$Itr.checkForComodific= ation(ArrayList.java:1043)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.uti= l.ArrayList$Itr.next(ArrayList.java:997)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at net.= sf.saxon.Gizmo.delete(Gizmo.java:439)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at net.sf.= saxon.Gizmo.executeCommands(Gizmo.java:304)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at n= et.sf.saxon.Gizmo.<init>(Gizmo.java:231)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at net.= sf.saxon.Gizmo.main(Gizmo.java:168) ...and dumping the user back to the OS prompt. Specifically, it appears that the crash occurs when I use the syntax=C2=A0 =C2=A0 =C2=A0 delete //namespace:name If I run the delete with the full path, or if I specify "//name" (i.e. with= out the namespace) it works. If the delete with the //namespace:name isn't supported, then I'd expect a = warning rather than a crash.=C2=A0 But, perhaps I'm doing something wrong? At any rate, thank you for Gizmo...it's been extremely useful just in the f= ew days since I first discovered it. More details: I'm running on an Ubuntu 20.04 system. $ java --versionopenjdk 11.0.11 2021-04-20OpenJDK Runtime Environment (buil= d 11.0.11+9-Ubuntu-0ubuntu2.20.04)OpenJDK 64-Bit Server VM (build 11.0.11+9= -Ubuntu-0ubuntu2.20.04, mixed mode, sharing) A source XML document for reproducing the error can be downloaded from:=C2= =A0=C2=A0http://cdm16002.contentdm.oclc.org/oai/oai.php?verb=3DListRecords&= set=3Dp16002coll9&metadataPrefix=3Doai_qdc In the following examples, I'm loading namespace info from a config file (/= home/web/Saxon-HE/config-namespaces.txt) which contains the following: namespace dc http://purl.org/dc/elements/1.1/namespace dcmitype http://purl= .org/dc/dcmitype/namespace dcterms http://purl.org/dc/terms/namespace edm h= ttp://www.europeana.eu/schemas/edm/namespace oai-pmh http://www.openarchive= s.org/OAI/2.0/namespace oai_dc http://www.openarchives.org/OAI/2.0/oai_dc/n= amespace oai_qdc http://worldcat.org/xmlschemas/qdc-1.0/ ### Try 1:=C2=A0 Successful, because I delete specifying the full path, inc= luding the namespace: $ java net.sf.saxon.GizmoSaxon Gizmo 10.5/>call /home/web/Saxon-HE/config-n= amespaces.txt/>load 1.xml/>pathsFound 27 items/OAI-PMH/OAI-PMH/responseDate= /OAI-PMH/request/OAI-PMH/ListRecords/OAI-PMH/ListRecords/record/OAI-PMH/Lis= tRecords/record/header/OAI-PMH/ListRecords/record/header/identifier/OAI-PMH= /ListRecords/record/header/datestamp/OAI-PMH/ListRecords/record/header/setS= pec/OAI-PMH/ListRecords/record/metadata/OAI-PMH/ListRecords/record/metadata= /oai_qdc:qualifieddc/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifiedd= c/dc:title/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:date/= OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:contributor/OAI-= PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:description/OAI-PMH/= ListRecords/record/metadata/oai_qdc:qualifieddc/dc:subject/OAI-PMH/ListReco= rds/record/metadata/oai_qdc:qualifieddc/dc:format/OAI-PMH/ListRecords/recor= d/metadata/oai_qdc:qualifieddc/dc:type/OAI-PMH/ListRecords/record/metadata/= oai_qdc:qualifieddc/dc:publisher/OAI-PMH/ListRecords/record/metadata/oai_qd= c:qualifieddc/dc:language/OAI-PMH/ListRecords/record/metadata/oai_qdc:quali= fieddc/dc:rights/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc= terms:isPartOf/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dcte= rms:extent/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:ident= ifier/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:relation/O= AI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dcterms:alternative/= OAI-PMH/ListRecords/resumptionToken/>delete /OAI-PMH/ListRecords/record/met= adata/oai_qdc:qualifieddc/dc:title/>pathsFound 26 items/OAI-PMH/OAI-PMH/res= ponseDate/OAI-PMH/request/OAI-PMH/ListRecords/OAI-PMH/ListRecords/record/OA= I-PMH/ListRecords/record/header/OAI-PMH/ListRecords/record/header/identifie= r/OAI-PMH/ListRecords/record/header/datestamp/OAI-PMH/ListRecords/record/he= ader/setSpec/OAI-PMH/ListRecords/record/metadata/OAI-PMH/ListRecords/record= /metadata/oai_qdc:qualifieddc/OAI-PMH/ListRecords/record/metadata/oai_qdc:q= ualifieddc/dc:date/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/= dc:contributor/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:d= escription/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:subje= ct/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:format/OAI-PM= H/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:type/OAI-PMH/ListRecor= ds/record/metadata/oai_qdc:qualifieddc/dc:publisher/OAI-PMH/ListRecords/rec= ord/metadata/oai_qdc:qualifieddc/dc:language/OAI-PMH/ListRecords/record/met= adata/oai_qdc:qualifieddc/dc:rights/OAI-PMH/ListRecords/record/metadata/oai= _qdc:qualifieddc/dcterms:isPartOf/OAI-PMH/ListRecords/record/metadata/oai_q= dc:qualifieddc/dcterms:extent/OAI-PMH/ListRecords/record/metadata/oai_qdc:q= ualifieddc/dc:identifier/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualif= ieddc/dc:relation/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/d= cterms:alternative/OAI-PMH/ListRecords/resumptionToken/>quitQuit without sa= ving? (Y|N)/>y$ ### Try 2:=C2=A0 Fails, the delete command kills the session when I attempt= to use //namespace:name $ java net.sf.saxon.GizmoSaxon Gizmo 10.5/>call /home/web/Saxon-HE/config-n= amespaces.txt/>load 1.xml/>delete //dc:titleException in thread "main" java= .util.ConcurrentModificationException=C2=A0 =C2=A0 =C2=A0 =C2=A0 at java.ba= se/java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1043)=C2= =A0 =C2=A0 =C2=A0 =C2=A0 at java.base/java.util.ArrayList$Itr.next(ArrayLis= t.java:997)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at net.sf.saxon.Gizmo.delete(Gizmo.j= ava:439)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at net.sf.saxon.Gizmo.executeCommands(G= izmo.java:304)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at net.sf.saxon.Gizmo.<init>(Gizm= o.java:231)=C2=A0 =C2=A0 =C2=A0 =C2=A0 at net.sf.saxon.Gizmo.main(Gizmo.jav= a:168)$ ### Try 3:=C2=A0 Successful, because I specify the delete without referenci= ng the namespace $ java net.sf.saxon.GizmoSaxon Gizmo 10.5/>call /home/web/Saxon-HE/config-n= amespaces.txt/>load 1.xml/>pathsFound 27 items/OAI-PMH/OAI-PMH/responseDate= /OAI-PMH/request/OAI-PMH/ListRecords/OAI-PMH/ListRecords/record/OAI-PMH/Lis= tRecords/record/header/OAI-PMH/ListRecords/record/header/identifier/OAI-PMH= /ListRecords/record/header/datestamp/OAI-PMH/ListRecords/record/header/setS= pec/OAI-PMH/ListRecords/record/metadata/OAI-PMH/ListRecords/record/metadata= /oai_qdc:qualifieddc/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifiedd= c/dc:title/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:date/= OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:contributor/OAI-= PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:description/OAI-PMH/= ListRecords/record/metadata/oai_qdc:qualifieddc/dc:subject/OAI-PMH/ListReco= rds/record/metadata/oai_qdc:qualifieddc/dc:format/OAI-PMH/ListRecords/recor= d/metadata/oai_qdc:qualifieddc/dc:type/OAI-PMH/ListRecords/record/metadata/= oai_qdc:qualifieddc/dc:publisher/OAI-PMH/ListRecords/record/metadata/oai_qd= c:qualifieddc/dc:language/OAI-PMH/ListRecords/record/metadata/oai_qdc:quali= fieddc/dc:rights/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc= terms:isPartOf/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dcte= rms:extent/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:ident= ifier/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:relation/O= AI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dcterms:alternative/= OAI-PMH/ListRecords/resumptionToken/>delete //title/>pathsFound 26 items/OA= I-PMH/OAI-PMH/responseDate/OAI-PMH/request/OAI-PMH/ListRecords/OAI-PMH/List= Records/record/OAI-PMH/ListRecords/record/header/OAI-PMH/ListRecords/record= /header/identifier/OAI-PMH/ListRecords/record/header/datestamp/OAI-PMH/List= Records/record/header/setSpec/OAI-PMH/ListRecords/record/metadata/OAI-PMH/L= istRecords/record/metadata/oai_qdc:qualifieddc/OAI-PMH/ListRecords/record/m= etadata/oai_qdc:qualifieddc/dc:date/OAI-PMH/ListRecords/record/metadata/oai= _qdc:qualifieddc/dc:contributor/OAI-PMH/ListRecords/record/metadata/oai_qdc= :qualifieddc/dc:description/OAI-PMH/ListRecords/record/metadata/oai_qdc:qua= lifieddc/dc:subject/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc= /dc:format/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:type/= OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:publisher/OAI-PM= H/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:language/OAI-PMH/ListR= ecords/record/metadata/oai_qdc:qualifieddc/dc:rights/OAI-PMH/ListRecords/re= cord/metadata/oai_qdc:qualifieddc/dcterms:isPartOf/OAI-PMH/ListRecords/reco= rd/metadata/oai_qdc:qualifieddc/dcterms:extent/OAI-PMH/ListRecords/record/m= etadata/oai_qdc:qualifieddc/dc:identifier/OAI-PMH/ListRecords/record/metada= ta/oai_qdc:qualifieddc/dc:relation/OAI-PMH/ListRecords/record/metadata/oai_= qdc:qualifieddc/dcterms:alternative/OAI-PMH/ListRecords/resumptionToken/> . ------=_Part_1544557_1800592825.1632505438489 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <html><head></head><body><div class=3D"yahoo-style-wrap" style=3D"font-fami= ly:times new roman, new york, times, serif;font-size:16px;"><div dir=3D"ltr= " data-setdir=3D"false">I've just discovered the "Gizmo" utility and I'm re= ally enjoying it, but I'm wondering if I've found a bug.<br></div><div dir= =3D"ltr" data-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"fa= lse">TLDR: Some "delete" commands result in:</div><div dir=3D"ltr" da= ta-setdir=3D"false"><br></div> <blockquote style=3D"margin: 0 0 0 40px; bor= der: none; padding: 0px;"><div><div>Exception in thread "main" java.util.Co= ncurrentModificationException</div></div><div><div> &nb= sp; at java.base/java.util.ArrayList$Itr.checkForComodification(ArrayList.j= ava:1043)</div></div><div><div> at java.base/jav= a.util.ArrayList$Itr.next(ArrayList.java:997)</div></div><div><div> &= nbsp; at net.sf.saxon.Gizmo.delete(Gizmo.java:439)</div></div= ><div><div> at net.sf.saxon.Gizmo.executeCommand= s(Gizmo.java:304)</div></div><div><div> at net.s= f.saxon.Gizmo.<init>(Gizmo.java:231)</div></div><div><div> &nbs= p; at net.sf.saxon.Gizmo.main(Gizmo.java:168)</div></div></bl= ockquote><div><div><br></div></div><div dir=3D"ltr" data-setdir=3D"false">.= ..and dumping the user back to the OS prompt.<br></div><div dir=3D"ltr" dat= a-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"false">Specifi= cally, it appears that the crash occurs when I use the syntax </div><d= iv dir=3D"ltr" data-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdir= =3D"false"> delete //namespace:name<br></div><div dir=3D"ltr" = data-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"false">If I= run the delete with the full path, or if I specify "//name" (i.e. without = the namespace) it works.</div><div dir=3D"ltr" data-setdir=3D"false"><br></= div><div dir=3D"ltr" data-setdir=3D"false">If the delete with the //namespa= ce:name isn't supported, then I'd expect a warning rather than a crash.&nbs= p; But, perhaps I'm doing something wrong?</div><div dir=3D"ltr" data-setdi= r=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"false">At any rate, t= hank you for Gizmo...it's been extremely useful just in the few days since = I first discovered it.</div><div dir=3D"ltr" data-setdir=3D"false"><br></di= v><div dir=3D"ltr" data-setdir=3D"false"><br></div><div dir=3D"ltr" data-se= tdir=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"false">More detail= s:</div><div dir=3D"ltr" data-setdir=3D"false"><br></div><div dir=3D"ltr" d= ata-setdir=3D"false">I'm running on an Ubuntu 20.04 system.</div><div dir= =3D"ltr" data-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"fa= lse"><div><div>$ java --version</div><div>openjdk 11.0.11 2021-04-20</div><= div>OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)</di= v><div>OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mix= ed mode, sharing)</div><div><br></div><div><br></div><div>A source XML docu= ment for reproducing the error can be downloaded from: <a href= =3D"http://cdm16002.contentdm.oclc.org/oai/oai.php?verb=3DListRecords&s= et=3Dp16002coll9&metadataPrefix=3Doai_qdc" rel=3D"nofollow" target=3D"_= blank">http://cdm16002.contentdm.oclc.org/oai/oai.php?verb=3DListRecords&am= p;set=3Dp16002coll9&metadataPrefix=3Doai_qdc</a><br></div></div></div><= div dir=3D"ltr" data-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdi= r=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"false"><br></div><div= dir=3D"ltr" data-setdir=3D"false">In the following examples, I'm loading n= amespace info from a config file (/home/web/Saxon-HE/config-namespaces.txt)= which contains the following:<br></div><div dir=3D"ltr" data-setdir=3D"fal= se"><br></div><blockquote style=3D"margin: 0 0 0 40px; border: none; paddin= g: 0px;"><div dir=3D"ltr" data-setdir=3D"false"><div><div>namespace dc http= ://purl.org/dc/elements/1.1/</div></div></div><div dir=3D"ltr" data-setdir= =3D"false"><div><div>namespace dcmitype http://purl.org/dc/dcmitype/</div><= /div></div><div dir=3D"ltr" data-setdir=3D"false"><div><div>namespace dcter= ms http://purl.org/dc/terms/</div></div></div><div dir=3D"ltr" data-setdir= =3D"false"><div><div>namespace edm http://www.europeana.eu/schemas/edm/</di= v></div></div><div dir=3D"ltr" data-setdir=3D"false"><div><div>namespace oa= i-pmh http://www.openarchives.org/OAI/2.0/</div></div></div><div dir=3D"ltr= " data-setdir=3D"false"><div><div>namespace oai_dc http://www.openarchives.= org/OAI/2.0/oai_dc/</div></div></div><div dir=3D"ltr" data-setdir=3D"false"= ><div><div>namespace oai_qdc http://worldcat.org/xmlschemas/qdc-1.0/</div><= /div></div></blockquote><div dir=3D"ltr" data-setdir=3D"false"><div><div><b= r></div></div><div><br></div><div><br></div><div dir=3D"ltr" data-setdir=3D= "false">### Try 1: Successful, because I delete specifying the full p= ath, including the namespace:</div><div><br></div><div dir=3D"ltr" data-set= dir=3D"false"><div><div>$ java net.sf.saxon.Gizmo</div><div>Saxon Gizmo 10.= 5</div><div>/>call /home/web/Saxon-HE/config-namespaces.txt</div><div>/&= gt;load 1.xml</div><div>/>paths</div><div>Found 27 items</div><div>/OAI-= PMH</div><div>/OAI-PMH/responseDate</div><div>/OAI-PMH/request</div><div>/O= AI-PMH/ListRecords</div><div>/OAI-PMH/ListRecords/record</div><div>/OAI-PMH= /ListRecords/record/header</div><div>/OAI-PMH/ListRecords/record/header/ide= ntifier</div><div>/OAI-PMH/ListRecords/record/header/datestamp</div><div>/O= AI-PMH/ListRecords/record/header/setSpec</div><div>/OAI-PMH/ListRecords/rec= ord/metadata</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifi= eddc</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:= title</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc= :date</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc= :contributor</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifi= eddc/dc:description</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:= qualifieddc/dc:subject</div><div>/OAI-PMH/ListRecords/record/metadata/oai_q= dc:qualifieddc/dc:format</div><div>/OAI-PMH/ListRecords/record/metadata/oai= _qdc:qualifieddc/dc:type</div><div>/OAI-PMH/ListRecords/record/metadata/oai= _qdc:qualifieddc/dc:publisher</div><div>/OAI-PMH/ListRecords/record/metadat= a/oai_qdc:qualifieddc/dc:language</div><div>/OAI-PMH/ListRecords/record/met= adata/oai_qdc:qualifieddc/dc:rights</div><div>/OAI-PMH/ListRecords/record/m= etadata/oai_qdc:qualifieddc/dcterms:isPartOf</div><div>/OAI-PMH/ListRecords= /record/metadata/oai_qdc:qualifieddc/dcterms:extent</div><div>/OAI-PMH/List= Records/record/metadata/oai_qdc:qualifieddc/dc:identifier</div><div>/OAI-PM= H/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:relation</div><div>/OA= I-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dcterms:alternative</= div><div>/OAI-PMH/ListRecords/resumptionToken</div><div>/>delete /OAI-PM= H/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:title</div><div>/>p= aths</div><div>Found 26 items</div><div>/OAI-PMH</div><div>/OAI-PMH/respons= eDate</div><div>/OAI-PMH/request</div><div>/OAI-PMH/ListRecords</div><div>/= OAI-PMH/ListRecords/record</div><div>/OAI-PMH/ListRecords/record/header</di= v><div>/OAI-PMH/ListRecords/record/header/identifier</div><div>/OAI-PMH/Lis= tRecords/record/header/datestamp</div><div>/OAI-PMH/ListRecords/record/head= er/setSpec</div><div>/OAI-PMH/ListRecords/record/metadata</div><div>/OAI-PM= H/ListRecords/record/metadata/oai_qdc:qualifieddc</div><div>/OAI-PMH/ListRe= cords/record/metadata/oai_qdc:qualifieddc/dc:date</div><div>/OAI-PMH/ListRe= cords/record/metadata/oai_qdc:qualifieddc/dc:contributor</div><div>/OAI-PMH= /ListRecords/record/metadata/oai_qdc:qualifieddc/dc:description</div><div>/= OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:subject</div><di= v>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:format</div><= div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:type</div><= div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:publisher</= div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:langua= ge</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:ri= ghts</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dct= erms:isPartOf</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualif= ieddc/dcterms:extent</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc= :qualifieddc/dc:identifier</div><div>/OAI-PMH/ListRecords/record/metadata/o= ai_qdc:qualifieddc/dc:relation</div><div>/OAI-PMH/ListRecords/record/metada= ta/oai_qdc:qualifieddc/dcterms:alternative</div><div>/OAI-PMH/ListRecords/r= esumptionToken</div><div>/>quit</div><div>Quit without saving? (Y|N)</di= v><div>/>y</div><div>$</div><div><br></div></div><div><br></div><div><br= ></div><div dir=3D"ltr" data-setdir=3D"false">### Try 2: Fails, the d= elete command kills the session when I attempt to use //namespace:name</div= ><br></div><div><div>$ java net.sf.saxon.Gizmo</div><div>Saxon Gizmo 10.5</= div><div>/>call /home/web/Saxon-HE/config-namespaces.txt</div><div>/>= load 1.xml</div><div>/>delete //dc:title</div><div>Exception in thread "= main" java.util.ConcurrentModificationException</div><div> &nb= sp; at java.base/java.util.ArrayList$Itr.checkForComodification(Arra= yList.java:1043)</div><div> at java.base/java.ut= il.ArrayList$Itr.next(ArrayList.java:997)</div><div> &n= bsp; at net.sf.saxon.Gizmo.delete(Gizmo.java:439)</div><div> &= nbsp; at net.sf.saxon.Gizmo.executeCommands(Gizmo.java:304)</div><di= v> at net.sf.saxon.Gizmo.<init>(Gizmo.java= :231)</div><div> at net.sf.saxon.Gizmo.main(Gizm= o.java:168)</div><div>$</div><div><br></div></div><br></div><div dir=3D"ltr= " data-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdir=3D"false">##= # Try 3: Successful, because I specify the delete without referencing= the namespace</div><div dir=3D"ltr" data-setdir=3D"false"><br></div><div d= ir=3D"ltr" data-setdir=3D"false"><div><div>$ java net.sf.saxon.Gizmo</div><= div>Saxon Gizmo 10.5</div><div>/>call /home/web/Saxon-HE/config-namespac= es.txt</div><div>/>load 1.xml</div><div>/>paths</div><div>Found 27 it= ems</div><div>/OAI-PMH</div><div>/OAI-PMH/responseDate</div><div>/OAI-PMH/r= equest</div><div>/OAI-PMH/ListRecords</div><div>/OAI-PMH/ListRecords/record= </div><div>/OAI-PMH/ListRecords/record/header</div><div>/OAI-PMH/ListRecord= s/record/header/identifier</div><div>/OAI-PMH/ListRecords/record/header/dat= estamp</div><div>/OAI-PMH/ListRecords/record/header/setSpec</div><div>/OAI-= PMH/ListRecords/record/metadata</div><div>/OAI-PMH/ListRecords/record/metad= ata/oai_qdc:qualifieddc</div><div>/OAI-PMH/ListRecords/record/metadata/oai_= qdc:qualifieddc/dc:title</div><div>/OAI-PMH/ListRecords/record/metadata/oai= _qdc:qualifieddc/dc:date</div><div>/OAI-PMH/ListRecords/record/metadata/oai= _qdc:qualifieddc/dc:contributor</div><div>/OAI-PMH/ListRecords/record/metad= ata/oai_qdc:qualifieddc/dc:description</div><div>/OAI-PMH/ListRecords/recor= d/metadata/oai_qdc:qualifieddc/dc:subject</div><div>/OAI-PMH/ListRecords/re= cord/metadata/oai_qdc:qualifieddc/dc:format</div><div>/OAI-PMH/ListRecords/= record/metadata/oai_qdc:qualifieddc/dc:type</div><div>/OAI-PMH/ListRecords/= record/metadata/oai_qdc:qualifieddc/dc:publisher</div><div>/OAI-PMH/ListRec= ords/record/metadata/oai_qdc:qualifieddc/dc:language</div><div>/OAI-PMH/Lis= tRecords/record/metadata/oai_qdc:qualifieddc/dc:rights</div><div>/OAI-PMH/L= istRecords/record/metadata/oai_qdc:qualifieddc/dcterms:isPartOf</div><div>/= OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dcterms:extent</div= ><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:identifie= r</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:rel= ation</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc= terms:alternative</div><div>/OAI-PMH/ListRecords/resumptionToken</div><div>= />delete //title</div><div>/>paths</div><div>Found 26 items</div><div= >/OAI-PMH</div><div>/OAI-PMH/responseDate</div><div>/OAI-PMH/request</div><= div>/OAI-PMH/ListRecords</div><div>/OAI-PMH/ListRecords/record</div><div>/O= AI-PMH/ListRecords/record/header</div><div>/OAI-PMH/ListRecords/record/head= er/identifier</div><div>/OAI-PMH/ListRecords/record/header/datestamp</div><= div>/OAI-PMH/ListRecords/record/header/setSpec</div><div>/OAI-PMH/ListRecor= ds/record/metadata</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:q= ualifieddc</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualified= dc/dc:date</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualified= dc/dc:contributor</div><div>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qu= alifieddc/dc:description</div><div>/OAI-PMH/ListRecords/record/metadata/oai= _qdc:qualifieddc/dc:subject</div><div>/OAI-PMH/ListRecords/record/metadata/= oai_qdc:qualifieddc/dc:format</div><div>/OAI-PMH/ListRecords/record/metadat= a/oai_qdc:qualifieddc/dc:type</div><div>/OAI-PMH/ListRecords/record/metadat= a/oai_qdc:qualifieddc/dc:publisher</div><div>/OAI-PMH/ListRecords/record/me= tadata/oai_qdc:qualifieddc/dc:language</div><div>/OAI-PMH/ListRecords/recor= d/metadata/oai_qdc:qualifieddc/dc:rights</div><div>/OAI-PMH/ListRecords/rec= ord/metadata/oai_qdc:qualifieddc/dcterms:isPartOf</div><div>/OAI-PMH/ListRe= cords/record/metadata/oai_qdc:qualifieddc/dcterms:extent</div><div>/OAI-PMH= /ListRecords/record/metadata/oai_qdc:qualifieddc/dc:identifier</div><div>/O= AI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dc:relation</div><di= v>/OAI-PMH/ListRecords/record/metadata/oai_qdc:qualifieddc/dcterms:alternat= ive</div><div>/OAI-PMH/ListRecords/resumptionToken</div><div>/></div><di= v><br></div></div>.</div><div dir=3D"ltr" data-setdir=3D"false"><br></div><= div dir=3D"ltr" data-setdir=3D"false"><br></div><div dir=3D"ltr" data-setdi= r=3D"false"><br></div></div></body></html> ------=_Part_1544557_1800592825.1632505438489-- --===============6423951968735748956== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline --===============6423951968735748956== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ saxon-help mailing list archived at http://saxon.markmail.org/ [email protected] https://lists.sourceforge.net/lists/listinfo/saxon-help --===============6423951968735748956==--