{"action":"created","issue":{"url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/issues/18","labels_url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/issues/18/labels{/name}","comments_url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/issues/18/comments","events_url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/issues/18/events","html_url":"https://github.com/Islandora/Islandora-Fedora4-Interest-Group/issues/18","id":59121537,"number":18,"title":"Conventions for predictable File URIs","user":{"login":"mjordan","id":403918,"avatar_url":"https://avatars.githubusercontent.com/u/403918?v=3","gravatar_id":"","url":"https://api.github.com/users/mjordan","html_url":"https://github.com/mjordan","followers_url":"https://api.github.com/users/mjordan/followers","following_url":"https://api.github.com/users/mjordan/following{/other_user}","gists_url":"https://api.github.com/users/mjordan/gists{/gist_id}","starred_url":"https://api.github.com/users/mjordan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mjordan/subscriptions","organizations_url":"https://api.github.com/users/mjordan/orgs","repos_url":"https://api.github.com/users/mjordan/repos","events_url":"https://api.github.com/users/mjordan/events{/privacy}","received_events_url":"https://api.github.com/users/mjordan/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/labels/modeling","name":"modeling","color":"5319e7"},{"url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/labels/use%20case","name":"use case","color":"fad8c7"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-02-26T18:53:35Z","updated_at":"2015-02-26T21:57:11Z","closed_at":null,"body":"\r\n| Title (Goal)  | Predict File URIs                          |\r\n--------------- |------------------------------------                           |\r\n| Primary Actor | Developer    |\r\n| Scope         | Code-level conventions       |\r\n| Level         |  High  |\r\n| Story         | As a developer, I will need to be aware of conventions for identifying specific types of files that may be associated with a Fedora 4 object using an object's fcdm:hasFile property. These conventions are similar to using 'TN', 'OBJ', and other datastream IDs commonly used across solution packs in Isandora 7.x-1-x. \r\n\r\n***\r\n\r\n**Examples**:\r\n* As a developer, I need to retrieve the OCR file associated with an object.\r\n* As a developer, I need to retrieve the previous version of a particular file associated with an object.\r\n\r\n**Remarks**:\r\n* Related to #17.\r\n* Files in F4 aren't identified by conventional IDs (like datastreams are in F3), they are identified by URIs such as http://localhost:8080/rest/b8/fc/32/be/b8fc32be-34be-428e-bf7c-81be97e5f2e3. Since these URIs are opaque (i.e., using UUIDs to specify particular resources), developers need a way of knowing which URL to request for a specific purpose, such as retrieving a thumbnail representation of the object or retrieving the OCR transcript associated with an object.\r\n* F4 REST API documentation at https://wiki.duraspace.org/display/FEDORA4x/RESTful+HTTP+API provides examples of File URI assigned on creation.\r\n* URIs don't need to be opaque. The \"Creating new binary resource at a specified path\" example in the REST API docs illustrates how to assign a URI to a binary resource.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/issues/comments/76282915","html_url":"https://github.com/Islandora/Islandora-Fedora4-Interest-Group/issues/18#issuecomment-76282915","issue_url":"https://api.github.com/repos/Islandora/Islandora-Fedora4-Interest-Group/issues/18","id":76282915,"user":{"login":"awoods","id":149283,"avatar_url":"https://avatars.githubusercontent.com/u/149283?v=3","gravatar_id":"","url":"https://api.github.com/users/awoods","html_url":"https://github.com/awoods","followers_url":"https://api.github.com/users/awoods/followers","following_url":"https://api.github.com/users/awoods/following{/other_user}","gists_url":"https://api.github.com/users/awoods/gists{/gist_id}","starred_url":"https://api.github.com/users/awoods/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/awoods/subscriptions","organizations_url":"https://api.github.com/users/awoods/orgs","repos_url":"https://api.github.com/users/awoods/repos","events_url":"https://api.github.com/users/awoods/events{/privacy}","received_events_url":"https://api.github.com/users/awoods/received_events","type":"User","site_admin":false},"created_at":"2015-02-26T21:57:11Z","updated_at":"2015-02-26T21:57:11Z","body":"I definitely prefer the property/predicate approach in conjunction with something along the lines of the FCDM: https://wiki.duraspace.org/display/FF/Fedora+Community+Data+Model as opposed to semantically meaningful URLs."}}