Changelog
Source:NEWS.md
emld 0.5.1
CRAN release: 2020-09-27
- don’t build vignette on machines that don’t have packages listed in Suggests (these packages must only be used conditionally)
emld 0.5.0
CRAN release: 2020-07-08
User-facing changes:
-
Rewrote logic around how
emld
works withschemaLocation
:- The
schemaLocation
argument onas_xml
used to fill in a default value that pointed to a local copy ofeml.xsd
. Now, it automatically fills in a web-resolvable location to make validating documents easier out of the box.
- The
-
Re-worked the logic for handling
schemaLocation
when serializing to XML:- When
schemaLocation
is present on theemld
object, it is used verbatim (no change in API here) regardless of theschemaLocation
argument ofas_xml
. - When
schemaLocation
is absent on theemld
object:-
as_xml(..., schemaLocation = TRUE)
causes a value to be guessed. -
as_xml(..., schemaLocation = FALSE)
explicitly prevents a value from being filled in when serialized. -
as_xml(..., schemaLocation = "Some value)
explicitly sets the provided value.
-
- When
emld::eml_validate
no longer depends onschemaLocation
to determine the correct XSD to use during schema validation and now uses two helpers (See below) to find the correct schema file. See #52 & #45.emld::eml_version
now allows specifying the version without theeml-
prefix, like `eml_version(“2.1.1”), and will throw a warning when it gets output that doesn’t ’look right rather than silently failing.Fixed a bug where the EML 2.1.1 units dictionary was being used for EML 2.2.0 docs which would cause spurious validation errors. See #56.
Developer-facing (non-exported) changes:
- Added two new helper methods:
-
find_real_root_name(doc : xml_document) : list(prefix : character, name: character)
which returns the namespace prefix and the local name of the root element on anxml_document
. -
guess_root_schema(doc : xml_document) : list(module : character, version : character, namespace : character)
which returns the module, schema version, and namespace URI of the root element on anxml_document
.
-
-
schemaLocation
is now ignored during roundtrip testing because of the new (above) behavior ofemld
with respect toschemaLocation
. - Roundtrip testing can now handle documents that are supposed to be invalid but still roundtripped. Specify intentionally invalid files by adding “invalid” (case insensitive) to the filename in
inst/tests
.
Other changes:
- Minor tweaks to the README. Thanks @jeanetteclark
emld 0.4.0
CRAN release: 2020-02-05
- Fixed serialization bug for
references
attributes #48 - Fixed validation bug: packageId is now used as an identifier for checking uniqueness, and no more errors for annotation elements in additionalMetadata. #49
- Fixed validation bug: XPath was referencing the element rather than the attribute
references
. #47
emld 0.3.0
CRAN release: 2019-10-11
- Updated package to support version 2.2.0 of EML. #40. See the EML website for more information on the 2.2.0 release.
- Fixed a minor XML serialization issue with
TextType
nodes where extra whitespace was being added. #37. - Relaxed
eml_validate
’s behavior when validating custom units. #35.
emld 0.2.0
CRAN release: 2019-03-06
- Implemented changes requested by rOpenSci review, as detailed in #30