-
Notifications
You must be signed in to change notification settings - Fork 35
Description
Ran into some issues with the generated XML metadata. Put this all into one issue/PR because it's all related and each item was relatively small.
After the root element, the namespace is being set to empty.
<lcm:SubmitObjectsRequest xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:3.0" xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
<RegistryObjectList xmlns="">
...
Note the xmlns="" on the RegistryObjectList.
Ability to set text encoding on the XML file.
This requirement comes from one of our partners; they won't process with the default encoding of utf-16 (they require utf-8).
AuthorTelecommunication slot type missing.
It's required in certain situations, but no way to set it (that I can see).
Fix element order.
ExtrinsicObject, CodedValueClassification, and RegistryPackage produce content that doesn't validate against the XSD because the nodes are out of order.
Use a URN for OriginalDocumentAssociation.AssociationKind
Spec calls for the full URN syntax here (urn:oasis:names:tc:ebxml-regrep:AssociationType:HasMember instead of just HasMember).
Null checks on optional slots.
I think this is a broader problem, but I looked here at just a few specific instances that were giving us trouble. There are a few places that aren't checking for nulls returned by SlotValues even on optional slots. When processing a file that omits those slots, it bombs out. I'd prefer this return empty instead of null, but that might be a breaking change.