altoxml / schema

ALTO XML schema - latest and all former versions
51 stars 4 forks source link

Use of LC xlink instead of w3c xlink fails in mixed validation. Mixup/clashes in schema definitions. #67

Open klindt opened 3 years ago

klindt commented 3 years ago

ALTO (also true for MODS, METS and EAD) uses a LoC version of xlink.xsd (http://www.loc.gov/standards/xlink/xlink.xsd) but with a w3c namespace (https://www.w3.org/1999/xlink.xsd). When validating mixed xml we prefer to use the w3c version of the schema but this fails some cases of LoC standards and using the LoC version does'nt validate other schemas.

Could ALTO be updated to either use w3c xlink.xsd or replace xlink: with something like simpleLink like in the PREMIS3 schema?

Old discussion here: https://listserv.loc.gov/cgi-bin/wa?A2=ind1110&L=MODS&D=0&P=9585

artunit commented 3 years ago

I don't see a problem with doing this but will bring it forward at our next Board meeting, which is tentatively set for 2021-02-25. Thanks for raising this.

jukervin commented 3 years ago

METS is also planning to stop referenceing Xlink.

https://github.com/mets/METS-board/issues/38

artunit commented 3 years ago

Thanks for this example. I think this is a good model to follow and could be part of the next schema revision.

artunit commented 3 years ago

As per the 2021-04-29 Board Meeting, the ALTO schema will be modified to change this line: https://github.com/altoxml/schema/blob/831adab03d0b20d3d6a220f082ce496a18caef12/v4/alto-4-2.xsd#L443 to:

<xsd:attribute  name="simpleLink" type="xs:anyURI"/>

as done in Premis-v3-0 . The reference to the XLink namespace and schema will also be removed.

cipriandinu commented 3 years ago

I have some comments on this proposal The proposed change:

With

as in Premis 3.0, I think that this is not an accurate replacement. Mainly this reduce xLink:simpleLink group of attributes (containing several attributes) to xLink:hRef attribute, and renames it using the group name. More accurate would have been to replace

With

(if we only want to keep only that, not the entire group).

Even this I think is a better replacement, the solution from METS change proposal (the one Jukka outlined) I think is the complete solution – please see bellow changes based on this recommendation. We can use also the Premis 3.0 proposal (original from this post, or the version I have mentioned), but I would change it to the more accurate version, similar with METS proposed changes.

Replace:

with

Add (optional, if we still want to consider valid attribute former xLink:simpleLink, when namespace is used explicit)

Add definition of simpleLink attributes group (we only need this, since in ALTO only simpleLink is used, no other attribute groups from xLink):

What would be the preferred version?
artunit commented 3 years ago

I happy to follow @cipriandinu on this, the solution from METS change proposal as outlined sounds like a good direction. I will add a discussion label to this issue.

cipriandinu commented 1 year ago

On last board meeting discussions we figure out that xLink is not really used in practice. It appears as attribute of BlockType, to indicate links from one particular block to another resource, probably an external one. Usually this mechanism is used in METS to reffer an ALTO block (and in general to identify an external file into FLocat, mptr, etc tags), but inside ALTO, specially as attribute of BlockType does not really makes sense. Due to that an alternative solution that could work is to remove this attribute from BlockType in 5.0. Please vote as ACCEPT if you agree, or in case you know some use cases in practice, please add the info to this topic, so that we reconsider this.

ntra00 commented 1 year ago

ACCEPT

cowboyMontana commented 1 year ago

ACCEPT

callylaw commented 1 year ago

ACCEPT

cipriandinu commented 1 year ago

Based on last board meeting, in case the final decision would be to completely remove xLink references we should announce in schema 4.4 documentation this intention (mark it as obsolete and announce future removal)

cneud commented 1 year ago

Based on last board meeting, in case the final decision would be to completely remove xLink references we should announce in schema 4.4 documentation this intention (mark it as obsolete and announce future removal)

+1 and ACCEPT

cipriandinu commented 1 year ago

Looks like in METS v2 METS Board also intends to remove xLink - see https://github.com/mets/METS-schema/blob/mets2/METS2.md

Haighton commented 1 year ago

ACCEPT

JLoitzenbauer-CRKN commented 1 year ago

ACCEPT

c-sebastien commented 1 year ago

ACCEPT

rajubln commented 1 year ago

ACCEPT

cipriandinu commented 6 months ago

In order to solve this issue a new branch was created (issue-67) from (version5.0) branch (generic one for 5.0 changes). Please check the changes and if you think it completely covers the topic, please vote with ACCEPT, else add you comments and modify schema if needed

cipriandinu commented 6 months ago

ACCEPT

JLoitzenbauer-CRKN commented 6 months ago

ACCEPT

cneud commented 6 months ago

ACCEPT

ntra00 commented 6 months ago

ACCEPT

hanyelsawy commented 6 months ago

ACCEPT

rajubln commented 6 months ago

Accept

jukervin commented 6 months ago

Accept

JLoitzenbauer-CRKN commented 6 months ago

Accept

splet commented 6 months ago

ACCEPT

JLoitzenbauer-CRKN commented 6 months ago

Accept

c-sebastien commented 6 months ago

Accept

callylaw commented 1 month ago

Accept