Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
--- rest/11360/objects/albums.ttl
-<http://localhost:8984/rest/11360/objects/albums> a fedora:Container , fedora:Resource ;
+<http://localhost:8984/rest/11360/objects/albums> a fedora:Container , ldp:Container , ldp:RDFSource , fedora:Resource ;
...
--- rest/11360/objects/albums/0c/7c/4e/29/0c7c4e29-5bc0-4005-95a6-bacd103fddee/fcr%3Ametadata.ttl
-<http://localhost:8984/rest/11360/objects/albums/0c/7c/4e/29/0c7c4e29-5bc0-4005-95a6-bacd103fddee> a fedora:Binary , fedora:Resource ;
+<http://localhost:8984/rest/11360/objects/albums/0c/7c/4e/29/0c7c4e29-5bc0-4005-95a6-bacd103fddee> a ldp:NonRDFSource , fedora:Binary , fedora:Resource ; 

 

Test 1 Conclusions

  1. Fedora unresponsive during large (failing) delete operation in UI.  This is probably a known problem.  

  2. Fedora responsive during large import operation, but then crashes and fails the whole load.
  3. Round trip adds semantic information.

Test 2 - Another Trip

Import again, without deleting.

 

Code Block
java -jar target/fcrepo-import-export-0.1.1-SNAPSHOT.jar --mode import --resource http://localhost:8984/rest/ --dir /Users/atz/repos/import_export_test/ --binaries --auditLog

Same log message: "Finished import... 20006 resources imported"

Repeat Test 0:

  • Only timestamps change, semantic fields stabilized.

Repeat Test 1:

Diff after TTL re-export includes: 

Code Block
20004 files changed, 60098 insertions(+), 60098 deletions(-)
rewrite rest/11360/memberCollection.ttl (85%)
rewrite rest/11360/memberCollection/members.ttl (82%)
rewrite rest/11360/objects.ttl (85%)

The same semantic differences are evident per file, e.g.:

Code Block
-<http://localhost:8984/rest/11360/objects/47/2e/63/66/472e6366-627c-42ac-b8fd-f131b48bf3fc> a fedora:Container , fedora:Resource ;
+<http://localhost:8984/rest/11360/objects/47/2e/63/66/472e6366-627c-42ac-b8fd-f131b48bf3fc> a fedora:Container , ldp:Container , ldp:RDFSource , fedora:Resource ;


Test 2 Conclusions

  1. Image Added Still some work to do to make round-trips possible, unless the representational differences are considered semantically identical because of the definition of fedora:Container, for example.  It seems unnecessary to have the behavior diverge between turtle and json+ld, though.  
  2. Image Added Datestamps still vary, a known issue, if I understand correctly.


Comments:

  • Generating a config implicitly and then using it on subsequent operations means that those who expect their command-line options to apply only for that command will be surprised.
  • Generating a config to /var means that on certain OS, the config will be lost upon system restart.  So those who rely on the persistence of previous command line options will also be surprised.
  • Generating a config on first execution means that order of operation between otherwise independent calls matters (say, 3 calls, each exporting a different object with different options).
  • I would recommend an explicit --set-config or --write-config option to eliminate these 3 categories of surprise.