Не удается найти объявление элемента «Root» с помощью dbxml
Я новичок в XML. Я пытаюсь импортировать файл XML, но получаю сообщение об ошибке: «Не удается найти объявление корневого элемента». Я подозреваю, что это связано с тем, что URI пространства имен (http://xmlns.oracle.com/apps/otm/DBXML) неактивен. Я попытался перейти к URI, но он недействителен. Поскольку именно отсюда XML-файл ссылается на свои объекты, я предполагаю, что недопустимый URL-адрес означает, что файл не может найти определение для DBXML. Я попытался указать другой URI, http://www.w3.org/2001/XMLSchema, но похоже, что он не поддерживает DBXML. Каковы мои варианты?
XML-файл
<Root xmlns:dbxml="http://xmlns.oracle.com/apps/otm/DBXML"
Version="20C">
<dbxml:TRANSACTION_SET>
<MX_SHIPMENTS DESCRIPTION="XXX XXX XXX"
ORDER_RELEASE_GID="XXX.XXX"
LOCATION_GID="XXX.XXX"
STOP_NUM="X"
ACTIVITY="X"
SHIPMENT_GID="XXX.XXX"/>
</dbxml:TRANSACTION_SET>
XML-схема
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dbxml="http://xmlns.oracle.com/apps/otm/DBXML" targetNamespace="http://xmlns.oracle.com/apps/otm/DBXML">
<xs:import schemaLocation="dbxml-response-sample-schema1.xsd"/>
<xs:element name="TRANSACTION_SET">
<xs:complexType>
<xs:sequence>
<xs:element ref="MX_SHIPMENTS" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name='Root'>
<xs:complexType>
<xs:sequence>
<xs:element ref="dbxml:TRANSACTION_SET"/>
</xs:sequence>
<xs:attribute name="Version" type="xs:string"/>
</xs:complexType>
</xs:element></xs:schema>
1 ответ
Из моих наблюдений, несколько вещей:
- у тебя есть
<Root>
вверху, но нет</Root>
внизу. - откуда вы берете эти пространства имен и чего вы от них ожидаете?
- вы просите dbxml проверить схему, поскольку она пытается загрузить данные в базу данных? Если нет, то что именно вы пытаетесь здесь сделать?
Мое предложение состояло бы в том, чтобы полностью убрать все объявления схемы и просто использовать XML по своему усмотрению. Схемы предназначены для тех случаев, когда у вас есть точные требования к тому, как должны выглядеть данные - это может быть ваш случай, но, поскольку вы новичок в XML, я бы просто начал с использования XML без схем и переходил к схемам по мере необходимости. . Существует множество отличных ресурсов для начала работы со схемами, в зависимости от вашего стека инструментов.