-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
alternativeSet / setComponent / componentEntry #154
Comments
I should also mention that if we can find any examples from aggregators (APE perhaps, since I don't think there are any from SNAC), I'd be curious to see how the grouped authority records could be encoded using the new relations data model. |
The National Library of Australia's Trove uses |
@ailie-s thanks so much for the tip! I've now found some examples, e.g. http://www.nla.gov.au/apps/srw/search/peopleaustralia?query=pa.firstname+%3D+%22ailie%22&version=1.1&operation=searchRetrieve&recordSchema=urn%3Aisbn%3A1-931666-33-4&maximumRecords=10&startRecord=1&resultSetTTL=300&recordPacking=xml&recordXPath=&sortKeys= I'll add those to my set, and see if I can't figure out how they are utilized by Trove. Is there anyone there we could talk to about their current EAC implementation? The current implementation presents a question for Also, I just noticed that the schema says that |
About the Just wondering if allowing |
@kerstarno the primary reason that I like the EAD3 approach is that if you allow any element in the current namespace to be added to
It looks like I've just embedded a MADS file using EAC's alternativeSet approach, and I have, but since the namespace has not been changed, what I've also done is define nine new elements that are part of the EAC-CPF namespace (e.g. eac:affiliation). That's why I think it's far, far better not to allow an element in any namespace to be part of As for the possibility of endless recursion, that is already possible in EAC 1.0. See the attached file (and the only thing different here, is that I also added a new element, in the EAC namespace, named "whenShouldIStop" 😄 ), which I had to change to a TXT file since GitHub wouldn't allow an XML file, but it is perfectly valid according to EAC 1.0 |
So, instead, if we keep |
I mainly meant that, if we have a shared namespace (EAS) for both EAC and EAD, then we would possibly need to allow having that namespace as an option in As for the more general aspect, and maybe I've always misunderstood
|
Even with a shared namespace, I think we should model EAS such that we would never wrap EAS elements in objectXMLWrap. If it is important to allow, say, an "ead:c" element in an EAC relationship, then we should have the EAC schema permit the "ead:c" element to be present in that location of the EAC document (and/or to use our pointing/linking mechanisms, as you say... in fact, we could finally have an example of @xpointer in that case 😄). I wouldn't want to change course on EAD3's decision to exclude EAD3 from objectXMLWrap, since I think that's a good decision. Otherwise, anyone can indeed create a "mads" element in the EAD3 namespace (simply by not switching namespace declaration, which is the path of least resistance), despite the fact that we don't define a "mads" element in the EAD3 tag library or schema. |
I should also add that for the EAC1 to EAC2 transformation process, this will not be an issue at all for the NLA files. Those will still have the "eac-cpf" documents embedded in the objectXMLWrap, and they will remain in the EAC1 namespace. But, it does raise a question for future usage for NLA-style aggregations of EAC documents. If we want EAC2 documents to be able to hold EAC2 documents, then a very simple option (which wouldn't open the floodgates for elements like objectXMLWrap/mads to show up in EAC2's namespace) would be to make the new "eac" element a valid child of "setComponent". |
One other possible option for the Now that we've inherited It is much simpler, but it would nevertheless allow us to come up with some examples, if we slightly alter the definition of that element, to show it could be used to point to parallel transformations of the file (as currently described in the EAD3 tag library, e.g. by pointing to a PDF transformation of the XML file) in addition to files / representations that were used to derive the current file (which could be used for EAC, as done by NLA, as well as for EAD, when those files are first derived, for example, from one or more bibliographic records). |
I like the suggestion to look into using |
SNAC does not serialize anything to the 'alternativeSet' section. I believe they manage that in their database, but not at all with the EAC records, aside from including a reference as a "source", e.g.:
|
And a lot of SNAC's initial setup files for ingest are here, https://github.com/snac-cooperative/snac_eac_cpf_utils, but again, "alternativeSet" is not used to keep track of source MARC files, etc. |
EAC-CPF meeting, Feb 2021: With feedback from the National Library of Australia it seems clear that alternative set is used for EAC-CPF encoding of an entire authority record. Agreement to keep the element as it is. |
Creator of issue
The issue relates to
Wanted change/feature
alternativeSet
? Is there a use case for this module in EAD, Functions, EAG, etc.?alternativeSet
. Does anyone have real-world examples?objectXMLWrap
so that it cannot include elements in the source file's namespace, however (the same way that this is set up in EAD3). To allowobjectXMLWrap
to contain any element with any attribute AND to use the ID datatype in RNG elsewhere, I believe that excluding the default namespace fromobjectXMLWrap
is required, and doing that makes sense to me. If we really want to include EAC files/snippets in objectXMLWrap within EAC files, however, then we could move that ID check to the Schematron for the RNG schema, but I would prefer not to deviate from how EAD3 has this modeled currently since that definition makes more sense, to me at least.Reporting a bug
Suggested Solution
Steps to Reproduce (for bugs)
Context
Your Environment can be a clue to a bug
The text was updated successfully, but these errors were encountered: