BH.oM.Adapters.XML.XMLConfig¶
Define configuration settings for pushing and pulling XML files using the XML Adapter.
Class structure¶
Implemented interfaces and base types¶
The XMLConfig is inheriting from the following base type(s) and implements the following interfaces:
- BH.oM.Adapter.ActionConfig
- BH.oM.Base.IObject
- BH.oM.Adapters.XML.IXMLConfig
Properties¶
Defining properties¶
The following properties are defined on the class
Name | Type | Description | Quantity |
---|---|---|---|
File | FileSettings | File settings for the file to push to or pull from. | - |
Schema | Schema | Define the schema which the XML Adapter should be operating with. | - |
Settings | IXMLSettings | Set optional settings to use when pushing or pulling XML based on the chosen schema. | - |
RemoveNils | bool | Determine whether 'nil' XML attributes should be removed when pushing to an XML file. | - |
Inherited properties¶
The following properties are inherited from the base class of the object
Name | Type | Description | Quantity |
---|---|---|---|
WrapNonBHoMObjects | bool | If true, the Push action wraps any non-BHoM type into a BH.oM.Adapter.ObjectWrapper, allowing them to make use of the full Adapter workflow. | - |
AllowHashForComparing | bool | If true and if no specific EqualityComparer is found for the type, Diffing hashes are computed and used to compare the objects. | - |
DiffingConfig | DiffingConfig | Configurations for the Diffing hashing. Requires AllowHashForComparing to be set to true. |
- |
Code and Schema¶
C# implementation¶
C#
public class XMLConfig : BH.oM.Adapter.ActionConfig, BH.oM.Base.IObject, BH.oM.Adapters.XML.IXMLConfig
Assembly: XML_oM.dll
The C# class definition is available on github:
All history and changes of the class can be found by inspection the history.
JSON Schema implementation¶
The object is defined as a JSON schema. You can validate a JSON instance against this schema by reference. To do this, use the schema reference below in a validator like this one.
JSON Schema
{
"$ref" : "https://raw.githubusercontent.com/BHoM/BHoM_JSONSchema/develop/XML_oM/XMLConfig.json"
}
The JSON Schema is available on github here: