У меня есть XML-файл от клиента. Он использует префиксы имен со многими узлами. Но это не определяет никакого пространства имен в документе. Образец приведен ниже:
<?xml version="1.0"?>
<SemiconductorTestDataNotification>
<ssdh:DocumentHeader>
<ssdh:DocumentInformation>
<ssdh:Creation>2019-03-16T13:49:23</ssdh:Creation>
</ssdh:DocumentInformation>
</ssdh:DocumentHeader>
<LotReport>
<BALocation>
<dm:ProprietaryLabel>ABCDEF</dm:ProprietaryLabel>
</BALocation>
</LotReport>
</SemiconductorTestDataNotification>
Я использовал следующие классы XML для чтения, но не смог
System.Xml.Linq.XElement
System.Xml.XmlDocument
System.Xml.XmlReader
System.Xml.Linq.XDocument
выдает ошибку:
'ssdh' - необъявленный префикс.
Я знаю пространства имен префиксов. Это будет:
xmlns:ssdh="urn:rosettanet:specification:system:StandardDocumentHeader:xsd:schema:01.13"
xmlns:dm="urn:rosettanet:specification:domain:Manufacturing:xsd:schema:01.14"
Добавление этих пространств имен в xml-файл самостоятельно невозможно, поскольку xml-файлов будет много, и эти файлы будут появляться ежедневно.
Возможно ли, что я создаю файл (например, xsd) и записываю в них пространства имен и читаю XML-файл, используя этот (так называемый) файл схемы в коде C #.