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
emldworks withschemaLocation:- The
schemaLocationargument onas_xmlused 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
schemaLocationwhen serializing to XML:- When
schemaLocationis present on theemldobject, it is used verbatim (no change in API here) regardless of theschemaLocationargument ofas_xml. - When
schemaLocationis absent on theemldobject:-
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_validateno longer depends onschemaLocationto 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_versionnow 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.
-
-
schemaLocationis now ignored during roundtrip testing because of the new (above) behavior ofemldwith 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
referencesattributes #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
TextTypenodes 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
