SAA-SDT / EAD3

https://www.loc.gov/ead/index.html
Creative Commons Zero v1.0 Universal
81 stars 25 forks source link

Replace <daogrp> with <daoset> #381

Closed rockivist closed 9 years ago

rockivist commented 10 years ago

At the March 2012 meeting we agreed to eliminate all extended links, which included <daogrp>. However, feedback on both the alpha and the beta releases made it clear that the community saw a need for <daogrp>, so we agreed to restore it.

However: while putting <daogrp> back into the schema it became clear again just why we removed it - it is extremely over complicated for how it is used. Terry did some research into the ArchiveGrid EAD corpus and found that every single example of <daogrp> he could find was essentially using it to wrap links to two digital objects. Essentially none of the complicated extended linking involving arcs is being used in such a way that requires the full extended link functionality.

In order to meet the need of wrapping two or more digital archival objects and our previous goal of eliminating extended links, Terry and I propose creating <daoset>. It would contain two or more <dao>s, with an optional <descriptivenote> at the end. It would be an optional child of <did> with the usual attributes for children of <did> (a.common, @label, @encodinganalog, @localtype), plus @coverage. Here's a possible example:

`

Scans of two of twelve chapters.

`

The only complication I see is a use case I was surprised Terry did not find on ArchiveGrid: embedding a thumbnail and having that link to a digital object. There are EAD BPGs out there (including Yale's though we've never actually done this) that model this using <daogrp> and two <arc>s and two <daoloc>s. That said, the same functionality could be achieved using <datesest> and some combination of @role and possibly @localtype on the <dao>s.

If there are people in the user community that absolutely must use the full extended link functionality of <daogrp> it will be available in the undeprecated version of the schema. Otherwise I think <daoset> is a much simpler, cleaner, easier solution for creating groups of digital objects.

I've actually already created <daoset> - it's in the develop branch if you want to take a look. I needed to spec it out to see if it would work.

MicheleCombs commented 10 years ago

I'm not sure I grasp why creating a brand-new element makes more sense than simply retaining the one we already have. That seems unnecessarily complicated.

rockivist commented 10 years ago

@MicheleCombs Have you looked at <daogrp> in detail? It's incredibly overwrought for how it is used. Eliminating extended xlink links in the schema will be a huge win for teachability and ease of use. Not to mention how much it will simplify the schema itself.

rockivist commented 10 years ago

Here is an email Terry sent me with the results of his investigation into <daogrp> usage in ArchiveGrid:

Mike,

I ran these queries again on the database on my mac and got slightly different results because I think the one on my mac has more instances in it.

daogrp: 129075

//daogrp[child::arc): 4747

//daogrp[child::arc][count(child::daoloc) > 1] = 231 (all university of chicago)

//daogrp[count(child::arc) > 1][count(child::daoloc) > 1] = 1

So, even in the case where arc is used with multiple daolocs, only once are more than one arcs used. And in that case, the usage is as meaningless as much as multiple daolocs with a single arc:

`

View digitized documents, part 1.

View digitized documents, part 2.

View digitized documents, part 3.

`

So, my conclusion is the same, even though daogrp is used, it is not being used (at lest to any apparent effect) for its extended linking capabilities, but for its ability to group images.

/Terry

On Tue, Jan 14, 2014 at 2:40 PM, Terry Catapano wrote:

Mike,

I've done some analysis on the usage of daogrp in the archivegrid sample and here are some preliminary findings:

daogrp used 89049 times

arc and resource

resource used 948 times, "start" only value for @label

arc used 949 times

"start" only value for @from

@to:

"image": 740 "icon": 194 "text": 14 "webpage": 1

@show:

"new": 824 "embed": 125

@actuate

"onload": 118 "onrequest": 830

daogrp/daoloc

daogrp with more than 1 daoloc: 70710 daogrp with 1 daoloc: 18339

Interestingly:

arc is used only when a daogrp has 1 daoloc

//daogrp[child::arc][count(daoloc) = 1] : 949 (that is, all occurrences)

and arc is never used when a daogrp has more than 1 daoloc:

//daogrp[count(daoloc) > 1][child::* except (daoloc|daodesc)] = 0

So, based on all this, I'm not seeing much of an argument for the full extended link daogrp. People only use daodesc with extended link stuff (gratuitously) when they could use a single dao (provided there is a daodesc), Nobody uses extended link features when they have more than one daoloc.

Looks to me like a daoset would do the job.

What do you think? Need more info.

/Terry

rockivist commented 10 years ago

Per TS-EAD 2014-01-16 conference call: implement as recommended.

rockivist commented 10 years ago

Implemented. Keeping open for documentation review.