[eml-dev] [Bug 3508] New: - create a stylesheet for EML2.0.x to EML 2.1.0
bugzilla-daemon at ecoinformatics.org
bugzilla-daemon at ecoinformatics.org
Mon Oct 6 16:33:43 PDT 2008
http://bugzilla.ecoinformatics.org/show_bug.cgi?id=3508
Summary: create a stylesheet for EML2.0.x to EML 2.1.0
Product: EML
Version: 2.0.1
Platform: Other
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: eml - general bugs
AssignedTo: jones at nceas.ucsb.edu
ReportedBy: mob at icess.ucsb.edu
QAContact: eml-dev at ecoinformatics.org
BugsThisDependsOn: 1132,1152,2054,2568
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)
More information about the Eml-dev
mailing list