master/ldif/ldif-core/src/main/resources/xsd/ImportJob.xsd

User picture

Commiter: Andrea Matteini

Author: Andrea Matteini

Revision: 67000aced3


File Size: 3.41 KB

(23 Apr 12:30 UTC) About 1 month ago

Changes: ImportJobs dataSource element is now optional, fixed #123

 
Show/hide line numbers
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xmlns:ldif="http://www4.wiwiss.fu-berlin.de/ldif/"
           elementFormDefault="qualified"
           targetNamespace="http://www4.wiwiss.fu-berlin.de/ldif/" >

  <xs:simpleType name="refreshScheduleType">
    <xs:restriction base="xs:normalizedString">
        <xs:enumeration value="onStartup"/>
        <xs:enumeration value="always"/>
        <xs:enumeration value="hourly"/>
        <xs:enumeration value="daily"/>
        <xs:enumeration value="weekly"/>
        <xs:enumeration value="monthly"/>
        <xs:enumeration value="yearly"/>
        <xs:enumeration value="never"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="internalIdType" >
    <xs:restriction base="xs:normalizedString" >
        <xs:pattern value="[A-Za-z0-9_.]+"/>
    </xs:restriction>
  </xs:simpleType>

  <xs:element name="job" abstract="true" />

  <xs:element name="quadImportJob" substitutionGroup="ldif:job">
    <xs:complexType>
       <xs:sequence>
        <xs:element name="dumpLocation" type="xs:string" />
        <xs:element name="renameGraphs" type="xs:string" minOccurs="0" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="tripleImportJob" substitutionGroup="ldif:job">
    <xs:complexType>
       <xs:sequence>
        <xs:element name="dumpLocation" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:element name="crawlImportJob" substitutionGroup="ldif:job">
    <xs:complexType>
      <xs:all>
        <xs:element name="seedURIs" >
          <xs:complexType>
            <xs:sequence>
              <xs:element name="uri" type="xs:anyURI" maxOccurs="unbounded" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="predicatesToFollow" minOccurs="0" >
          <xs:complexType>
            <xs:sequence>
              <xs:element name="uri" type="xs:anyURI" maxOccurs="unbounded" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
	    <xs:element name="levels" type="xs:unsignedShort" minOccurs="0" />
        <xs:element name="resourceLimit" type="xs:unsignedInt" minOccurs="0" />
        <xs:element name="renameGraphs" type="xs:string" minOccurs="0" />
      </xs:all>
    </xs:complexType>
  </xs:element>

  <xs:element name="sparqlImportJob" substitutionGroup="ldif:job">
    <xs:complexType>
     <xs:all>
        <xs:element name="endpointLocation" type="xs:anyURI" />

        <xs:element name="graphName" type="xs:anyURI" minOccurs="0" />

        <xs:element name="tripleLimit" type="xs:unsignedInt" minOccurs="0" />

        <xs:element name="sparqlPatterns" minOccurs="0" >
          <xs:complexType>
            <xs:sequence>
              <xs:element name="pattern" type="xs:string" maxOccurs="unbounded" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
     </xs:all>
    </xs:complexType>
  </xs:element>

  <xs:element name="importJob">
    <xs:complexType>
      <xs:all>
                <!-- the elements are unordered -->

        <xs:element name="internalId" type="ldif:internalIdType" minOccurs="0" />

        <xs:element name="dataSource" type="xs:string" minOccurs="0" />

        <xs:element name="refreshSchedule" type="ldif:refreshScheduleType" />

        <xs:element ref="ldif:job" />

     </xs:all>
    </xs:complexType>
  </xs:element>

</xs:schema>