ArchivesPortalEuropeFoundation / EAG2012

Maintenance of EAG2012, the Encoded Archival Guide for describing institutions with archival holdings
5 stars 1 forks source link

[Major revision] Update and align encoding of services #131

Open kerstarno opened 1 year ago

kerstarno commented 1 year ago

Provide a general summary of the issue in the Title above. Delete the part of the issue template that does not apply depending on whether you describe a change to an existing element / attribute or the addition of a new one.

Creator of issue

State your name, organisation and ways to reach you. Name: Kerstin Arnold Organisation: Archives Portal Europe Foundation, Working Group on Standards Email: standards@archivesportaleurope.net GitHub username (if applicable): @kerstarno

Changes to existing element / attribute

Give the current name of the element / attribute. Include the tag name and the full name. Name: <services>, <internetAccess>, <library> and its sub-elements (see also #140), <recreationalServices> and its sub-elements, <searchroom> and its sub-elements (see also #141), <techservices> and its sub-elements (see also #142), @question

Change in name

Indicate any changes in name. New name: Rename <techservices> to <technicalServices>; rename <restorationlab> to <restorationLaboratory> and <reproductionser> to <reproductionServices>

Change in context

List all parent elements to which the element / attribute should be added. Furthermore, list all parent elements from which the element / attribute should be removed.

Remove from

Parent element(s): Remove <services> from <repository>

Add to

Parent element(s): Add <services> to <description>

Change in availability

For elements, give an indication of their changed availability within each affected parent element ("1..1" for required but not repeatable, "1 (or another number)..n" for required and repeatable, "0..1" for optional but not repeatable", "0..n" for optional and repeatable). For added attributes, indicate their changed availability with "1" for required or "0" for optional within each affected parent element. Changed availability: <services> remains optional, but becomes repeatable within <description> (0..n); <services> has to appear after <places>, <access>, <timetable>, <functions>, <legalStatuses>, and <mandates>; all sub-elements of` become repeatable as well and there is no prescribed order among them anymore, but a choice between them

Change in content model (elements)

List all sub-elements and attributes that should be removed from or added to the element's content model.

Change in data type (attributes)

Indicate any changes in an attribute's data type including the mention of specific default values (if applicable). New data type (with default values): @question gets the additional value "yes (conditions apply)" alongside the general options "yes" and "no"

New element / attribute

Give the name of the new element / attribute. Include the tag name and the full name. Name: <multilingualServices>

Context and availability

List all parent elements to which the element / attribute should be added. For elements, give an indication of their availability within each parent element ("1..1" for required but not repeatable, "1 (or another number)..n" for required and repeatable, "0..1" for optional but not repeatable", "0..n" for optional and repeatable). For attributes, indicate their availability with "1" for required or "0" for optional within each parent element. Parent element(s): <multilingualServices> is optional and repeatable (0..n) within <services>

Content model (elements)

List all sub-elements and attributes of the new element. For sub-elements, give an indication of their availability ("1..1" for required but not repeatable, "1 (or another number)..n" for required and repeatable, "0..1" for optional but not repeatable", "0..n" for optional and repeatable). For attributes, indicate their availability with "1" for required or "0" for optional. Sub-element(s): n/a; can contain text Attributes (with default values, if applicable): requires @question attribute (1) with values "yes", "no", "yes (conditions apply)"; allows for the optional attributes @audience with values "external", "internal" (0), @id (0), @languageOfElement (0), @scriptOfElement (0), @target (0); @conventionDeclarationReference (0), @maintenanceEventReference (0), @sourceReference (0); @href (0), @linkRole (0), @linkTitle (0); @localType (0), @localTypeDeclarationReference; option to include attributes from any other namespace

kerstarno commented 1 year ago

In terms of conversion, the current encoding

<services>
  <searchroom>
    [see details for conversion in #141]
  </searchroom>
  <library question="[yes or no]">
    [see details for conversion in #140]
  </library>
  <internetAccess question="[yes or no]">
    <descriptiveNote>
      <p xml:lang="[language of p1]" source="[source of p1]">p1</p>
      <p xml:lang="[language of p2]" source="[source of p2]">p2</p>
    </descriptiveNote>
  <internetAccess>
  <techservices>
    [see details for conversion in #142]
  </techservices>
  <recreationalServices>
    <refreshment>
      <descriptiveNote>
        <p xml:lang="[language of p3]" source="[source of p3]">p3</p>
        <p xml:lang="[language of p4]" source="[source of p4]">p4</p>
      </descriptiveNote>
    </refreshment>
    <exhibition>
      <descriptiveNote>
        <p xml:lang="[language of p5]" source="[source of p5]">p5</p>
        <p xml:lang="[language of p6]" source="[source of p6]">p6</p>
      </descriptiveNote>
      <webpage xml:lang="[language of webpage1]" source="[source of webpage1]" href="[link to webpage1]">webpage1</webpage>
    </exhibition>
    <toursSessions>
      <descriptiveNote>
        <p xml:lang="[language of p7]" source="[source of p7]">p7</p>
        <p xml:lang="[language of p8]" source="[source of p8]">p8</p>
      </descriptiveNote>
      <webpage xml:lang="[language of webpage2]" source="[source of webpage2]" href="[link to webpage2]">webpage2</webpage>
    </toursSessions>
    <otherServices>
      <descriptiveNote>
        <p xml:lang="[language of p9]" source="[source of p9]">p9</p>
        <p xml:lang="[language of p10]" source="[source of p10]">p10</p>
      </descriptiveNote>
      <webpage xml:lang="[language of webpage3]" source="[source of webpage3]" href="[link to webpage3]">webpage3</webpage>
    </otherServices>
  </recreationalServices>
</services>

becomes

<control>
  [...]
  <sources>
    <source id="source1">
      <reference>source of p1</reference>
    </source>
    [same for all other @source attributes in the current encoding example]
  </sources>
  [...]
</control>
[...]
<services>
  <searchroom>
    [see details for conversion in #141]
  </searchroom>
  <library question="[yes or no]">
    [see details for conversion in #140]
  </library>
  <internetAccess question="[yes or no]" languageOfElement="[language of p1]" sourceReference="#source1">p1</internetAccess>
  <internetAccess question="[yes or no]" languageOfElement="[language of p2]" sourceReference="#source2">p2</internetAccess>
  <techservices>
    [see details for conversion in #142]
  </techservices>
  <recreationalServices>
    <!-- Please note the attribute @question is required with all sub-elements of <recreationalServices> in EAG 3.0 and has been added during the conversion including the value "yes", assuming that the existence of these optional elements in the EAG file equals the existence of the respective services. Alternatively, you can use the values "yes (condition apply)" or "no". Please change manually if necessary. -->
    <refreshment languageOfElement="[language of p3]" sourceReference="#source3" question="yes">p3</refreshment>
    <refreshment languageOfElement="[language of p4]" sourceReference="#source4" question="yes">p4</refreshment>
    <exhibition languageOfElement="[language of p5]" sourceReference="#source5" question="yes">p5</exhibition>
    <exhibition languageOfElement="[language of p6]" sourceReference="#source6" question="yes">p6</exhibition>
    [If the link and information of the <webpage> element were added directly to the <exhibition> element representing the content of <descriptiveNote><p>, the language attribute for the <webpage> element would need to be skipped, even though it might be different, and it wouldn't be clear where to put the potential content of the <webpage> element. While the latter could be short and essentially represent information to include in @linkTitle, it might also include more comprehensive descriptive information. Hence a separation is suggested below as conversion result.]
    <exhibition languageOfElement="[language of webpage1]" sourceReference="#source7" href="[link to webpage1]" question="yes">webpage1</exhibition>
    <toursSessions languageOfElement="[language of p7]" sourceReference="#source8" question="yes">p7</tourSessions>
    <toursSessions languageOfElement="[language of p8]" sourceReference="#source9" question="yes">p8</tourSessions>
    <toursSessions languageOfElement="[language of webpage2]" sourceReference="#source10" href="[link to webpage2]"  question="yes">webpage2</tourSessions>
    <otherServices languageOfElement="[language of p9]" sourceReference="#source11" question="yes">p9</otherServices>
    <otherServices languageOfElement="[language of p10]" sourceReference="#source12" question="yes">p10</otherServices>
    <otherServices languageOfElement="[language of webpage3]" sourceReference="#source13" question="yes">webpage3</otherServices>
  </recreationalServices>
</services>