Где находится .xsd для http://www.w3.org/2007/app? - PullRequest
1 голос
/ 18 января 2012

Если я определяю схему (используя XML-редактор Visual Studio 2010) для бизнес-объекта, как я могу импортировать внешние пространства имен? Я расширяю схему поиска Google Commerce, но как мне определить элементы с префиксом пространства имен? например при запросе некоторых данных о моем продукте один элемент edited, принадлежащий пространству имен app, выглядит следующим образом:

<app:edited>2012-01-17T17:22:05.182Z</app:edited>

Visual Studio предлагает мне импортировать файл .xsd для пространства имен http://www.w3.org/2007/app. Нужно ли мне искать другие файлы .xsd для остальных пространств имен, уже включенных в фиды продуктов Google? например xmlns:sc и xmlns:scp Где я могу найти их? Или я совершенно не прав?

<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="entry"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    targetNamespace="http://www.w3.org/2005/Atom"
    elementFormDefault="qualified"
    xmlns="http://www.w3.org/2005/Atom"
    xmlns:app="http://www.w3.org/2007/app"
    xmlns:sc="http://schemas.google.com/structuredcontent/2009"
    xmlns:scp="http://schemas.google.com/structuredcontent/2009/products">

  <xs:element name="entry">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="id" type="xs:anyURI"></xs:element>
        <xs:element name="published" type="xs:date"></xs:element>
        <xs:element name="updated" type="xs:date"></xs:element>
        <xs:element name="title" type="xs:string"></xs:element>
        <!-- how do I define the <app:edited type="date" /> element here?? -->
      </xs:sequence>
    </xs:complexType>
  </xs:element>
</xs:schema>

Ответы [ 3 ]

0 голосов
/ 18 января 2012

Сначала вам нужно заполучить схемы. Затем вы можете добавить их в хранилище схем Visual Studio:

enter image description here

Это означает, что любые документы экземпляра XML, созданные вами в Visual Studio, имеют доступ к хранилищу схем с точки зрения проверки.

Затем вы модифицируете свою схему. Сначала импортируйте новую схему:

<?xml version="1.0" encoding="utf-8"?>
<xs:schema ... xmlns:app="http://www.w3.org/2007/app" ... >
  <xs:import namespace="http://www.w3.org/2007/app" />
  ...

Затем сделайте ссылку на тип, который вы хотите использовать из этой схемы

<xs:element name="entry">
  <xs:complexType>
    <xs:sequence>
      ...
      <!-- how do I define the <app:edited type="date" /> element here?? -->
      <xs:element ref="app:edited" />
    </xs:sequence>
  </xs:complexType>
</xs:element>
0 голосов
/ 20 мая 2015

Похоже, что некоторые файлы схемы доступны по адресу https://tools.oasis -open.org / version-control / browse / wsvn / cmis / trunk / SchemaProject / schema / - насколько они «официальные»,Я не могу сказать ...

0 голосов
/ 18 января 2012

В основном вы хотите повторно использовать определения (например, edited), доступные в других схемах. Для этого вам нужно импортировать эти другие схемы в вашу собственную схему, используя xsd: import . Таким образом, вы должны найти эти схемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...