Project

General

Profile

Actions

Bug #3508

open

create a stylesheet for EML2.0.x to EML 2.1.0

Added by Margaret O'Brien over 15 years ago. Updated almost 15 years ago.

Status:
New
Priority:
Immediate
Assignee:
Category:
utilities
Target version:
Start date:
10/06/2008
Due date:
% Done:

0%

Estimated time:
Bugzilla-Id:
3508

Description

there are 4 changes in EML 2.1.0 which need to be addressed in a transformation stylesheet. Summarized:
1. datetime -> dateTime (bug #1152)
2. new additionalMetadata/metadata element (bug #2054)
3. method -> methods (bug #2568)
4. access trees moved (bug #1132)

Detailed:
1. xpath in instance docs:
/eml/dataset/dataTable/attributeList/attribute/measurementScale/datetime
becomes .../dateTime

2. xpath in instance docs (* neq <describes>):
/eml/additionalMetadata/* becomes /eml/additionalMetadata/metadata/*

3. method was declared in entity group, so all these paths become "methods":
eml/dataset/dataTable/method
eml/dataset/spatialRaster/method
eml/dataset/spatialReference/method
eml/dataset/spatialVector/method
eml/dataset/view/method
eml/dataset/storedProcedure/method

4. access trees moved:
case 1: access tree at resource level:
/eml/dataset/access and /eml/software/access moved to eml/access

case 2: access tree(s) in additionalMetadata sections:
Current behavior:
Do not recognize <access> siblings of additionalMetadata/describes that reference
/eml/dataset/distribution
/eml/software/distribution

Recognize <access> siblings of additionalMetadata/describes that reference
/eml/dataset/dataTable/physical/distribution
/eml/software/implementation/distribution

recognizable cases:
4.2.1.one additionalMetadata/describes element pointing a recognized node, with one sibling access tree
action: move the access tree, remove additionalMetadata section

4.2.2. two (or more) additionalMetadata/describes elements pointing to recognized nodes, with one sibling access tree
action: copy the access tree to both locations, remove additionalMetadata

4.2.3 two (or more) additonalMetadata/describes
4.2.3.1 references a distribution node
action: remove the <describes>, copy the access tree to the referenced node
4.2.3.2 references some other non-recognized node
action: leave the <describes>,
additionalMetadata/access -> additionalMetadata/metadata/access

4.3. one additionalMetadata/describes element pointing to a recognized node,
with multiple sibling access trees (in eml 2.0.x, these will need to have been wrapped in another element in order to be valid)
action: move nothing. can't deal with elements that arent 2.0.1 [aside: addtionalMetadata section will have <metadata> tag added per item 2. above ]

4.4 the eml-author created access trees in additionalMetadata that contain non-eml material. we cannot move these to other parts of the EML instance document. [aside: If metacat has encountered additional not-eml elements alongside access elements, it would have ignored them.]

To be sure output is valid EML, a script should include the parser to check the doc against the schema. Can the stylesheet do this alone? Jing and margaret not sure.

4.1. assuming stylesheet finds the non-eml material (ie, it can parse), possible actions include:
a? ignore access tree, but wrap it in <metadata> </metadata>
or b? reject document, tell use that the resulting eml will be invalid
or c? rebuild access tree in the new location (ie, try to interpret what author wanted)


Files

eml-datasetWithAccessOverride.xml (3.47 KB) eml-datasetWithAccessOverride.xml Margaret O'Brien, 10/15/2008 04:56 PM

Related issues

Blocks EML - Bug #2568: Inconsistent naming of "method"(s) elementResolvedMargaret O'Brien10/18/2006

Actions
Blocks EML - Bug #1152: datetime element does not use consistent namingResolvedMatt Jones09/23/2003

Actions
Blocks EML - Bug #2054: use of <any> in additionalMetadata is invalidResolvedMatt Jones03/31/2005

Actions
Blocks EML - Bug #1132: fix access control rule ambiguitiesResolvedMatt Jones08/15/2003

Actions
Actions

Also available in: Atom PDF