<?xml version="1.0"?>
<doc>
    <assembly>
        <name>AML.Engine.Services</name>
    </assembly>
    <members>
        <member name="T:Aml.Engine.Services.CAEXFileStatisticService">
            <summary>
                This service calculates statistics for a CAEX document.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IStatistic" />
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.Register">
            <summary>
                Registers a new instance of a CAEXFileStatisticService with the <see cref="T:Aml.Engine.Services.ServiceLocator" /> of the AMLEngine.
            </summary>
            <returns>The service instance</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.UnRegister">
            <summary>
                Unregisters this service
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfAllObjects(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all objects (sum of all others with specific counts) and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>Total number of all countable objects.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfAttributes(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all Attribute objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>Total number of all attributes.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfAttributeTypeReferences(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all Attribute type reference objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>Total number of all attribute type references.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfAttributeTypes(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all AttributeType objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all AttributeTypes
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfInterfaceClasses(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all InterfaceClass objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all InterfaceClasses
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfInterfaceInstances(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all ExternalInterface objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all ExternalInterfaces
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfInternalElements(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all InternalElement objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all InternalElements
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfLinks(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all InternalLink objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all InternalLinks
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfRoleClasses(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all RoleClass objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all RoleClasses
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfRoleClassReferences(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all RoleClass reference (RoleRequirements and SupportedRoleClass) objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all RoleClasses references
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfSystemUnitClasses(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all SystemUnitClass objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all SystemUnitClasses
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXFileStatisticService.NumberOfSystemUnitClassReferences(Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Counts all SystemUnitClass reference objects and returns the result.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                Total number of all SystemUnitClasses
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.AML.DocumentReferenceDictionary`1.ClearDisposed(System.Xml.Linq.XDocument)">
            <summary>
                Clears the disposed documents from the dictionary.
            </summary>
        </member>
        <member name="T:Aml.Engine.Services.ExternalReferenceResolver">
            <summary>
                This class implements the <see cref="T:Aml.Engine.Services.Interfaces.IExternalReferenceResolver" /> service interface. With this service it is
                possible to access CAEX objects which are outsourced into external documents and referenced using alias names.
                Normally the service is located by other services like query services. They can call this service to resolve an
                external reference if an alias is part of a CAEX path in any query.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IExternalReferenceResolver" />
        </member>
        <member name="M:Aml.Engine.Services.ExternalReferenceResolver.Register">
            <summary>
                Registers a service to resolve external references.
            </summary>
            <returns>The registered service.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ExternalReferenceResolver.UnRegister">
            <summary>
                Unregister this service
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ExternalReferenceResolver.LoadOrGetReferencedDocument(Aml.Engine.CAEX.ExternalReferenceType)">
            <summary>
                This method is used to load an outsourced CAEX document. The external representation for that document is defined
                in the provided
                ExternalReference object. The CAEXDocument is loaded as a new 'stand alone' document, which means that no libraries
                of the
                loaded document are merged to the original referencing document. The ExternalReference is not changed and all
                external references
                in the original document which use the alias name in a path- or id-reference will not change too. A merge of
                documents can only
                be requested by a <see cref="T:Aml.Engine.Services.Interfaces.IMerge" /> service.
            </summary>
            <param name="externalReference">the ExternalReference object</param>
            <returns>
                If the ExternalReference doesn't have an alias, the document is not loaded. If a referenced document for the alias
                already exists,
                the existing document is returned.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ExternalReferenceResolver.LoadOrGetReferencedDocument(Aml.Engine.CAEX.CAEXDocument,System.String)">
            <summary>
                Determines, if the provided path contains an alias and gets the resolved document
                for that alias.
            </summary>
            <param name="document">The CAEX document, which provides the ExternalReference to resolve the 'Alias'.</param>
            <param name="path">The CAEX path which contains an 'Alias'.</param>
            <returns>
                The resolved document for the alias, extracted from the path.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ExternalReferenceResolver.ResolvedDocuments(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Gets all already resolved externals for the provided CAEXDocument containing ExternalReference objects
            </summary>
            <param name="documentWithExternals">The CAEX document, containing ExternalReference objects.</param>
            <returns>
                An enumeration of all CAEX documents, which have been loaded from the ExternalReferences.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ExternalReferenceResolver.ClearDisposed">
            <summary>
                Clears the disposed documents from the dictionary
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXNameReferenceTable.AddReference(System.String,System.Xml.Linq.XAttribute,System.Xml.Linq.XElement)">
            <summary>
                Adds the specified reference to the node collection assigned to the provided key.
                If no node collection exists, a new collection is added for the given key.
                Before the reference is added, it is checked, if referenced elements exist. If no element exists,
                the reference is not added. If elements exists, these elements are added too.
            </summary>
            <param name="key">The key.</param>
            <param name="reference">The attribute used to reference an element.</param>
            <param name="referencedElement">The referenced Element if not null</param>
            <returns>The node collection, if the reference was added; otherwise false.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXNameReferenceTable.UpdateElement(System.String,System.String,System.Xml.Linq.XElement)">
            <summary>
                Updates all name references, which use the provided "oldName" to reference an element.
            </summary>
            <param name="oldKey">The old name.</param>
            <param name="newKey">The new name.</param>
            <param name="element">The referenced element, which will change its name from oldName to newName.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXNameReferenceTable.ElementReferences(System.Collections.Generic.IEnumerable{System.Xml.Linq.XAttribute},System.Xml.Linq.XElement)">
            <summary>
                Gets all attributes from the reference collection, which define references to the provided element.
            </summary>
            <param name="referenceCollection">The reference collection.</param>
            <param name="element">The referenced element.</param>
            <returns>All attributes from the reference collection, which define references to the provided element</returns>
        </member>
        <member name="T:Aml.Engine.Services.MergeService">
            <summary>
                This class implements a merge service which is able to merge CAEX documents from different sources into one
                common document. The merge service adds the libraries from the external referenced file into the target document
                and updates all references, which use an alias and can be resolved after the merge. If a library, which is used
                in the external source, also exists in the target document, this library is replaced, if the library version in the
                external source is newer. If not the existing library is kept. If an InstanceHierarchy in the external source can
                be identified as an outsourced Master InternalElement, it is tried to add the Master InternalElement back to its
                original position.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IMerge" />
        </member>
        <member name="M:Aml.Engine.Services.MergeService.Register">
            <summary>
                Registers a new instance of a MergeService with the <see cref="T:Aml.Engine.Services.ServiceLocator" /> of the AMLEngine.
            </summary>
            <returns>The service instance</returns>
        </member>
        <member name="M:Aml.Engine.Services.MergeService.UnRegister">
            <summary>
                Unregisters this service
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.MergeService.Merge(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.ExternalReferenceType,System.IO.Stream,System.String[]@,System.Boolean)">
            <summary>
                Merges the defined ExternalReference into the provided CAEXDocument. The source is loaded from the provided
                external source stream.
            </summary>
            <param name="document">The document.</param>
            <param name="externalReference">The external reference.</param>
            <param name="externalSource">The external source stream.</param>
            <param name="mergeProtocol">The merge protocol.</param>
            <param name="autoTransform">if set to <c>true</c> the service performs a schema transformation if necessary.</param>
            <returns>
                <c>true</c>, if merge was successful
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.MergeService.Merge(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.ExternalReferenceType,System.String[]@,System.Boolean)">
            <summary>
                Merges the defined ExternalReference into the provided CAEXDocument.
            </summary>
            <param name="document">The document.</param>
            <param name="externalReference">The external reference.</param>
            <param name="mergeProtocol">The merge protocol.</param>
            <param name="autoTransform">if set to <c>true</c> the service performs a schema transformation if necessary.</param>
            <returns>
                <c>true</c>, if merge was successful
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.MergeService.ExternalLibrariesForImport``1(Aml.Engine.CAEX.CAEXSequenceOfCAEXObjects{``0},System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.ICollection{System.String})">
            <summary>
                Gets the external libraries from the source which should be imported into the target.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="target">The target.</param>
            <param name="source">The source.</param>
            <param name="protocol">The protocol.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.MergeService.LoadExternalSource(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.ExternalReferenceType,Aml.Engine.CAEX.CAEXDocument@,System.String[]@,System.Boolean)">
            <summary>
                Tries to load the external source which is defined in the external reference.
            </summary>
            <param name="document">The document.</param>
            <param name="externalReference">The external reference.</param>
            <param name="source">The source.</param>
            <param name="mergeProtocol">The merge protocol.</param>
            <param name="autoTransform">if set to <c>true</c> [automatic transform].</param>
            <returns>
                <c>true</c>, if loaded; otherwise <c>false</c>.
            </returns>
        </member>
        <member name="T:Aml.Engine.Services.NamespaceDoc">
            <summary>
                The Aml.Engine.Services namespace contains classes that define and implement specific Services
                that provide additional features for the processing of AMLDocuments. Registered services
                are located by the AMLEngine and can enhance API methods to provide faster queries or automated
                name assignment to added elements.
            </summary>
        </member>
        <member name="T:Aml.Engine.Services.INodeDictionary`1">
            <summary>
                This interface defines methods, each NodeDictionary should provide.
            </summary>
            <typeparam name="T"></typeparam>
            <seealso cref="T:System.Collections.Generic.IDictionary`2" />
        </member>
        <member name="M:Aml.Engine.Services.INodeDictionary`1.AddElement(System.String,System.Xml.Linq.XElement)">
            <summary>
                Adds the specified element to the node collection identified with the provided key.
                If no node collection exists, a new collection is added for the given key.
            </summary>
            <param name="key">The key.</param>
            <param name="element">The element.</param>
            <returns>The node collection</returns>
        </member>
        <member name="M:Aml.Engine.Services.INodeDictionary`1.AddReference(System.String,System.Xml.Linq.XAttribute,System.Xml.Linq.XElement)">
            <summary>
                Adds the specified reference to the node collection assigned to the provided key.
                If no node collection exists, a new collection is added for the given key.
            </summary>
            <param name="key">The key.</param>
            <param name="reference">The attribute used to reference an element.</param>
            <param name="referencedElement">The referenced element, if already known.</param>
            <returns>
                The node collection
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.INodeDictionary`1.RemoveElement(System.String,System.Xml.Linq.XElement,System.Boolean)">
            <summary>
                Removes the element. If this is the last element in the
                collection, remaining references will be deleted and the key is deleted from the dictionary.
            </summary>
            <param name="key">The key.</param>
            <param name="element">The node.</param>
            <param name="updateReferences">if set to <c>true</c> reference attribute values will be set to <c>null</c>.</param>
        </member>
        <member name="M:Aml.Engine.Services.INodeDictionary`1.RemoveReference(System.String,System.Xml.Linq.XAttribute)">
            <summary>
                Removes the reference from the collection. If this is the last item in the
                collection, the key is deleted from the dictionary.
            </summary>
            <param name="key">The key.</param>
            <param name="reference">The node.</param>
        </member>
        <member name="T:Aml.Engine.Services.CAEXReferenceTable">
            <summary>
                This class implements a dictionary which allows the association of multiple nodes to the same key. The source of
                the key is an attribute value of a CAEX object. The nodes are assembled into a <see cref="T:Aml.Engine.Services.NodeCollection" />.
            </summary>
            <seealso cref="T:System.Collections.Generic.Dictionary`2" />
            <seealso cref="T:Aml.Engine.Services.INodeDictionary`1" />
        </member>
        <member name="T:Aml.Engine.Services.NodeDictionary`1">
            <summary>
                Generic class for all node dictionaries
            </summary>
            <typeparam name="T"></typeparam>
            <seealso cref="T:System.Collections.Generic.Dictionary`2" />
            <seealso cref="T:Aml.Engine.Services.INodeDictionary`1" />
        </member>
        <member name="P:Aml.Engine.Services.NodeDictionary`1.Item(System.String)">
            <summary>
                Gets and sets the <see cref="T:Aml.Engine.Services.NodeCollection" /> with the specified key. If no entry exists, the value is
                <c>null</c>.
            </summary>
            <param name="key">The key.</param>
            <returns>a node collection</returns>
        </member>
        <member name="M:Aml.Engine.Services.NodeDictionary`1.AddElement(System.String,System.Xml.Linq.XElement)">
            <summary>
                Adds the specified element to the node collection identified with the provided key.
                If no node collection exists, a new collection is added for the given key.
            </summary>
            <param name="key">The key.</param>
            <param name="element">The element.</param>
            <returns>
                The node collection
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.NodeDictionary`1.AddReference(System.String,System.Xml.Linq.XAttribute,System.Xml.Linq.XElement)">
            <summary>
                Adds the specified reference to the node collection assigned to the provided key.
                If no node collection exists, a new collection is added for the given key.
            </summary>
            <param name="key">The key.</param>
            <param name="reference">The attribute used to reference an element.</param>
            <param name="referencedElement">The referenced element, if already known.</param>
            <returns>
                The node collection
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.NodeDictionary`1.RemoveReference(System.String,System.Xml.Linq.XAttribute)">
            <summary>
                Removes the reference from the collection. If this is the last item in the
                collection, the key is deleted from the dictionary.
            </summary>
            <param name="key">The key.</param>
            <param name="reference">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.NodeDictionary`1.RemoveElement(System.String,System.Xml.Linq.XElement,System.Boolean)">
            <summary>
                Removes the element. If this is the last element in the
                collection, remaining references will be deleted and the key is deleted from the dictionary.
                If updating is enabled, the registered references will all get a value of <c>null</c>.
            </summary>
            <param name="key">The key.</param>
            <param name="element">The node.</param>
            <param name="updateReferences">if set to <c>true</c> [update references].</param>
        </member>
        <member name="M:Aml.Engine.Services.NodeDictionary`1.RemoveUnusedReferences(`0,System.Xml.Linq.XElement)">
            <summary>
                Removes the unused references in a collection. Unused references may exist, after an element
                is deleted. <see cref="M:Aml.Engine.Services.NodeDictionary`1.RemoveElement(System.String,System.Xml.Linq.XElement,System.Boolean)" />
            </summary>
            <param name="collection">The collection.</param>
            <param name="element">The element.</param>
        </member>
        <member name="M:Aml.Engine.Services.NodeDictionary`1.UpdateReferences(`0,System.Xml.Linq.XElement,System.String,System.Boolean,System.String)">
            <summary>
                Updates the references in a collection. Updates are applied, if the updating mode is
                on and a referenced element is removed or changed.
            </summary>
            <param name="collection">The collection.</param>
            <param name="element">The element.</param>
            <param name="newValue">The value.</param>
            <param name="elementDeleted">if set to <c>true</c> the referenced element has been deleted.</param>
            <param name="oldValue">The actual registry key.</param>
        </member>
        <member name="T:Aml.Engine.Services.CAEXLookupTables">
            <summary>
                This class is used to get key-based access to XML nodes of an CAEX document using an identifying string.
                Currently the CAEX ID and the CAEX Name of an XML node are valid keys. The class currently
                uses three different tables to store nodes. The IDTable is used to identify nodes with the CAEX ID. The
                PathTable is used to identify nodes with the CAEXPath and the Alias of an ExternalReference object is
                used to identify nodes which contain references to nodes which are not contained in the current document
                but stored in an externally referenced document.
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.CAEXLookupTables.INVALIDREF">
            <summary>
                The Key used to identify elements which define a reference attribute but with an invalid value
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.CAEXLookupTables.NOKEY">
            <summary>
                The Key used to identify elements which don't define an ID but should have one.
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.CAEXLookupTables.NOREF">
            <summary>
                The Key used to identify elements which don't define a reference attribute but should have one.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.#ctor(System.Xml.Linq.XElement)">
            <summary>
                Initializes a new instance of the <see cref="T:Aml.Engine.Services.CAEXLookupTables" /> class.
            </summary>
            <param name="root">The root.</param>
        </member>
        <member name="P:Aml.Engine.Services.CAEXLookupTables.AliasTable">
            <summary>
                Gets the alias table. This Table contains the ExternalReference objects as well as the references using
                the alias of the ExternalReference.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.CAEXLookupTables.IDTable">
            <summary>
                Gets the identifier table. This Table contains the Elements identifiable by an ID as well as the references
                to the element using the ID.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.CAEXLookupTables.NameTable">
            <summary>
                Gets the name table. This Table contains the Elements which reference another element using the name of that
                element.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.CAEXLookupTables.PathTable">
            <summary>
                Gets the path table. This Table contains the Elements identifiable by a CAEXPath as well as the references
                to the element using the Path.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.CAEXLookupTables.Root">
            <summary>
                Gets the root which creates the dictionary.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.AddElementAndDescandants(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement)">
            <summary>
                Adds the specified XML element and all its descendants to the table. An element is added
                if it is a CAEXClass <see cref="M:Aml.Engine.Xml.Extensions.XmlCAEXSchema.IsCAEXClass(System.Xml.Linq.XElement,System.Boolean)" />,
                an element with an identifier <see cref="M:Aml.Engine.Xml.Extensions.XmlCAEXSchema.IsElementWithID(System.Xml.Linq.XElement)" />,
                an element with an ID reference <see cref="M:Aml.Engine.Xml.Extensions.XmlCAEXSchema.IsElementWithIDReference(System.Xml.Linq.XElement)" /> or
                an element with a Path reference <see cref="M:Aml.Engine.Xml.Extensions.XmlCAEXSchema.IsElementWithPathReference(System.Xml.Linq.XElement)" />.
            </summary>
            <param name="service">The service.</param>
            <param name="element">The element.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.AddWithID(System.Xml.Linq.XElement)">
            <summary>
                Adds the provided node if not already added using its CAEX ID as the key. If the ID is missing, the node
                is added with the "NOKEY" identifier.
            </summary>
            <param name="node">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.AddWithIDReference(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement)">
            <summary>
                Adds the provided node if not already added using its ID reference attribute as the key.
            </summary>
            <param name="service">The service.</param>
            <param name="node">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.AddWithNameReference(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement)">
            <summary>
                Adds an lookup table entry with name reference.
            </summary>
            <param name="service">The service.</param>
            <param name="node">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.AddWithPathReference(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement)">
            <summary>
                Adds the node using its path reference attribute as the key.
            </summary>
            <param name="service">The service.</param>
            <param name="node">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindAllElementsIdentifiedByCAEXPath(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Finds all the elements, which are identifiable by a CAEX path and are descendants of the
                specified CAEX object. Only elements are included, which can be referenced by their path
                from other CAEX objects. These includes also the elements, which
                represent an element on the path (like class libraries). The elements are put into a lookup table,
                using the path as a key.
                Elements, having the same CAEX path are grouped together.The Elements are represented as
                <see cref="T:Aml.Engine.Services.ReferenceElement" />.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>Elements, which are identifiable by a CAEX path.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindAllElementsWithAliasReference(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Finds all elements with IDs, which are descendants of the provided CAEX object.
                Elements, using the same ID are grouped together.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>Elements with an ID</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindAllElementsWithCAEXPathReference(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Finds all the elements, which are have a reference to a class using a CAEX path. The elements are put into a
                dictionary,
                using the path as a key. The Elements are represented as <see cref="T:Aml.Engine.Services.ReferenceElement" />.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindAllElementsWithIDReference(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Finds all elements which have references to other elements using the ID of the referenced element
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindAllElementsWithIDs(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Finds all elements with IDs.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindAllElementsWithNameReference(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Finds all elements with a name reference, which are descendants of the provided CAEX objects. Elements
                using the same name in their reference are grouped together. A name reference uses the CAEX attribute Name
                of another CAEX object to reference that CAEX object.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>Elements with name references.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindNodeListWithAlias(System.String)">
            <summary>
                Finds the table value using the Alias as a key
            </summary>
            <param name="alias">The alias.</param>
            <returns>
                the identified table value
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindNodeListWithID(System.String,System.Boolean@)">
            <summary>
                Finds the table value using the ID as a key
            </summary>
            <param name="id">The ID.</param>
            <param name="isAlias">if set to <c>true</c> [is alias].</param>
            <returns>
                the identified table value
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.FindNodeListWithPath(System.String,System.Boolean@)">
            <summary>
                Finds the table value using the path as a key
            </summary>
            <param name="path">The path.</param>
            <param name="isAlias">if set to <c>true</c> [is alias].</param>
            <returns>
                the identified table value
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.InterfacesWithInternalLinkRelations">
            <summary>
                Gets all ExternalInterface objects which are used in InternalLinks.
            </summary>
            <returns>A collection of all ExternalInterface objects, having an associated InternalLink.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.OnChangedReference(Aml.Engine.Services.LookupService,Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs,Aml.Engine.CAEX.Commands.CAEXElementChangeMode)">
            <summary>
                Called when [changed reference].
            </summary>
            <param name="service">The service.</param>
            <param name="changeInfo">The <see cref="T:Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs" /> instance containing the event data.</param>
            <param name="changeMode">The change mode.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.OnChangingReference(Aml.Engine.Services.LookupService,Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs,Aml.Engine.CAEX.Commands.CAEXElementChangeMode)">
            <summary>
                Handles the <see cref="E:ChangingReference" /> event.
            </summary>
            <param name="service">The service.</param>
            <param name="changeInfo">The <see cref="T:Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs" /> instance containing the event data.</param>
            <param name="changeMode">The change mode.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.RemoveElementAndDescendants(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement,System.Boolean)">
            <summary>
                Updates the complete table for all descendants of the associated root node.
            </summary>
            <param name="service">The service.</param>
            <param name="element">The element.</param>
            <param name="autoUpdate">if set to <c>true</c> [automatic update].</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.Update(Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs,Aml.Engine.CAEX.Commands.CAEXElementChangeMode,System.Boolean)">
            <summary>
                This method is used to handle a name change for any CAEX element, which is a CAEXClass. It will updated the
                elements registration
                and also - if the auto update is enabled - the updates for all references to this element and nested CAEXClass
                elements.
            </summary>
            <param name="changeInfo">The <see cref="T:Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs" /> instance containing the change information.</param>
            <param name="changeMode">The change mode.</param>
            <param name="isAutoUpdateEnabled">if set to <c>true</c> [is automatic update enabled].</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.IsSpecialRefKey(System.String)">
            <summary>
                Determines whether the specified key is a special reference key used to identify
                invalid and missing references.
            </summary>
            <param name="key">The key.</param>
            <returns>
                <c>true</c> if the specified key is a special reference key; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.ActionWithIDReference(System.Xml.Linq.XElement,System.Func{System.String,System.Xml.Linq.XAttribute,Aml.Engine.Services.NodeDictionary{Aml.Engine.Services.NodeCollection},Aml.Engine.Services.NodeCollection})">
            <summary>
                this methods applies the specified action on all IDReference attributes of the provided node.
            </summary>
            <param name="node">The node.</param>
            <param name="action">The action.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.ActionWithNameReference(System.Xml.Linq.XElement,System.Func{System.String,System.Xml.Linq.XAttribute,Aml.Engine.Services.NodeDictionary{Aml.Engine.Services.NodeCollection},Aml.Engine.Services.NodeCollection})">
            <summary>
                this methods applies the specified action on all Name Reference attributes of the provided node.
            </summary>
            <param name="node">The node.</param>
            <param name="action">The action.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.ActionWithPathReference(System.Xml.Linq.XElement,System.Func{System.String,System.String[],System.Xml.Linq.XAttribute,Aml.Engine.Services.NodeDictionary{Aml.Engine.Services.NodeCollection},Aml.Engine.Services.NodeCollection})">
            <summary>
                this methods applies the specified action on all path reference attributes of the provided node.
            </summary>
            <param name="node">The node.</param>
            <param name="action">The action.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.AliasReferenceKey(System.String,System.String[]@,Aml.Engine.Services.NodeDictionary{Aml.Engine.Services.NodeCollection}@)">
            <summary>
                Get the key to identify items which use an alias in their reference. If the reference doesn't contain
                an alias, the result is <c>null</c>.
            </summary>
            <param name="reference">The reference.</param>
            <param name="pathParts">The path parts array, which is created to identify an alias in the reference.</param>
            <param name="table">If an alias is identified, this is the alias table.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.IDKeyFromReference(System.String,System.Xml.Linq.XAttribute,System.String,System.Xml.Linq.XElement,Aml.Engine.Services.NodeDictionary{Aml.Engine.Services.NodeCollection}@)">
            <summary>
                Builds an ID-Key from the provided reference.
            </summary>
            <param name="reference">The reference.</param>
            <param name="attribute">The attribute.</param>
            <param name="attributeName">Name of the attribute.</param>
            <param name="owner">The owner.</param>
            <param name="table">The table which has to be used with the identified key.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.IDReferenceKey(System.String)">
            <summary>
                Get the key to identify items which use an ID in their reference. If the reference is not a valid
                GUID, the key is set to <c>INVALIDREF</c>.
            </summary>
            <param name="key">The key.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.NameKeyFromReference(System.String,System.Xml.Linq.XAttribute,System.String,System.Xml.Linq.XElement,System.String[]@,Aml.Engine.Services.NodeDictionary{Aml.Engine.Services.NodeCollection}@)">
            <summary>
                Builds a Name-Key from the provided reference.
            </summary>
            <param name="reference">The reference.</param>
            <param name="attribute">The attribute.</param>
            <param name="attributeName">Name of the attribute.</param>
            <param name="owner">The owner.</param>
            <param name="pathParts">The path parts.</param>
            <param name="table">The table, which has to be used with the identified key.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.NoReferenceKey(System.Xml.Linq.XAttribute,System.String,System.Xml.Linq.XElement)">
            <summary>
                Get a key to identify items, which don't define a reference but need to do so.
            </summary>
            <param name="attribute">The attribute.</param>
            <param name="attributeName">Name of the attribute.</param>
            <param name="owner">The owner.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.PathKeyFromReference(System.String,System.Xml.Linq.XAttribute,System.String,System.Xml.Linq.XElement,System.Boolean@,System.String[]@)">
            <summary>
                Builds a Path-Key from the provided reference.
            </summary>
            <param name="reference">The reference.</param>
            <param name="attribute">The attribute.</param>
            <param name="attributeName">Name of the attribute.</param>
            <param name="owner">The owner.</param>
            <param name="isAlias">if set to <c>true</c> [is alias].</param>
            <param name="pathParts">The path parts.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.RemoveWithID(System.Xml.Linq.XElement,System.Boolean)">
            <summary>
                Removes the node, registered with its ID from the table. All references to the ID are moved
                to the 'invalid' entry.
            </summary>
            <param name="node">The node.</param>
            <param name="updateReferences">if set to <c>true</c> [update references].</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.RemoveWithIDReference(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement)">
            <summary>
                Removes the ID-references registered with this node from the table.
            </summary>
            <param name="service">The service.</param>
            <param name="node">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.RemoveWithNameReference(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement)">
            <summary>
                Removes the Name-references registered with this node from the table.
            </summary>
            <param name="service">The service.</param>
            <param name="node">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.RemoveWithPath(System.Xml.Linq.XElement,System.Boolean)">
            <summary>
                Removes the node, registered with its CAEXPath from the <see cref="P:Aml.Engine.Services.CAEXLookupTables.PathTable" />.
            </summary>
            <param name="node">The node.</param>
            <param name="updateReferences">if set to <c>true</c> [update references].</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXLookupTables.RemoveWithPathReference(Aml.Engine.Services.LookupService,System.Xml.Linq.XElement)">
            <summary>
                Removes all path references which have been registered with this node.
            </summary>
            <param name="service">The service.</param>
            <param name="node">The node.</param>
        </member>
        <member name="T:Aml.Engine.Services.NodeCollection">
            <summary>
                This class implements a list of <see cref="T:System.Xml.Linq.XObject" />s. The list may contain different
                types of objects, <see cref="T:System.Xml.Linq.XElement" />s and <see cref="T:System.Xml.Linq.XAttribute" />s.
            </summary>
            <seealso cref="T:System.Collections.Generic.HashSet`1" />
        </member>
        <member name="P:Aml.Engine.Services.NodeCollection.Attributes">
            <summary>
                Gets all XAttributes from the Node list.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.NodeCollection.Elements">
            <summary>
                Gets all XElements from the Node list.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.NodeCollection.HasReferences">
            <summary>
                Gets a value indicating whether this instance contains <see cref="T:System.Xml.Linq.XAttribute" />a. An XAttribute represents
                a reference to another node. The reference element is the parent of the attribute.
            </summary>
            <value>
                <c>true</c> if this instance has references; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:Aml.Engine.Services.NodeCollection.References">
            <summary>
                Gets all XElements from the Node list which are references. These are all parent nodes of the
                attribute elements in the list.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.NodeCollection.Add(System.Xml.Linq.XObject)">
            <summary>
                Adds the specified node to the list, if it is not already contained.
            </summary>
            <param name="node">The node.</param>
        </member>
        <member name="T:Aml.Engine.Services.LookupService">
            <summary>
                This class is a query service based on dictionaries.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IQuery" />
            <seealso cref="T:Aml.Engine.Services.Interfaces.IAutoUpdate" />
            <seealso cref="T:System.ComponentModel.INotifyPropertyChanged" />
        </member>
        <member name="M:Aml.Engine.Services.LookupService.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:Aml.Engine.Services.LookupService" /> class.
            </summary>
        </member>
        <member name="E:Aml.Engine.Services.LookupService.ReferenceUpdated">
            <summary>
                Occurs when any reference has been updated.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.LookupService.IsAutoUpdateEnabled">
            <summary>
                Gets or sets a value indicating whether this instance will automatically update
                cross references between AutomationML objects.
            </summary>
            <value>
                <c>true</c> if the automatic update is enabled; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.Register">
            <summary>
                Registers a new instance of a LookupService with the <see cref="T:Aml.Engine.Services.ServiceLocator" /> of the AMLEngine.
            </summary>
            <returns>The service instance</returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.UnRegister">
            <summary>
                Unregisters this service
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AddDocument(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Adds the document to the query service. All tables for the document will be created.
            </summary>
            <param name="doc">The document.</param>
            <exception cref="T:System.ArgumentNullException">doc</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.RemoveDocument(Aml.Engine.XML.XDocumentWrapper)">
            <summary>
                Removes the document from the query service. All tables for the document will be unloaded.
            </summary>
            <param name="doc">The document.</param>
            <exception cref="T:System.ArgumentNullException">doc</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllClassReferences(Aml.Engine.CAEX.CAEXDocument,System.String,System.String)">
            <summary>
                Gets all classes which have references to the provided class path. Use this method to get all classes which have
                a class to class relation to the class, identified by the provided classPath. If the
                <paramref name="elementName" /> is
                set, only classes with the defined element name are considered.
            </summary>
            <param name="document">The CAEX document which is searched through.</param>
            <param name="classPath">The class path.</param>
            <param name="elementName">
                Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and
                'AttributeType'.
            </param>
            <returns>
                An enumeration of all classes which use the identified class as a base class.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllClassReferences(Aml.Engine.CAEX.CAEXObject)">
            <summary>
                Gets all classes which have references to the provided CAEX object. Use this method to get all classes which have
                a class to class relation to the provided CAEX object.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>
                An enumeration of all classes which use the provided CAEX object as a base class.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllClassReferencesDeep(Aml.Engine.CAEX.CAEXObject)">
            <summary>
                Gets all classes which have references to the provided CAEX object and their referencing classes (recursive).
                This method extends the
                <see cref="M:Aml.Engine.Services.Interfaces.IQuery.AllClassReferences(Aml.Engine.CAEX.CAEXObject)" /> and gets not
                only the directly
                derived classes of a base class but also the derived classes of these classes and further on.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>
                The derived classes tree for the specified base class.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllClassReferencesDeep(Aml.Engine.CAEX.CAEXDocument,System.String,System.String)">
            <summary>
                Gets all classes which have references to the provided CAEX object and their referencing classes (recursive).
                This method extends the
                <see
                    cref="M:Aml.Engine.Services.Interfaces.IQuery.AllClassReferences(Aml.Engine.CAEX.CAEXDocument,System.String,System.String)" />
                and gets not only the directly
                derived classes of a base class but also the derived classes of these classes and further on. If the
                <paramref name="elementName" /> is
                set, only classes with the defined element name are considered.
            </summary>
            <param name="document">The CAEX document which is searched through.</param>
            <param name="classPath">The class path.</param>
            <param name="elementName">
                Name of the element. Valid values are 'RoleClass', 'SystemUnitClass', 'InterfaceClass' and
                'AttributeType'.
            </param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllElementsIdentifiedByCAEXPath(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Gets all the elements which are descendants of the provided CAEX object and are identifiable by a CAEX path.
                Elements having the same path are grouped together.
                Use this method to validate the existence of ambiguous CAEXPaths.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>
                Lookup table of elements which are identifiable by a CAEX path.
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllElementsWithAliasReference(Aml.Engine.CAEX.CAEXBasicObject,System.String)">
            <summary>
                Gets all the elements which are descendants of the provided CAEX object and use an alias reference.
                Elements referencing the same Alias are grouped together.
                Use this method to validate the existence of referenced externals. If the <paramref name="elementName" /> is
                set, only elements with the defined element name are considered.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="elementName">If parameter is set, only elements with the given element Name are considered.</param>
            <returns>
                Lookup table of elements with Alias references.  The Alias part of the CAEXPath is used as a dictionary key.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllElementsWithCAEXPathReference(Aml.Engine.CAEX.CAEXBasicObject,System.String)">
            <summary>
                Gets all the elements which are descendants of the provided CAEX object and use a path reference.
                Elements referencing the same path are grouped together.
                Use this method to validate the existence of referenced classes. If the <paramref name="elementName" /> is
                set, only elements with the defined element name are considered.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="elementName">If parameter is set, only elements with the given element Name are considered.</param>
            <returns>
                Lookup table of elements with path references. The CAEXPath is used as a grouping key.
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllElementsWithIDReference(Aml.Engine.CAEX.CAEXBasicObject,System.String)">
            <summary>
                Gets all the elements which are descendants of the provided CAEX object and which use identifier references.
                Elements referencing the same ID are grouped together.
                Use this method to validate the existence of referenced IDs. If the <paramref name="elementName" /> is
                set, only elements with the defined element name are considered.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="elementName">If parameter is set, only elements with the given element Name are considered.</param>
            <returns>
                Lookup table of elements with ID references.  The ID is used as a dictionary key.
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllElementsWithIDs(Aml.Engine.CAEX.CAEXBasicObject,System.String)">
            <summary>
                Gets all the elements which are descendants of the provided CAEX object with IDs.
                Elements using the same ID are grouped together.
                Use this method to validate the uniqueness of IDs.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="ID">If an ID is specified, only elements with the defined ID are searched.</param>
            <returns>
                Lookup table of elements with IDs.  The ID is used as a dictionary key.
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllElementsWithInternalLinks(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Returns all Elements which are descendants of the provided CAEX object with InternalLinks.
                These elements are the owners of the InternalLink objects.
                The returned collection may contain InternalElements and SystemUnitClasses as well.
            </summary>
            <param name="caexObject">The CAEX object</param>
            <returns>
                A collection of all objects with associated InternalLinks.
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
            <remarks>
                Note the difference to the method
                <see
                    cref="M:Aml.Engine.Services.Interfaces.IQuery.ElementsWithInternalLinkRelations(Aml.Engine.CAEX.CAEXBasicObject)" />
                which doesn't return the
                owners of an InternalLink but the related elements.
            </remarks>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllElementsWithNameReference(Aml.Engine.CAEX.CAEXBasicObject,System.String)">
            <summary>
                Gets all the elements which are descendants of the provided CAEX object and use a name reference.
                Elements referencing the same name are grouped together.
                Use this method to validate the existence of referenced elements.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="elementName"></param>
            <returns>
                Lookup table of elements with name references. The name is used as a grouping key.
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllExternalDataReferences(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
            Returns all ExternalInterfaces in the provided document or optionally
            in the caexObject and descendants,  which are
            instances of the standard Interface class
            <see cref="F:Aml.Engine.AmlObjects.AutomationMLInterfaceClassLib.ExternalDataConnector" />.
            </summary>
            <param name="document">The document.</param>
            <param name="caexObject">Optional parameter, defining a possible start object for the query.</param>
            <returns>
            A collection of all ExternalInterface which are instances of the
            standard Interface class <see cref="F:Aml.Engine.AmlObjects.AutomationMLInterfaceClassLib.ExternalDataConnector" />.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllExternalInterfacesOfType(Aml.Engine.CAEX.CAEXDocument,System.String,Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
            Returns all ExternalInterfaces  in the provided document or optionally
            in the caexObject and descendants, which are
            instances of the  Interface class defined by the provided <paramref name="interfaceClassPath" />.
            </summary>
            <param name="document">The document.</param>
            <param name="interfaceClassPath">The CAEX ClassPath of the InterfaceClassType</param>
            <param name="caexObject">Optional parameter, defining a possible start object for the query.</param>
            <returns>
            A collection of all ExternalInterface which are
            instances of the  Interface class defined by the provided <paramref name="interfaceClassPath" />.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AllInternalElementsWithInternalLinks(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Returns all InternalElements which are descendants of the provided CAEX object with InternalLinks.
                These elements are the owners of the InternalLink objects.
            </summary>
            <param name="caexObject">The CAEX object</param>
            <returns>
                A collection of all objects with associated InternalLinks.
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
            <remarks>
                Note the difference to the method
                <see
                    cref="M:Aml.Engine.Services.Interfaces.IQuery.ElementsWithInternalLinkRelations(Aml.Engine.CAEX.CAEXBasicObject)" />
                which doesn't return the
                owners of an InternalLink but the related elements.
            </remarks>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.AttributeMirrors(Aml.Engine.CAEX.AttributeType)">
            <summary>
                Returns all Mirrors of the specified Attribute
            </summary>
            <param name="master">The master.</param>
            <returns>
                An enumeration of mirror Attribute objects
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.ElementsWithAliasReference(Aml.Engine.CAEX.CAEXBasicObject,System.String,System.String)">
            <summary>
                Gets alls the elements which are descendants of the provided CAEX object
                which use the provided Alias in a reference. The elements in the result collection are
                references, which define the CAEX object and the attribute, containing the reference
                <seealso cref="T:Aml.Engine.Services.Interfaces.ICAEXReference" />.
                If the <paramref name="elementName" /> is
                set, only elements with the defined element name are considered.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="alias">The Alias.</param>
            <param name="elementName">If parameter is set, only elements with the given element Name are considered.</param>
            <returns>
                a collection of element references which use the provided Alias in a reference
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.ElementsWithCAEXPathReference(Aml.Engine.CAEX.CAEXBasicObject,System.String,System.String)">
            <summary>
                Gets alls the elements which are descendants of the provided CAEX object
                which have a reference to the provided CAEXPath. The elements in the result collection are
                references, which define the CAEX object and the attribute, containing the reference
                <seealso cref="T:Aml.Engine.Services.Interfaces.ICAEXReference" />.
                If the <paramref name="elementName" /> is set, only elements with the defined element name are considered.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="caexPath">The path.</param>
            <param name="elementName">If parameter is set, only elements with the given element Name are considered.</param>
            <returns>
                a collection of element references which have a reference to the provided Path^.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.ElementsWithIDReference(Aml.Engine.CAEX.CAEXBasicObject,System.String,System.String)">
            <summary>
                Gets alls the elements from the document which have a reference to the provided ID. The elements in the result
                collection are
                references, which define the CAEX object and the attribute, containing the reference
                <seealso cref="T:Aml.Engine.Services.Interfaces.ICAEXReference" />.
                If the <paramref name="elementName" /> is
                set, only elements with the defined element name are considered.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="ID">The identifier.</param>
            <param name="elementName">If parameter is set, only elements with the given element Name are considered.</param>
            <returns>
                a collection of element references which have a reference to the provided ID
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.ElementsWithInternalLinkRelations(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Returns all InternalElements and SystemUnitClasses which are descendants of the provided CAEX object,
                which are related to others via InternalLinks.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>
                A collection of related SystemUnitClass objects
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
            <remarks>
                Note the difference to the method
                <see cref="M:Aml.Engine.Services.Interfaces.IQuery.AllElementsWithInternalLinks(Aml.Engine.CAEX.CAEXBasicObject)" />
                which doesn't return the
                related elements but the InternalLink owners.
            </remarks>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.ExternalInterfaceMirrors(Aml.Engine.CAEX.ExternalInterfaceType)">
            <summary>
                Returns all Mirrors of the specified ExternalInterface
            </summary>
            <param name="master">The master.</param>
            <returns>
                An enumeration of mirror ExternalInterface objects
            </returns>
            <exception cref="T:System.NotImplementedException"></exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.FindByID(Aml.Engine.CAEX.CAEXDocument,System.String,System.Boolean)">
            <summary>
                Locates a CAEX object in the provided document using the specified ID - Attribute for identification.
            </summary>
            <param name="doc">The document.</param>
            <param name="id">The identifier.</param>
            <param name="resolveAlias">
                if set to <c>true</c> tries to resolve an alias reference with an ExternalReferenceResolver
                service.
            </param>
            <returns>
                The located object with the specified ID or <c>null</c>.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.FindByPath(Aml.Engine.CAEX.CAEXDocument,System.String,System.Boolean)">
            <summary>
                Locates a CAEX object in the provided document using the specified CAEX - Path for identification.
                If the path uses an alias reference and an <see cref="T:Aml.Engine.Services.Interfaces.IExternalReferenceResolver" /> can be located,
                it is tried to resolve the external reference and to get the object from the external source.
            </summary>
            <param name="doc">The document.</param>
            <param name="caexPath">The path.</param>
            <param name="resolveAlias">
                if set to <c>true</c> tries to resolve an alias reference with an ExternalReferenceResolver
                service.
            </param>
            <returns>
                The first object which is found (if the path is not a unique identifier, than more than this object may exist).
            </returns>
            <exception cref="T:System.ArgumentNullException">doc</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.InterfacesWithInternalLinkRelations(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Returns all ExternalInterface objects which are descendants of the provided CAEX object
                and are used in relations (InternalLinks).
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>
                A collection of related ExternalInterface objects
            </returns>
            <exception cref="T:System.ArgumentNullException">caexObject</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.InternalElementMirrors(Aml.Engine.CAEX.InternalElementType)">
            <summary>
                Returns all Mirrors of the specified InternalElement
            </summary>
            <param name="master">The master.</param>
            <returns>
                a collection of mirror InternalElements
            </returns>
            <exception cref="T:System.ArgumentNullException">master</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.InternalLinksToElement(Aml.Engine.CAEX.SystemUnitClassType)">
            <summary>
                Gets all InternalLinks that reference the specified InternalElement or SystemUnitClass.
            </summary>
            <param name="systemUnitClass">The InternalElement or SystemUnitClass.</param>
            <returns>
                a collection of InternalLinks.
            </returns>
            <exception cref="T:System.ArgumentNullException">systemUnitClass</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.InternalLinksToInterface(Aml.Engine.CAEX.ExternalInterfaceType)">
            <summary>
                Gets all InternalLinks that reference the specified ExternalInterface.
            </summary>
            <param name="externalInterface">The ExternalInterface.</param>
            <returns>
                a collection of InternalLinks.
            </returns>
            <exception cref="T:System.ArgumentNullException">externalInterface</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.IsMaster(Aml.Engine.CAEX.InternalElementType)">
            <summary>
                Determines whether the specified InternalElement is referenced by other InternalElement
                objects called 'Mirrors'.
            </summary>
            <param name="internalElement">The InternalElement object.</param>
            <returns>
                <c>true</c> if the specified element is a 'Master'-InternalElement; otherwise, <c>false</c>.
            </returns>
            <exception cref="T:System.ArgumentNullException">internalElement</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.IsMaster(Aml.Engine.CAEX.ExternalInterfaceType)">
            <summary>
                Determines whether the specified ExternalInterface is referenced by other ExternalInterface
                objects called 'Mirrors'.
            </summary>
            <param name="externalInterface">The ExternalInterface element.</param>
            <returns>
                <c>true</c> if the specified element is a 'Master'-ExternalInterface; otherwise, <c>false</c>.
            </returns>
            <exception cref="T:System.ArgumentNullException">externalInterface</exception>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.IsMaster(Aml.Engine.CAEX.AttributeType)">
            <summary>
                Determines whether the specified AttributeType is referenced by other AttributeType
                objects called 'Mirrors'.
            </summary>
            <param name="element">The element.</param>
            <returns>
                <c>true</c> if the specified element is a 'Master'-Attribute; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.IsReferenced(Aml.Engine.CAEX.CAEXObject)">
            <summary>
                Determines whether the specified CAEX object is referenced.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <returns>
                <c>true</c> if the specified CAEX object is referenced; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.LookupService.RemoveDeletedElement(System.Xml.Linq.XElement)">
            <summary>
                RemoveDeletedElement the element which is deleted.
            </summary>
            <param name="element">The element.</param>
        </member>
        <member name="T:Aml.Engine.Services.CAEXPathReferenceTable">
            <summary>
                The PathDictionary contains nodes which are identifiable with a CAEXPath or which have
                references using a CAEXPath.
            </summary>
            <seealso cref="T:System.Collections.Generic.Dictionary`2" />
            <seealso cref="T:Aml.Engine.Services.INodeDictionary`1" />
        </member>
        <member name="P:Aml.Engine.Services.CAEXPathReferenceTable.Item(System.String[],System.Int32)">
            <summary>
                Gets and sets the PathReferenceCollection for the last table which can be located with
                the given path parts, where the last part defines the target table.
            </summary>
            <value>
                The <see cref="T:Aml.Engine.Services.CAEXPathReferenceCollection" />.
            </value>
            <param name="pathParts">The parts of a path. These parts are build from a CAEXPath.</param>
            <param name="index">The index.</param>
            <returns>
                the identified PathReferenceCollection
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.ReferenceCollection(System.String[],System.Int32)">
            <summary>
                Gets and sets the PathReferenceCollection for the last table which can be located with
                the given path parts, where the last part defines the target table.
            </summary>
            <param name="pathParts">The parts of a path. These parts are build from a CAEXPath.</param>
            <param name="index">The index.</param>
            <returns>
                the identified PathReferenceCollection
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.RemoveReference(System.String,System.Xml.Linq.XAttribute)">
            <summary>
                Removes the reference from the collection. If this is the last item in the
                collection, the key is deleted from the dictionary.
            </summary>
            <param name="key">The key.</param>
            <param name="reference">The node.</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.UpdateReferences(Aml.Engine.Services.CAEXPathReferenceCollection,System.Xml.Linq.XElement,System.String,System.Boolean,System.String)">
            <summary>
                TODO: There is a big confusion in this method because the parameter order is not same with the base
                newValue/oldValue
            </summary>
            <param name="collection"></param>
            <param name="element"></param>
            <param name="oldValue"></param>
            <param name="elementIsDeleted"></param>
            <param name="newValue"></param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.AddElement(System.String[],System.Xml.Linq.XElement)">
            <summary>
                Adds all nodes, which are identifiable with the given node and the path parts
                to the appropriate table. The name of each node should be equal to its path part.
                The provided node's path is identifiable with the full path (all path parts).
            </summary>
            <param name="pathParts">The path parts.</param>
            <param name="element">The node.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.AddReference(System.String[],System.Xml.Linq.XAttribute)">
            <summary>
                Adds the reference.
            </summary>
            <param name="pathParts">The path parts.</param>
            <param name="reference">The object.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.AllElementsWithPath">
            <summary>
                Gets all elements, which are identifiable with a CAEXPath for this table and all included sub tables.
            </summary>
            <returns>collection of elements from all tables</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.AllElementsWithPathRefs">
            <summary>
                Gets all elements, which are references for this table and all included sub tables.
            </summary>
            <returns>collection of attributes from all tables</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.Dictionary(System.String[])">
            <summary>
                Gets the dictionary which contains the node entries, assigned to the specified path parts.
            </summary>
            <param name="pathParts">The path parts.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.RemoveElement(System.String[],System.Xml.Linq.XElement,System.Boolean)">
            <summary>
                Removes the element from the path table. To remove the element, the elements dictionary
                is located using a deep scan along the hierarchy path. If the leave node is reached, which contains
                the element, the element is deleted and the ancestor levels are updated to (if any higher level becomes
                empty).
            </summary>
            <param name="pathParts">The path parts.</param>
            <param name="element">The element.</param>
            <param name="updateReferences">if set to <c>true</c> [update references].</param>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.RemoveReference(System.String[],System.Xml.Linq.XAttribute)">
            <summary>
                Removes the reference. To remove the reference, the reference dictionary
                is located using a deep scan along the hierarchy path. If the leave node is reached, which contains
                the reference, the reference is deleted and the ancestor levels are updated to (if any higher level becomes
                empty).
            </summary>
            <param name="pathParts">The path parts.</param>
            <param name="reference">The Attribute defining the reference to an element.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXPathReferenceTable.UpdateElement(System.String[],System.String[],System.Xml.Linq.XElement)">
            <summary>
                Updates the element.
            </summary>
            <param name="pathPartsOld">The path parts old.</param>
            <param name="pathPartsNew">The path parts new.</param>
            <param name="element">The element.</param>
        </member>
        <member name="T:Aml.Engine.Services.CAEXPathReferenceCollection">
            <summary>
                This class defines the properties and methods of any value, stored in a <see cref="T:Aml.Engine.Services.CAEXLookupTables" />.
                A TableValue allows the construction of a hierarchical table structure. This is used to
                support access to XML nodes using a <see cref="M:Aml.Engine.Xml.Extensions.XmlCAEXAttributes.CAEXPath(System.Xml.Linq.XElement)" />.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.CAEXPathReferenceCollection.HasTable">
            <summary>
                Gets a value indicating whether this instance has a table of subordinate elements
            </summary>
            <value>
                <c>true</c> if this instance owns a table; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:Aml.Engine.Services.CAEXPathReferenceCollection.Table">
            <summary>
                Gets the table of associated registered elements.
            </summary>
        </member>
        <member name="T:Aml.Engine.Services.SplitService">
            <summary>
                This class is an implementation of a split service. This service
                is able to split one <see cref="T:Aml.Engine.CAEX.CAEXDocument" /> into multiple files using split points.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.ISplit" />
        </member>
        <member name="M:Aml.Engine.Services.SplitService.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:Aml.Engine.Services.SplitService" /> class.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.Register">
            <summary>
                Registers a new instance of a SplitService with the <see cref="T:Aml.Engine.Services.ServiceLocator" /> of the AMLEngine.
            </summary>
            <returns>The service instance</returns>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.UnRegister">
            <summary>
                Unregisters this service
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.RemoveSplitPoint(Aml.Engine.Services.Interfaces.ISplitPoint)">
            <summary>
                Removes the split point for the provided CAEX object.
            </summary>
            <param name="caexObject">The CAEX object.</param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.RemoveDocument(Aml.Engine.XML.XDocumentWrapper)">
            <summary>
                Removes the document from the internal registry of the split service. All registered split points for this document
                will be removed.
            </summary>
            <param name="doc">The document.</param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.SetSplitPoint(Aml.Engine.Services.Interfaces.ISplitPoint)">
            <summary>
                Sets the split point for the provided CAEX object. If the actual list of split points for
                the same document already contains a split point which is a child of the provided CAEX object,
                this existing split point is removed from the list.
            </summary>
            <param name="caexObject">The CAEX object.</param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.Split(Aml.Engine.CAEX.CAEXDocument,System.String,System.String)">
            <summary>
                Splits the specified document on all currently defined split points. The
                created libraries are saved in an AutomationML document and an ExternalReference
                is created, using the specified alias. All remaining references to the
                external source are renamed using the provided alias. After splitting,
                the document doesn't contain any SplitPoints any more.
            </summary>
            <param name="sourceDocument">The document.</param>
            <param name="alias">The alias.</param>
            <param name="filePath">The file path.</param>
            <returns>The Split document</returns>
            <exception cref="T:System.ArgumentNullException">document or alias or filePath</exception>
            <exception cref="T:System.ArgumentException">File path is equal to source document</exception>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.Split(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.Services.Interfaces.ISplitPoint,System.String,System.String)">
            <summary>
                Splits the specified source document.
            </summary>
            <param name="sourceDocument">The source document.</param>
            <param name="splitPoint">The split point.</param>
            <param name="alias">The alias.</param>
            <param name="filePath">The file path.</param>
            <returns></returns>
            <exception cref="T:System.ArgumentNullException">
                sourceDocument
                or
                alias
                or
                filePath
            </exception>
            <exception cref="T:System.ArgumentException">File path is equal to source document</exception>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.SplitPoints(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Gets a collection of all split points for the provided document.
            </summary>
            <param name="document">The document.</param>
            <returns>
                all split points for this document.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.UpdateAliasReferences(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.CAEXDocument,System.String)">
            <summary>
                All alias references are checked and the necessary externals are copied from the source document.
            </summary>
            <param name="sourceDocument"></param>
            <param name="splitDocument"></param>
            <param name="alias"></param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.AddExternalReferenceIfNeeded(Aml.Engine.CAEX.CAEXDocument,System.String,System.String)">
            <summary>
                Adds the external reference for the provided alias to the source document if needed.
            </summary>
            <param name="sourceDocument">The source document.</param>
            <param name="alias">The alias.</param>
            <param name="filePath">The file path.</param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.CAEXElementChangingHandler(System.Object,Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs)">
            <summary>
                this handler reacts on deleting elements and updates the split point list if needed
            </summary>
            <param name="sender">The sender.</param>
            <param name="e">The <see cref="T:Aml.Engine.CAEX.Commands.CAEXElementChangeEventArgs" /> instance containing the event data.</param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.SplitInternalElement(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.InternalElementType,System.String)">
            <summary>
                Splits the internal element. ID references which stay in the source document but point to the split document are
                changed
                to ALIAS references.
            </summary>
            <param name="sourceDocument">The source document.</param>
            <param name="splitDocument">The split document.</param>
            <param name="internalElement">The internal element.</param>
            <param name="alias">The alias.</param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.SplitLibrary(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.CAEXObject,System.String)">
            <summary>
                Splits the library. Path references and ID references which cross the library border are changed to alias
                references.
            </summary>
            <param name="sourceDocument">The source document.</param>
            <param name="splitDocument">The split document.</param>
            <param name="library">The library.</param>
            <param name="alias">The alias.</param>
        </member>
        <member name="M:Aml.Engine.Services.SplitService.UpdateExternals(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.CAEXDocument,System.String)">
            <summary>
                Checks the created external references in the source document, if they are still needed after every split point is
                processed.
                Additionally the outgoing references of the created split document are checked and the needed externals are
                created.
            </summary>
            <param name="sourceDocument">The source document.</param>
            <param name="splitDocument">The split document.</param>
            <param name="alias">The alias.</param>
        </member>
        <member name="T:Aml.Engine.Services.CAEXSchemaDowngrader">
            <summary>
                This class creates a new document with CAEX version 2.15 by transforming a document with CAEX version 3.0
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXSchemaDowngrader.DowngradeToSchema215(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Executes the downgrade from Schema 3.0 to 2.15
            </summary>
            <returns>New document with CAEX version 2.15</returns>
        </member>
        <member name="T:Aml.Engine.Services.CAEXSchemaTransformer">
            <summary>
                This class defines a service for a schema transformation. The service supports transformation
                of CAEX documents from CAEX Version 2.15 to version 3.0 and back. Backwards transformation
                can result in a loss of information.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.ISchemaTransform" />
        </member>
        <member name="M:Aml.Engine.Services.CAEXSchemaTransformer.#ctor">
            <summary>
                Prevents a default instance of the <see cref="T:Aml.Engine.Services.CAEXSchemaTransformer" /> class from being created.
            </summary>
        </member>
        <member name="E:Aml.Engine.Services.CAEXSchemaTransformer.TransformationStarted">
            <summary>
                Raised from the ShemaTransform service when a transformation has started.
            </summary>
        </member>
        <member name="E:Aml.Engine.Services.CAEXSchemaTransformer.TransformationEnded">
            <summary>
                Raised from the ShemaTransform service when a transformation has ended.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXSchemaTransformer.Register">
            <summary>
                Registration of a new <see cref="T:Aml.Engine.Services.Interfaces.ISchemaTransform" />
            </summary>
            <returns>The registered CAEX Schema Transformer.</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXSchemaTransformer.UnRegister">
            <summary>
                Unregisters this service
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXSchemaTransformer.TransformTo(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.CAEX.CAEXDocument.CAEXSchema)">
            <summary>
                Method to do a schema transformation for the provided document to the defined schema.
                This method can be used for upward and downward transformations.
            </summary>
            <param name="document">the document to be transformed</param>
            <param name="targetSchema">the target schema</param>
            <returns>the transformed document</returns>
        </member>
        <member name="T:Aml.Engine.Services.CAEXSchemaUpgrader">
            <summary>
                This class creates a new document with CAEX version 3.0 by transforming a document with CAEX version 2.15
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.CAEXSchemaUpgrader.UpgradeToSchema30(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Executes the upgrade from Schema 2.15 to 3.0
            </summary>
            <returns>New document with CAEX version 3.0</returns>
        </member>
        <member name="M:Aml.Engine.Services.CAEXSchemaUpgrader.ConvertSupportedRolesToRoleRequirements(Aml.Engine.CAEX.InternalElementType,Aml.Engine.CAEX.RoleRequirementsType)">
            <summary>
                Converts the supported role type to role requirement type
            </summary>
            <param name="internalElement">Parent internal element for supported roles</param>
            <param name="roleReq">The role requirement object.</param>
        </member>
        <member name="T:Aml.Engine.Services.ReferenceElement">
            <summary>
                ReferenceElement is a Tuple of an XElement and the Name of
                an Attributes, which is used to reference another Element. The reference
                may be used as a key to find the referenced Element.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ReferenceElement.#ctor(System.Xml.Linq.XElement,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:Aml.Engine.Services.ReferenceElement" /> class.
            </summary>
            <param name="xmlNode">The XML node.</param>
            <param name="refAttributeName">Name of the reference attribute.</param>
        </member>
        <member name="P:Aml.Engine.Services.ReferenceElement.Element">
            <summary>
                Gets the XML node.
            </summary>
            <value>The element.</value>
        </member>
        <member name="P:Aml.Engine.Services.ReferenceElement.ReferenceAttributeName">
            <summary>
                Gets the name of the reference attribute of the <see cref="P:Aml.Engine.Services.ReferenceElement.Element" />
            </summary>
            <value>The name of the reference attribute.</value>
        </member>
        <member name="P:Aml.Engine.Services.ReferenceElement.ReferenceAttributeValue">
            <summary>
                gets the value of the Reference Attribute
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ReferenceElement.CaexObject">
            <summary>
                Gets the CAEX object which owns the reference.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ReferenceElement.Equals(System.Object)">
            <summary>
                Determines whether the specified <see cref="T:System.Object" /> is equal to this instance.
            </summary>
            <param name="obj">The <see cref="T:System.Object" /> to compare with this instance.</param>
            <returns><c>true</c> if the specified <see cref="T:System.Object" /> is equal to this instance; otherwise, <c>false</c>.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ReferenceElement.GetHashCode">
            <summary>
                Returns a hash code for this instance.
            </summary>
            <returns>A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.</returns>
        </member>
        <member name="T:Aml.Engine.Services.Transaction">
            <summary>
                This class defines a command that contains a collection of commands. This collection is treated
                as a transaction. If a transaction is undone, all commands in the transaction will be undone too.
            </summary>
            <seealso cref="T:Aml.Engine.CAEX.Commands.ICAEXCommand" />
        </member>
        <member name="T:Aml.Engine.Services.UndoRedoService">
            <summary>
                This class implements an Undo and Redo service. When this service is registered, changes in an AutomationML
                document
                can be reversed. A sequence of actions can be grouped into transactions which than can be reversed
                within a single undo operation. The AMLEngine will locate a registered UndoRedoService and will notify
                the service of any changes, made to a document. The service manages individual stacks for each loaded CAEX
                document.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IUndoRedo" />
            <seealso cref="T:System.ComponentModel.INotifyPropertyChanged" />
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.#ctor">
            <summary>
                Prevents a default instance of the <see cref="T:Aml.Engine.Services.UndoRedoService" /> class from being created.
            </summary>
        </member>
        <member name="E:Aml.Engine.Services.UndoRedoService.PropertyChanged">
            <summary>
                Occurs when a property value changes.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.RemoveDocument(Aml.Engine.XML.XDocumentWrapper)">
            <summary>
                Removes the XML document from the internal registry of the service.
                Undo- and Redo Stacks for this document will be deleted.
            </summary>
            <param name="doc">The document.</param>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.Pause(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Request to not record changes of the specified document.
            </summary>
            <param name="document">The document.</param>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.Resume(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Request to resume recording changes of the specified document.
            </summary>
            <param name="document">The document.</param>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.Register">
            <summary>
                Registers a new instance of a UndoRedoService with the <see cref="T:Aml.Engine.Services.ServiceLocator" /> of the AMLEngine.
            </summary>
            <returns>The service instance</returns>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.UnRegister">
            <summary>
                Unregisters this service
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.BeginTransaction(Aml.Engine.CAEX.CAEXDocument,System.String)">
            <summary>
                Begins a new transaction. All changes, made to a CAEXDocument inside a transaction are treated as a single
                operation.
            </summary>
            <param name="document">The CAEX document to which the transaction should be associated.</param>
            <param name="name">A friendly name for this transaction.</param>
            <returns>If the transaction started.</returns>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.CanRedo(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Determines, if the service can redo a command
            </summary>
            <param name="document">The document.</param>
            <returns>
                <c>true</c> if this instance can redo any undone command from the specified document; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.CanUndo(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Determines, if the service can undo a command.
            </summary>
            <param name="document">The document.</param>
            <returns>
                <c>true</c> if this instance can undo any command from the specified document; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.ClearStacks(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Clears the stacks, managed for the specified document.
            </summary>
            <param name="document">The document.</param>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.EndTransaction(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Ends the current transaction from the specified document.
            </summary>
            <param name="document">The document.</param>
            <exception cref="T:System.InvalidOperationException">No matching Transaction Begin</exception>
            <returns>If the transaction ended</returns>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.PushCommand(Aml.Engine.CAEX.Commands.ICAEXCommand)">
            <summary>
                A command is pushed on the undo stack of this service.
            </summary>
            <param name="cmd">the CAEX command.</param>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.Redo(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Executes the last undone operation from the specified document again.
            </summary>
            <param name="document">The document.</param>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.LastModificationDate(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the date of the most recently executed command for the specified document.
            </summary>
            <param name="document">The document.</param>
            <param name="undo">if set to <c>true</c> the last undo operation is considered; otherwise the last redo operation.</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.RedoActions(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Gets the command names of all redo actions for the defined document.
            </summary>
            <param name="document">The document.</param>
            <returns>
                List of command names
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.Undo(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Reverses the last action of the defined document.
            </summary>
            <param name="document">The document.</param>
        </member>
        <member name="M:Aml.Engine.Services.UndoRedoService.UndoActions(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Gets the command names of all undo actions of the defined document.
            </summary>
            <param name="document">The document.</param>
            <returns>
                List of command names.
            </returns>
        </member>
        <member name="T:Aml.Engine.Services.UniqueNameService">
            <summary>
                This class defines methods for a unique name service. The names of CAEX-Objects in a Sequence of
                Elements should all be unique. If a unique name service is registered, the AMLEngine will
                automatically call this service for a unique name generation whenever a new element is added
                to a sequence which requires a unique name for its members.
                This services uses a generation pattern which consists of the specified default name followed by
                a generated ordinal number of the elements in a sequence.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IUniqueName" />
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.Register">
            <summary>
                Registers a new instance of a UniqueNameService with the <see cref="T:Aml.Engine.Services.ServiceLocator" /> of the AMLEngine.
            </summary>
            <returns>The service instance</returns>
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.UnRegister">
            <summary>
                Unregisters the current instance of the UniqueNameService with the <see cref="T:Aml.Engine.Services.ServiceLocator" /> of the AMLEngine.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.IsUniqueCAEXName(System.Xml.Linq.XElement)">
            <summary>
                Determines whether the specified element has a unique CAEX name in the sequence of equal elements
                of its parent.
            </summary>
            <param name="element">The element.</param>
            <returns>
                <c>true</c> if the elements name is unique, otherwise <c>false</c>.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.RegisterDefault(System.String,System.String)">
            <summary>
                Registers the default name for all CAEX objects with the provided element name.
            </summary>
            <param name="elementName">Name of the element.</param>
            <param name="defaultName">The default name.</param>
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.Resume">
            <summary>
                Resumes activities of the unique name service.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.Suspend">
            <summary>
                Suspends activities of the unique name service.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.UniqueCAEXName(System.Xml.Linq.XElement,System.String)">
            <summary>
                Creates a unique CAEX Name for a child with the specified elementTagName in the specified sequence
            </summary>
            <param name="sequence">The sequence of elements.</param>
            <param name="elementTagName">Name of the element tag.</param>
            <returns>
                a unique name using the registered default extended with an added number, representing the maximal number
            </returns>
            <exception cref="T:System.ArgumentNullException">elementTagName</exception>
        </member>
        <member name="M:Aml.Engine.Services.UniqueNameService.UniqueCAEXName(System.Xml.Linq.XElement,System.String,System.String)">
            <summary>
                Creates a unique CAEX Name for a child with the specified elementTagName in the specified sequence using the
                specified
                defaultName
            </summary>
            <param name="sequence">The sequence.</param>
            <param name="elementTagName">Name of the element tag.</param>
            <param name="defaultName">The default name.</param>
            <returns>
                a unique name using the registered default extended with an added number, representing the maximal number
            </returns>
            <exception cref="T:System.ArgumentNullException">elementTagName</exception>
            <exception cref="T:System.ArgumentNullException">elementTagName</exception>
        </member>
        <member name="T:Aml.Engine.Services.RepairTypeEnum">
            <summary>
                Enumeration RepairTypeEnum
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.IDDefinitionOption">
            <summary>
                The options which are related to ID validation issues
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.NameDefinitionOption">
            <summary>
                The  options which are related to Name validation issues
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.IDReferenceOption">
            <summary>
                The options which are related to ID reference validation issues
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.PathReferenceOption">
            <summary>
                The options which are related to Path reference validation issues
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.GenerateUniqueIDWhenEmpty">
            <summary>
                This Flag cause the generation of a unique ID for all Empty IDs
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.GenerateUniqueIDForDoubles">
            <summary>
                This Flag cause the generation of a unique ID for all Double IDs
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.GenerateNameWhenEmpty">
            <summary>
                This Flag cause the renaming of all empty Names with an automatic name generation algorithm.
                To apply this method, a <see cref="T:Aml.Engine.Services.UniqueNameService" /> has to be registered,
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RemoveEmptyReference">
            <summary>
                This Flag cause the removal of all references where the Reference Value is empty
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RemoveUnresolvedIDReference">
            <summary>
                This Flag cause the removal of all ID References where the ID Value has not been resolved
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RemoveUnresolvedPathReference">
            <summary>
                This Flag cause the removal of all Path References where the Path reference Value has
                not been resolved
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RenameClassPathForDoubles">
            <summary>
                This Flag cause the generation of a new name for an element, when it's CAEX-Path is
                double so that the Path is unique.
                To apply this method, a <see cref="T:Aml.Engine.Services.UniqueNameService" /> has to be registered.
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.CreateWriterHeader">
            <summary>
                This Flag cause the generation of a writer header
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.CreateAutomationMLVersion">
            <summary>
                This Flag cause the generation of  an AutomationML Version header
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.SetSchemaVersion">
            <summary>
                This Flag cause the correction of the Schema Version
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.GenerateValidGUID">
            <summary>
                This Flag cause the generation of a new GUID for existing GUID's with invalid formats
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RemoveAlias">
            <summary>
                This Flag cause the generation of a new reference without the alias
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.CreateSourceDocumentInformation">
            <summary>
                This Flag cause the generation of source document information
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RemoveElement">
            <summary>
                This Flag cause the deletion of an element
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RemoveElementNotInScope">
            <summary>
                This Flag cause the deletion of an element which reference an element out of the allowed scope.
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.ChangeFileURL">
            <summary>
                This Flag cause the generation of a valid file URL in an ExternalDataConnector to a localized file.
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.RemoveUnresolvedNameReference">
            <summary>
                This Flag cause the removal of all Name References where the Name reference Value has
                not been resolved
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.RepairTypeEnum.None">
            <summary>
                The Option None indicates, that nothing should be done
            </summary>
        </member>
        <member name="T:Aml.Engine.Services.RepairTypeEnumConverter">
            <summary>
                Extensions for <see cref="T:Aml.Engine.Services.RepairTypeEnum" />
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.RepairTypeEnumConverter.RepairTypeDescription(Aml.Engine.Services.RepairTypeEnum)">
            <summary>
                Converts the specified repair option to a readable string
            </summary>
            <param name="repairOption">Option for repairing an element.</param>
            <returns>a readable string describing the repair option</returns>
        </member>
        <member name="T:Aml.Engine.Services.ValidationElement">
            <summary>
                Class ValidationElement is a Tuple of an XElement and associated detailed
                Information about any inconsistencies, assigned with that Element.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IValidationResult" />
        </member>
        <member name="M:Aml.Engine.Services.ValidationElement.ReValidate">
            <summary>
                Checks the validation of the element
            </summary>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationElement.#ctor(System.Xml.Linq.XElement,Aml.Engine.Services.ValidationKey)">
            <summary>
                Initializes a new instance of the <see cref="T:Aml.Engine.Services.ValidationElement" /> class.
            </summary>
            <param name="element">The element.</param>
            <param name="validationKey">The validation key.</param>
        </member>
        <member name="F:Aml.Engine.Services.ValidationElement.NOT_REPAIRED">
            <summary>
                constant string, defining validation elements which are yet not repaired.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.AvailableRepairOptions">
            <summary>
                Gets the available repair options.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.CAEXElement">
            <summary>
                Gets the CAEX element wrapper for the XElement.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.Element">
            <summary>
                Gets the element which has been validated.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.RepairResult">
            <summary>
                Gets information about the result of a repair operation for one element.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.ValidatedAttribute">
            <summary>
                Gets or sets the validated attribute.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.ValidationInformation">
            <summary>
                Gets a short information about the validation of one element.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.LongDescription">
            <summary>
                Gets a longer description containing more detailed information about a validation issue. To get this information,
                the informative mode
                shall be enabled when the validation is performed.
            </summary>
        </member>
        <member name="P:Aml.Engine.Services.ValidationElement.ValidationType">
            <summary>
                Gets the type of the validation.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ValidationElement.Equals(System.Object)">
            <summary>
                Determines whether the specified object is identical to the current object.
            </summary>
            <param name="obj">The object to be compared with the current object.</param>
            <returns>
                <see langword="true" />,if the specified object and the current object are the same, otherwise
                <see langword="false" />.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationElement.GetHashCode">
            <summary>
                Returns a hash code for this instance.
            </summary>
            <returns>
                A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationElement.RepairSchemaVersion">
            <summary>
                Repairs a missing or invalid SchemaVersion.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationElement.RepairAutomationMLVersion">
            <summary>
                Repairs a missing or invalid AutomationML version.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationElement.RepairWriterHeader">
            <summary>
                Repairs the writer header.
            </summary>
        </member>
        <member name="T:Aml.Engine.Services.ValidationKey">
            <summary>
                Class ValidationKey.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ValidationKey.#ctor(System.String,Aml.Engine.Services.ValidationTypeEnum)">
            <summary>
                Initializes a new instance of the <see cref="T:Aml.Engine.Services.ValidationKey" /> class.
            </summary>
            <param name="key">The key.</param>
            <param name="validationType">Type of the validation.</param>
        </member>
        <member name="P:Aml.Engine.Services.ValidationKey.Key">
            <summary>
                Gets the key.
            </summary>
            <value>The key.</value>
        </member>
        <member name="P:Aml.Engine.Services.ValidationKey.ValidationType">
            <summary>
                Gets the type of the validation.
            </summary>
            <value>The type of the validation.</value>
        </member>
        <member name="T:Aml.Engine.Services.ValidationResults">
            <summary>
                This class defines methods to assist the interpretation of validation results.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.AliasReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the Alias reference validation results from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>
                All validation results, which are related to CAEX objects which use an Alias to
                reference CAEX objects in external sources.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.ExternalReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the File reference validation results from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>All validation results, which are related to External References with a not Locatable external reference</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.ClassPathValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the CAEXPath validation results for CAEX classes from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>All validation results, which are related to the CAEXPath of a CAEX class.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.IDReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the ID reference validation results from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>
                All validation results, which are related to CAEX objects which use IDs to
                reference other CAEX objects.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.PathReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the Path reference validation results from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>
                All validation results, which are related to CAEX objects which use CAEX path to
                reference other CAEX objects.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.NameReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the Name reference validation results from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <remarks>
                Currently only name references from mapping objects are validated
            </remarks>
            <returns>
                All validation results, which are related to CAEX objects which use a Name to
                reference other CAEX objects.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.IDValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the ID validation results from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>All validation results, which are related to the CAEX object ID attribute.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.MetaDataValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the MetaData validation results from the validation result list.
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>All validation results, which are related to MetaData assigned to a CAEXFile.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.InvalidAutomationMLVersion(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all MetaData which are related to the AutomationML Version
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.MetaDataValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to MetaData which are related to the AutomationML Version.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.InvalidSchemaVersion(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all MetaData which are related to the CAEX Schema Version
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.MetaDataValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to MetaData which are related to the CAEX Schema Version.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.MissingDocumentSourceInformation(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all MetaData which are related to missing source information in an AML file.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.MetaDataValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to missing source information in an AML file.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.InvalidIDs(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with wrong formatted IDs.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.IDValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to wrong formatted CAEX object IDs.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.NotUniquePath(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements which are not uniquely identifiable with a CAEX path
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.ClassPathValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to wrong named CAEX objects which are referable.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.Repairable(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements which are repairable
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>All validation results, which are repairable.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.NotRepairable(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements which are not repairable
            </summary>
            <param name="validationResult">The validation result.</param>
            <returns>All validation results, which are not repairable.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.UnresolvedIDRefs(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with ID references which are not resolvable.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.IDReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to ID references which are not resolvable.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.UnresolvedPathRefs(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with CAEX path references which are not resolvable.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.PathReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to path references which are not resolvable.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.EmptyPathRefs(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with CAEX path references which are not resolvable.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.PathReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to path references which are not resolvable.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.EmptyIDRefs(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with ID references which are empty.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.IDReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to ID references which are empty.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.MissingIDs(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with missing IDs.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.IDValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to missing CAEX object IDs.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.NotUniqueIDs(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with IDs which are not unique in the document.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.IDValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to CAEX object IDs which are not unique.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.UnidentifiedAlias(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with references to an Alias, but no ExternalReference with that Alias
                is defined.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.AliasReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>All validation results, which are related to CAEX objects which use an undefined ExternalReference alias.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidationResults.UselessAlias(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})">
            <summary>
                Gets the validation results for all elements with references to an Alias, where the ExternalReference has been
                merged into the
                document already.
            </summary>
            <param name="validationResult">
                The validation result. Use the <see cref="M:Aml.Engine.Services.ValidationResults.AliasReferenceValidationResults(System.Collections.Generic.IEnumerable{Aml.Engine.Services.ValidationElement})" />
                as a parameter for this method.
            </param>
            <returns>
                All validation results, which are related to CAEX objects which reference an external source which is already
                merged.
            </returns>
        </member>
        <member name="T:Aml.Engine.Services.ValidationTypeEnum">
            <summary>
                Enumeration ValidationTypeEnum
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.IDValidation">
            <summary>
                The identifier validation indicates ID related issues. like a double or missing ID or a wrong formatted ID.
                The issues are repairable, if the ID is not referenced.
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.ClassPathValidation">
            <summary>
                The class path validation indicates a double ClassPath or missing Path
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.AttributePathValidation">
            <summary>
                The attribute path validation indicates a double AttributePath or missing Path
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.PathReferenceValidation">
            <summary>
                The path reference validation indicates a missing or unresolved reference to a class
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.NameValidation">
            <summary>
                The name validation indicates a missing or not allowed name
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.IDReferenceValidation">
            <summary>
                The ID reference validation indicates a missing or unresolved reference to an object
                with an ID
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.AliasValidation">
            <summary>
                The alias validation
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.MergableAliasReferenceValidation">
            <summary>
                The validation result has constituted an alias in an external reference which is not merged
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.MissingAliasReferenceValidation">
            <summary>
                The validation result has constituted a missing alias in an external reference
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.FileReferenceValidation">
            <summary>
                The file reference validation indicates a wrong FilePath in an external reference, which couldn't be resolved to an
                existing file
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.RoleAttributeReferenceValidation">
            <summary>
                The role attribute reference validation indicates a wrong reference to a role Attribute in a Mapping
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.RoleInterfaceReferenceValidation">
            <summary>
                The role Interface reference validation indicates a wrong reference to a role Interface in a Mapping
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.SystemUnitClassAttributeReferenceValidation">
            <summary>
                The SystemUnitClass attribute reference validation indicates a wrong reference to a SystemUnitClass Attribute in a
                Mapping
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.SystemUnitClassInterfaceReferenceValidation">
            <summary>
                The SystemUnitClass Interface reference validation indicates a wrong reference to a SystemUnitClass Interface in a
                Mapping
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.CyclicDependency">
            <summary>
                This Flag indicates a cyclic dependency between classes
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidationTypeEnum.AutomationMLMetaDataValidation">
            <summary>
                The automationML meta data validation indicates a couple of validation issues with metaData, as a missing schema
                name or writerHeader
            </summary>
        </member>
        <member name="T:Aml.Engine.Services.ValidatorService">
            <summary>
                This service is defined for the validation of an AML document. Additionally the
                service can also be used to repair specific invalid properties in a document.
            </summary>
            <seealso cref="T:Aml.Engine.Services.Interfaces.IValidator" />
            <seealso cref="T:Aml.Engine.Services.ValidationElement" />
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.NormalizeFilePath(System.String,Aml.Engine.CAEX.CAEXFileType)">
            <summary>
                Normalizes a file path and resolves relative paths
            </summary>
            <param name="relativePath">a string with a relative path</param>
            <param name="caexFile">The CAEX file.</param>
            <returns>
                a normalized file path string
            </returns>
        </member>
        <member name="F:Aml.Engine.Services.ValidatorService.INVALIDSCHEMAKEY">
            <summary>
                The invalid schema key
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidatorService.NOAMLVERSIONKEY">
            <summary>
                The no AML version key
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidatorService.NONAMEKEY">
            <summary>
                The no name key
            </summary>
        </member>
        <member name="F:Aml.Engine.Services.ValidatorService.NOSCHEMAKEY">
            <summary>
                The no schema key
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.Register">
            <summary>
                Registers a new validator service.
            </summary>
            <returns>The registered validator service.</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.UnRegister">
            <summary>
                Unregisters the validator service.
            </summary>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.IDValidation(Aml.Engine.CAEX.CAEXObject,System.String)">
            <summary>
                Validates the ID of a CAEX object.  IDs of CAEX objects shall be unique.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="ID">
                The ID, which should be assigned to the object. If no ID is defined, the uniqueness of the already
                assigned ID is evaluated.
            </param>
            <returns>A value tuple, returning the validation result and a message</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.NameValidation(Aml.Engine.CAEX.CAEXObject,System.String)">
            <summary>
                Validates a name of a CAEX object.  Names of CAEX classes or types (RoleClasses, InterfaceClasses,
                SystemUnitClasses and AttributeTypes), Attributes,
                Libraries and CAEX InstanceHierarchies shall be unique across its siblings or across all child elements of the same
                CAEX parent element over its life time.
                This shall assure that referencing a library, a class, a type or an attribute by its path delivers a unique result.
            </summary>
            <param name="caexObject">The CAEX object.</param>
            <param name="name">The name, which should be assigned to the object.</param>
            <returns>A value tuple, returning the validation result and a message</returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.Repair(Aml.Engine.Services.ValidationElement)">
            <summary>
                Repairs the specified validated element.
            </summary>
            <param name="validation">The validated element.</param>
            <returns>
                <c>true</c> if the element has been repaired, <c>false</c> otherwise.
            </returns>
            <seealso cref="M:Aml.Engine.Services.ValidatorService.ValidateAll(Aml.Engine.CAEX.CAEXDocument,System.Boolean)" />
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidateAll(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Get Validation Information for all elements in the specified document, which have validation issues. The
                <see cref="T:Aml.Engine.Services.ValidationElement" /> provides detailed information about available Repair
                Options and an additional Information Text.
            </summary>
            <param name="document">The CAEX document.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns>
                An enumeration of validation information for CAEX objects. One CAEX object may have multiple
                occurrences with different validation issues in this collection.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidateAll(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.AmlObjects.AutomationMLContainer,System.Boolean)">
            <summary>
                Get Validation Information for all elements in the specified document, which have validation issues. The
                <see cref="T:Aml.Engine.Services.Interfaces.IValidationResult" /> provides detailed information about available Repair
                Options and an additional Information Text. This method should be used, if the Document is loaded from an
                AutomationML container. The Validation service will check validity of external references which are packed
                parts of the container.
            </summary>
            <param name="document">The CAEX document.</param>
            <param name="container">The AutomationML container, containing the document source.</param>
            <param name="generateLongDescription">if set to <c>true</c> generate long description for each validation issue.</param>
            <returns>
                A collection of validation information for CAEX objects. One CAEX object may have multiple
                occurrences with different validation issues in this collection.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidateAllWithoutStrictID(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.AmlObjects.AutomationMLContainer,System.Boolean)">
            <summary>
                Get Validation Information for all elements in the specified document, which have validation issues. The
                <see cref="T:Aml.Engine.Services.ValidationElement" /> provides detailed information about available Repair
                Options and an additional Information Text.
            </summary>
            <param name="document">The CAEX document.</param>
            <param name="container">
                If set, the associated parts, defined in the AutomationML container are used to validate
                external references.
            </param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns>
                An enumeration of validation information for CAEX objects. One CAEX object may have multiple
                occurrences with different validation issues in this collection.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidateAliasReferences(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Validates the alias references and returns the validation result describing possible repair options.  The
                <see cref="T:Aml.Engine.Services.ValidationElement" /> provides detailed information about available Repair
                Options and an additional Information Text.
            </summary>
            <param name="document">The CAEX document.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetAliasReferenceValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the alias reference validation issues for the specified document.
            </summary>
            <param name="doc">The document.</param>
            <param name="generateLongDescription">set, if a validation long description should be added to the result</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetAllValidationIssues(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.AmlObjects.AutomationMLContainer,System.Boolean,System.Boolean)">
            <summary>
                Gets all validation issues for the specified document.
            </summary>
            <param name="doc">The document</param>
            <param name="container"></param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <param name="strictIDValidation"></param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetAutomationMLVersionValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the AutomationML version validation issues.
            </summary>
            <param name="doc">The document.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetCAEXSchemaValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the CAEX schema validation issues.
            </summary>
            <param name="doc">The document.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetExternalReferenceValidationIssues(Aml.Engine.CAEX.CAEXDocument,Aml.Engine.AmlObjects.AutomationMLContainer,System.Boolean)">
            <summary>
                Gets the external reference validation issues.
            </summary>
            <param name="doc">The document.</param>
            <param name="container"></param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetIDReferenceValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the identifier reference validation issues.
            </summary>
            <param name="doc">The document.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetIDValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean,System.Boolean)">
            <summary>
                Gets all ID validation issues for the provided document
            </summary>
            <param name="doc">The document.</param>
            <param name="generateLongDescription"></param>
            <param name="strictIDValidation">
                if set to <c>false</c> [only warning will be issued during troubleshooting of ID of
                InternalElement in SUCLIB.
            </param>
            <returns></returns>
            <seealso cref="F:Aml.Engine.Services.RepairTypeEnum.GenerateUniqueIDWhenEmpty" />
            <seealso cref="F:Aml.Engine.Services.RepairTypeEnum.GenerateValidGUID" />
            <seealso cref="F:Aml.Engine.Services.RepairTypeEnum.GenerateUniqueIDForDoubles" />
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.IsInstanceInClass(Aml.Engine.CAEX.CAEXBasicObject)">
            <summary>
                Determine if IE is under SystemUnitClassLib
            </summary>
            <param name="obj"></param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetMetaDataValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the meta data validation issues for the specified document.
            </summary>
            <param name="doc">The document.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetPathReferenceValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the validation issues for elements which reference another element using a CAEXPath.
            </summary>
            <param name="doc">The document.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetPathValidationIssues(Aml.Engine.CAEX.CAEXDocument,System.Boolean)">
            <summary>
                Gets the validation issues for elements which should be identifiable with a CAEXPath.
            </summary>
            <param name="doc">the document</param>
            <param name="generateLongDescription">set, if a validation long description should be added to the result</param>
            <returns>
                a collection of validated elements.
            </returns>
            <seealso cref="F:Aml.Engine.Services.RepairTypeEnum.GenerateNameWhenEmpty" />
            <seealso cref="F:Aml.Engine.Services.RepairTypeEnum.RenameClassPathForDoubles" />
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.GetWriterHeaderValidationIssues(Aml.Engine.CAEX.CAEXDocument)">
            <summary>
                Gets validation issues for source document or writer header information
            </summary>
            <param name="doc">The document.</param>
            <returns>
                a collection of validated elements.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidateAliasReference(Aml.Engine.CAEX.CAEXDocument,System.String,System.Collections.Generic.IEnumerable{Aml.Engine.Services.Interfaces.ICAEXReference},System.Boolean)">
            <summary>
                Validates the alias reference of the specified document and the provided path and item.
            </summary>
            <param name="doc">The document.</param>
            <param name="alias">The path which contains an alias.</param>
            <param name="items">The alias reference item.</param>
            <param name="generateLongDescription">set, if a validation long description should be added to the result</param>
            <returns>
                a collection of validated elements.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidateExternalReference(Aml.Engine.CAEX.CAEXFileType,Aml.Engine.AmlObjects.AutomationMLContainer,System.String,System.Boolean)">
            <summary>
                Validates the external reference.
            </summary>
            <param name="caexFile">The CAEX file.</param>
            <param name="container"></param>
            <param name="alias">The alias.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns>
                a collection of validated elements.
            </returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidateIDReference(Aml.Engine.CAEX.CAEXDocument,System.String,System.Collections.Generic.IEnumerable{Aml.Engine.Services.Interfaces.ICAEXReference},System.Boolean)">
            <summary>
                Validates the identifier reference of the specified document and the provide ID reference and the reference item.
            </summary>
            <param name="doc">The document.</param>
            <param name="idReference">The ID reference.</param>
            <param name="items">The reference item.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
        <member name="M:Aml.Engine.Services.ValidatorService.ValidatePathReference(Aml.Engine.CAEX.CAEXDocument,System.String,System.Collections.Generic.IEnumerable{Aml.Engine.Services.Interfaces.ICAEXReference},System.Boolean)">
            <summary>
                Validates the path reference of the specified document for the provided path and reference item.
            </summary>
            <param name="doc">The document.</param>
            <param name="path">The path.</param>
            <param name="items">The reference item.</param>
            <param name="generateLongDescription">if set to <c>true</c> [generate long description].</param>
            <returns></returns>
        </member>
    </members>
</doc>
