Java class direved from inner class

Schuriko

Bekanntes Mitglied
Ist es eigentlich möglich eine outer class von einer inner class abzuleiten? also z.B. wie folgt
Java:
class A extends B {
    ... class B {
        ...
    }
}
 
K

kneitzel

Gast
Wenn die innere Klasse static ist, dann kannst Du davon auch ableiten. Durch das static wird die Klasse halt ohne Instanz der äußeren Klasse nutzbar.

Aber die innere Klasse muss in einer anderen Klasse sein, da du sonst sozusagen eine zyklische Abhängigkeit bekommst.

public class OuterClassOfInnerClass extends OuterClassOfInnerClass.InnerClassTest
zeigt es - Du erweiterst die Klasse mit etwas, das in ihr definiert ist ... das geht nicht!

Aber sowas geht:
Java:
public class OuterClassOfInnerClass {
    public static class InnerClassTest {
        public String test = "test";
    }

    public static void main(String[] args) {
        OuterTestClass testInstance = new OuterTestClass();
        testInstance.printTest();
    }
}

Java:
public class OuterTestClass extends OuterClassOfInnerClass.InnerClassTest {

    public void printTest() {
        System.out.println(test);
    }
}
 
K

kneitzel

Gast
Wobei die Frage nach dem Sinn interessant wird. Wozu kann man das brauchen?

Ich könnte mir vorstellen, dass da jemand absoluten Bockmist gebaut hat und etwas zu einer Inneren Klasse gemacht hat, was Du brauchst.
Also extra nett, dass er etwas public gemacht hat, ob wohl es aus Sicht des Entwicklers etwas innerhalb der Klasse selbst ist ...
Oder ist es nur im package und jetzt wird in eurem Code der gleiche Namespace verwendet? Weil man ja sonst keinen Zugriff auf die innere Klasse hat ...

Also Bauchschmerzen sind da irgendwie vorprogrammiert meine ich ... ich würde mir das Konstrukt auf jeden Fall erläutern lassen denn wie sagt man so schön: "it smells"....
 

Schuriko

Bekanntes Mitglied
Wobei die Frage nach dem Sinn interessant wird. Wozu kann man das brauchen?

Ich könnte mir vorstellen, dass da jemand absoluten Bockmist gebaut hat und etwas zu einer Inneren Klasse gemacht hat, was Du brauchst.
Also extra nett, dass er etwas public gemacht hat, ob wohl es aus Sicht des Entwicklers etwas innerhalb der Klasse selbst ist ...
Oder ist es nur im package und jetzt wird in eurem Code der gleiche Namespace verwendet? Weil man ja sonst keinen Zugriff auf die innere Klasse hat ...

Also Bauchschmerzen sind da irgendwie vorprogrammiert meine ich ... ich würde mir das Konstrukt auf jeden Fall erläutern lassen denn wie sagt man so schön: "it smells"....
Das habe ich mir auch gedacht.

Naja ich bin gerad dabei hr-xml 4.3. als Java Klassen umzusetzen. Hinter hr-xml steht unter anderem SAP, Microshrott und andere In einigen anderen xml dokumenten habe ich persönlich mir es auch schon gedacht, aber ich selbst bin ja noch Junior und will nicht die Entwicklern anreden:

XML:
<?xml version="1.0" encoding="utf-8"?>
<xsd:schema xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:hropen="https://hropenstandards.org/schema/xml/" targetNamespace="https://hropenstandards.org/schema/xml/" version="4.2.0" id="PositionProfileType" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <xsd:include schemaLocation="../../common/xml/codelist/LanguageCodeList.xsd" />
  <xsd:include schemaLocation="../../common/xml/communication/EmailType.xsd" />
  <xsd:include schemaLocation="TravelType.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/CodeType.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/MeasureType.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/FormattedDateTimeType.xsd" />
  <xsd:include schemaLocation="../../common/xml/communication/AddressType.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/StringTypeArray.xsd" />
  <xsd:include schemaLocation="../../common/xml/codelist/CountryCodeList.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/LocalizationInclusion.xsd" />
  <xsd:include schemaLocation="../../common/xml/codelist/PositionTypeCodeList.xsd" />
  <xsd:include schemaLocation="../../common/xml/communication/WebType.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/IndicatorType.xsd" />
  <xsd:include schemaLocation="../../common/xml/codelist/IscedCodeList.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/EntityType.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/AttachmentType.xsd" />
  <xsd:include schemaLocation="jdx/AnnotatedDefinedTermType.xsd" />
  <xsd:include schemaLocation="../../common/xml/work/ScheduleType.xsd" />
  <xsd:include schemaLocation="RelocationType.xsd" />
  <xsd:include schemaLocation="../../common/xml/competency/PositionCompetencyType.xsd" />
  <xsd:include schemaLocation="../../common/xml/base/IdentifierType.xsd" />
  <xsd:include schemaLocation="../../common/xml/codelist/PositionScheduleTypeCodeList.xsd" />
  <xsd:include schemaLocation="../../common/xml/pay/RemunerationPackageType.xsd" />
  <xsd:include schemaLocation="../../common/xml/organization/OrganizationType.xsd" />
  <xsd:include schemaLocation="RemoteWorkType.xsd" />
  <xsd:include schemaLocation="../../common/xml/work/DisabilityType.xsd" />
  <xsd:include schemaLocation="../../common/xml/communication/PhoneType.xsd" />
  <xsd:include schemaLocation="../../common/xml/person/SpecifiedPersonType.xsd" />
  <xsd:include schemaLocation="../../common/xml/communication/LocationType.xsd" />
  <xsd:complexType name="BasePositionProfileType">
    <xsd:annotation>
      <xsd:documentation>The core information about a job or position opening.</xsd:documentation>
    </xsd:annotation>
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="profileId" type="hropen:IdentifierType">
        <xsd:annotation>
          <xsd:documentation>The primary identifier of the position profile, typically from the system of record.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="alternateIds">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>An array of other identifiers for the position profile, typically for related, secondary, or other systems.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:IdentifierType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionId" type="hropen:IdentifierType">
        <xsd:annotation>
          <xsd:documentation>The identifier for the position that maybe be used externally in an advertisement.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionTitle">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>A short phrase describing the position as it would be listed on a business card or in a company directory. OED: An appellation attaching to a position in virtue of rank, function or office.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionUri">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>URI to detailed resources about the position. This can be used as another type of identifier.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="postingInstructions">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Instructions related to the position being posted to a third party site.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="channelId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>Identifies a job board or media channel associated with a job posting.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="start" type="hropen:FormattedDateTimeType">
                    <xsd:annotation>
                      <xsd:documentation>The start date of the posting.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType">
                    <xsd:annotation>
                      <xsd:documentation>The end date of the posting.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="templateId">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Identifies a template to apply in processing a job posting order.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="brandingId">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Identifies branding to be applied in processing a job posting order.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="postingOptionCodes">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Used to communicate a choice among options available with respect to the posting. For example, some job boards and advertising venues may offer "bolding" or other options relating to the display or distribution of the posting.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:CodeType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="applicationMethods">
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
                          <xsd:complexType>
                            <xsd:annotation>
                              <xsd:documentation>Describes the way in which a candidate might apply for the position.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:all>
                              <xsd:element minOccurs="0" maxOccurs="1" name="instructions">
                                <xsd:simpleType>
                                  <xsd:annotation>
                                    <xsd:documentation>Instructions to help guide a candidate when they are applying for the position opening.</xsd:documentation>
                                  </xsd:annotation>
                                  <xsd:restriction base="xsd:string" />
                                </xsd:simpleType>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="personContact" type="hropen:SpecifiedPersonType">
                                <xsd:annotation>
                                  <xsd:documentation>The person to contact regarding this position.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationUri" type="hropen:WebType">
                                <xsd:annotation>
                                  <xsd:documentation>Application link used to apply for the position. This would typically be a URI to a career site job, to an application web form, or an upload page.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationEmail" type="hropen:EmailType">
                                <xsd:annotation>
                                  <xsd:documentation>Email address to which the candidate can apply to the job or position opening.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationSms">
                                <xsd:complexType>
                                  <xsd:annotation>
                                    <xsd:documentation>Phone number to apply for the job or position opening by SMS message.</xsd:documentation>
                                  </xsd:annotation>
                                  <xsd:all>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="countryDialingCode" type="hropen:CodeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The country dialing code for a communication number.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="areaDialingCode" type="hropen:CodeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The area dialing code for a communication number.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="dialNumber">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>The communication number, not including country dialing or area dialing codes.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="phoneExtension">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>The extension of the associated communication number.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="access">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>The text that permits access to the electronic network of the associated communication number such as telephone network, for example 9, *70.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="1" maxOccurs="1" name="formattedNumber">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Specifies details of an actual formatted number.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="containedText">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Text that must be used by the candidate in the SMS message to indicate the intent to apply for a specific position.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                  </xsd:all>
                                </xsd:complexType>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationPhone" type="hropen:PhoneType">
                                <xsd:annotation>
                                  <xsd:documentation>Information to apply by a phone based service or direct phone number.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="inPersonApplication">
                                <xsd:complexType>
                                  <xsd:all>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="address" type="hropen:AddressType">
                                      <xsd:annotation>
                                        <xsd:documentation>The address of where to go to apply for the job or position opening in person.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="travelDirections">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Instructions for traveling to the location for an in person application.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="mapLink">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>A URI to a map or detailed instructions to do an in person application.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="additionalInstructions">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Additional instructions on how to apply for the job or position opening in person.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                  </xsd:all>
                                </xsd:complexType>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationCloseDate">
                                <xsd:complexType>
                                  <xsd:all>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The date after which applications will not be accepted.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="typeCode" type="hropen:CodeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The type of application close date, such as an Internal Close Date or External Close Date.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                  </xsd:all>
                                </xsd:complexType>
                              </xsd:element>
                            </xsd:all>
                          </xsd:complexType>
                        </xsd:element>
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="positionUri">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>URI to detailed resources about the position or job advertisement for this posting instruction. The URI may contain publication specific information which may vary by channel.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionLocation">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The location or locations of a position.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="id" type="hropen:IdentifierType" />
                  <xsd:element minOccurs="0" maxOccurs="1" name="line">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Street line address</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="extendedLines">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Extended address components (e.g. apartment or suite number).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:AddressComponentType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="countryCode" type="hropen:CountryCodeList" />
                  <xsd:element minOccurs="0" maxOccurs="1" name="countrySubDivisions">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Qualifies the further divisions of the Country. These may be Districts, Regions, States, Provinces etc.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:AddressComponentType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="city">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="postalCode">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="postOfficeBox">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="geoLocation" type="hropen:GeoType" />
                  <xsd:element minOccurs="0" maxOccurs="1" name="formattedAddress">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="name">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The name of a location.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="referenceLocation">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>This is a summary description of the physical location of the position. This is intended to be matched against a candidate's preference for work location.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionOrganizations">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The organization which has the position. Can contain multiple organizations, e.g. with different responsibility codes.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="taxId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>A government assigned identifier to distinguish organization. This typically is a country-level tax code. For example, Federal Employer Identification Number (FEIN) in the USA.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="legalId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>An identifier of the organization for legal purposes. This could be a company, state, or other kind of identifier. For example, Data Universal Numbering System, abbreviated as DUNS.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="industryCodes">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Deprecated. Use IndustryIdentifiers instead.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:CodeType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="industryIdentifiers">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>The types of industry to which the organization belongs. The Industry identifiers could be referenced to a standard taxonomy (such as NAICS) or a custom taxonomy.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:IdentifierType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="headCount" type="hropen:NumberType">
                    <xsd:annotation>
                      <xsd:documentation>The number of employees in the organization. Depending on the organization, this could include full-time, part-time and contractors.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="revenue" type="hropen:AmountType">
                    <xsd:annotation>
                      <xsd:documentation>The amount of revenue of the organization, typically from the most recent fiscal year.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="description" type="hropen:TextType">
                    <xsd:annotation>
                      <xsd:documentation>A description or quick summary of the organization.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="geographicResponsibilityCode" type="hropen:GeographicResponsibilityCodeList">
                    <xsd:annotation>
                      <xsd:documentation>A code that classifies the geographic level at which the organization operates.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="ownershipType" type="hropen:OwnershipTypeCodeList">
                    <xsd:annotation>
                      <xsd:documentation>A code that classifies the ownership of the organization.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="stockSymbol" type="hropen:CodeType">
                    <xsd:annotation>
                      <xsd:documentation>The stock symbol for the organization. The stock exchange symbol should also be included. Example: NYSE:XOM representing Exxon Mobile on the New York Stock Exchange.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="workEnvironmentCode" type="hropen:CodeType">
                    <xsd:annotation>
                      <xsd:documentation>A code to represent the working environment of the organization. E.g., Office, Workshop, Factory, etc.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="contacts">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Specific people at the organization who are contacts.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:SpecifiedPersonType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="tradeName">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Trade name of the organizationor doing-business-as (DBA).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="StatusHistory">
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:StatusType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="domainName">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The internet domain to help identify the organization and a reference to find additional information.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="responsibilityCode" type="hropen:ResponsibilityCodeList">
                    <xsd:annotation>
                      <xsd:documentation>The level or the responsibility at which the organization operates.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="communication" type="hropen:CommunicationType">
                    <xsd:annotation>
                      <xsd:documentation>The methods of communication by which the organization can be contacted.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="id" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>A unique identifier which cannot be expressed as enumeration.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="name">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Free text description for that entity.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="code" type="hropen:CodeType">
                    <xsd:annotation>
                      <xsd:documentation>A code which can be expressed as enumeration.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionOpenQuantity">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The position quantity currently available to be filled. This is intended as a finer-grained expression of the total number of positions to be filled. For example, there may be 50 positions to fill, but only 10 immediately available to be filled.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:integer" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="jobCategories">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>A code classifying the type or category of job. This may be used for occupational classification of the job. JobCategory usually would be repeatable so that a single job could be classified across multiple dimensions. JobCategory could be used to classify the job in terms of industry, but note that an explicit IndustryCode is available in the organization which might be a more appropriate place for use.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:EntityType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="careerLevels">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>A code classifying the level of a candidate based on career experience. This may vary by jurisdiction or systems, e.g. Student, Entry Level, Recent Graduate, Mid-Career, Manager, Experienced Non-Manager, Senior Executive, etc.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:EntityType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionOfferingTypes">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>These are values that are descriptive in classifying a position within advertising or communications of a position opportunity or "offering". Note that these classifications are useful within advertising, but they are not precise classes useful internally to drive pay, benefits, and HR compliance. Enumerated values are: DirectHire, Temporary, TemporaryToHire, ContractToHire, Contract, Internship, Externship, Apprenticeship, Seasonal, Student and Volunteer. Consider that "Temporary" and "DirectHire" are not parallel concepts, but are still commonly used in classifying jobs within advertising.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:PositionTypeCodeList" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionQualifications">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The qualifications that are required for a position.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:PositionQualificationType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="structuredPositionRequirements">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The structured position requirements.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:AnnotatedDefinedTermType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionFormattedDescriptions">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The descriptions for the position profile. The descriptions may support HTML or other markup, and may be in logical sections.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="descriptionId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>An identifier for the description (section).</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="title">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The title for the description (section).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="content">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The content of the description (section).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="travel" type="hropen:TravelType">
        <xsd:annotation>
          <xsd:documentation>Information regarding travel preferences.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="workingLanguages">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Information on the work languages used for the job or position opening.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="name">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="code" type="hropen:LanguageCodeList" />
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="PostingInstructionType">
    <xsd:annotation>
      <xsd:documentation>A collection of information about where and how a posting should be communicated. A posting channel usually would be a job board or other advertising medium.</xsd:documentation>
    </xsd:annotation>
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="channelId" type="hropen:IdentifierType">
        <xsd:annotation>
          <xsd:documentation>Identifies a job board or media channel associated with a job posting.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="start" type="hropen:FormattedDateTimeType">
        <xsd:annotation>
          <xsd:documentation>The start date of the posting.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType">
        <xsd:annotation>
          <xsd:documentation>The end date of the posting.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="templateId">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>Identifies a template to apply in processing a job posting order.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="brandingId">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>Identifies branding to be applied in processing a job posting order.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="postingOptionCodes">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Used to communicate a choice among options available with respect to the posting. For example, some job boards and advertising venues may offer "bolding" or other options relating to the display or distribution of the posting.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:CodeType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="applicationMethods">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:annotation>
                  <xsd:documentation>Describes the way in which a candidate might apply for the position.</xsd:documentation>
                </xsd:annotation>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="instructions">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Instructions to help guide a candidate when they are applying for the position opening.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="personContact" type="hropen:SpecifiedPersonType">
                    <xsd:annotation>
                      <xsd:documentation>The person to contact regarding this position.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="applicationUri" type="hropen:WebType">
                    <xsd:annotation>
                      <xsd:documentation>Application link used to apply for the position. This would typically be a URI to a career site job, to an application web form, or an upload page.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="applicationEmail" type="hropen:EmailType">
                    <xsd:annotation>
                      <xsd:documentation>Email address to which the candidate can apply to the job or position opening.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="applicationSms">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Phone number to apply for the job or position opening by SMS message.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:all>
                        <xsd:element minOccurs="0" maxOccurs="1" name="countryDialingCode" type="hropen:CodeType">
                          <xsd:annotation>
                            <xsd:documentation>The country dialing code for a communication number.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="areaDialingCode" type="hropen:CodeType">
                          <xsd:annotation>
                            <xsd:documentation>The area dialing code for a communication number.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="dialNumber">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>The communication number, not including country dialing or area dialing codes.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="phoneExtension">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>The extension of the associated communication number.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="access">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>The text that permits access to the electronic network of the associated communication number such as telephone network, for example 9, *70.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element minOccurs="1" maxOccurs="1" name="formattedNumber">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>Specifies details of an actual formatted number.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="containedText">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>Text that must be used by the candidate in the SMS message to indicate the intent to apply for a specific position.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                      </xsd:all>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="applicationPhone" type="hropen:PhoneType">
                    <xsd:annotation>
                      <xsd:documentation>Information to apply by a phone based service or direct phone number.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="inPersonApplication">
                    <xsd:complexType>
                      <xsd:all>
                        <xsd:element minOccurs="0" maxOccurs="1" name="address" type="hropen:AddressType">
                          <xsd:annotation>
                            <xsd:documentation>The address of where to go to apply for the job or position opening in person.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="travelDirections">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>Instructions for traveling to the location for an in person application.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="mapLink">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>A URI to a map or detailed instructions to do an in person application.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="additionalInstructions">
                          <xsd:simpleType>
                            <xsd:annotation>
                              <xsd:documentation>Additional instructions on how to apply for the job or position opening in person.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:restriction base="xsd:string" />
                          </xsd:simpleType>
                        </xsd:element>
                      </xsd:all>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="applicationCloseDate">
                    <xsd:complexType>
                      <xsd:all>
                        <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType">
                          <xsd:annotation>
                            <xsd:documentation>The date after which applications will not be accepted.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                        <xsd:element minOccurs="0" maxOccurs="1" name="typeCode" type="hropen:CodeType">
                          <xsd:annotation>
                            <xsd:documentation>The type of application close date, such as an Internal Close Date or External Close Date.</xsd:documentation>
                          </xsd:annotation>
                        </xsd:element>
                      </xsd:all>
                    </xsd:complexType>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionUri">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>URI to detailed resources about the position or job advertisement for this posting instruction. The URI may contain publication specific information which may vary by channel.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="ApplicationMethodType">
    <xsd:annotation>
      <xsd:documentation>Instructions on how to apply for the position.</xsd:documentation>
    </xsd:annotation>
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="instructions">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>Instructions to help guide a candidate when they are applying for the position opening.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="personContact" type="hropen:SpecifiedPersonType">
        <xsd:annotation>
          <xsd:documentation>The person to contact regarding this position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="applicationUri" type="hropen:WebType">
        <xsd:annotation>
          <xsd:documentation>Application link used to apply for the position. This would typically be a URI to a career site job, to an application web form, or an upload page.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="applicationEmail" type="hropen:EmailType">
        <xsd:annotation>
          <xsd:documentation>Email address to which the candidate can apply to the job or position opening.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="applicationSms">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Phone number to apply for the job or position opening by SMS message.</xsd:documentation>
          </xsd:annotation>
          <xsd:all>
            <xsd:element minOccurs="0" maxOccurs="1" name="countryDialingCode" type="hropen:CodeType">
              <xsd:annotation>
                <xsd:documentation>The country dialing code for a communication number.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="areaDialingCode" type="hropen:CodeType">
              <xsd:annotation>
                <xsd:documentation>The area dialing code for a communication number.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="dialNumber">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>The communication number, not including country dialing or area dialing codes.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="phoneExtension">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>The extension of the associated communication number.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="access">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>The text that permits access to the electronic network of the associated communication number such as telephone network, for example 9, *70.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="1" maxOccurs="1" name="formattedNumber">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>Specifies details of an actual formatted number.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="containedText">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>Text that must be used by the candidate in the SMS message to indicate the intent to apply for a specific position.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
          </xsd:all>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="applicationPhone" type="hropen:PhoneType">
        <xsd:annotation>
          <xsd:documentation>Information to apply by a phone based service or direct phone number.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="inPersonApplication">
        <xsd:complexType>
          <xsd:all>
            <xsd:element minOccurs="0" maxOccurs="1" name="address" type="hropen:AddressType">
              <xsd:annotation>
                <xsd:documentation>The address of where to go to apply for the job or position opening in person.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="travelDirections">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>Instructions for traveling to the location for an in person application.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="mapLink">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>A URI to a map or detailed instructions to do an in person application.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="additionalInstructions">
              <xsd:simpleType>
                <xsd:annotation>
                  <xsd:documentation>Additional instructions on how to apply for the job or position opening in person.</xsd:documentation>
                </xsd:annotation>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
          </xsd:all>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="applicationCloseDate">
        <xsd:complexType>
          <xsd:all>
            <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType">
              <xsd:annotation>
                <xsd:documentation>The date after which applications will not be accepted.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
            <xsd:element minOccurs="0" maxOccurs="1" name="typeCode" type="hropen:CodeType">
              <xsd:annotation>
                <xsd:documentation>The type of application close date, such as an Internal Close Date or External Close Date.</xsd:documentation>
              </xsd:annotation>
            </xsd:element>
          </xsd:all>
        </xsd:complexType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="PositionQualificationType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="qualificationSummary">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>A summary of the qualifications needed for the position.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionCompetencies">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>A list of the competencies required or desired for the position. Used for competency-based recruiting systems for matching.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:PositionCompetencyType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="educationRequirement" type="hropen:EducationRequirementType">
        <xsd:annotation>
          <xsd:documentation>The educational requirements for the position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="experienceSummary">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The detailed summary of the experience required for the position in terms of category, measure, and level.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:ExperienceCategoryType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="licences" type="hropen:StringTypeArray">
        <xsd:annotation>
          <xsd:documentation>The required licenses for the position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="EducationRequirementType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="educationLevelCode">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The level of education required for the position. This is used to transmit a system-specific or local variable. Use iscedEducationLevelCode where possible.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="iscedEducationLevelCode" type="hropen:IscedCodeList">
        <xsd:annotation>
          <xsd:documentation>ISCED: International Standard Classification of Education - is the standard classification of the education level of this requirement.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="degreeTypeCode">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The type of degree required for the position.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="programs" type="hropen:StringTypeArray">
        <xsd:annotation>
          <xsd:documentation>The education programs required for a position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="programConcentrations" type="hropen:StringTypeArray">
        <xsd:annotation>
          <xsd:documentation>The areas for the focus of study specific areas required for the position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="institutions" type="hropen:StringTypeArray">
        <xsd:annotation>
          <xsd:documentation>The requirement or specific institutions to be considered for the position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="descriptions" type="hropen:StringTypeArray">
        <xsd:annotation>
          <xsd:documentation>Descriptions of the educational requirements for the position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="ExperienceCategoryType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="categoryCode" type="hropen:CodeType">
        <xsd:annotation>
          <xsd:documentation>A code to represent the category of required experience.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="measure" type="hropen:MeasureType">
        <xsd:annotation>
          <xsd:documentation>A measure of the experience required for the position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="levelCode">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The level required for the category of required experience.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="descriptions" type="hropen:StringTypeArray">
        <xsd:annotation>
          <xsd:documentation>Description of required experience.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="PositionClassificationType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="USPositionClassification" type="hropen:USPositionClassificationType">
        <xsd:annotation>
          <xsd:documentation>These are USA-specific position classification items.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="DEPositionClassification" type="hropen:DEPositionClassificationType">
        <xsd:annotation>
          <xsd:documentation>These are Germany-specific position classification items.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="extendedPositionClassifications">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>These are other country specific position classification items.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:ExtendedPositionClassificationType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="USPositionClassificationType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="exemptIndicator" type="hropen:IndicatorType">
        <xsd:annotation>
          <xsd:documentation>An indicator of position's coverage under applicable wage-hour law. For example, the U.S. Fair Labor Standards Act (FLSA) and implementing regulations. Enumerated values are: exempt and non-exempt. NOTE: In the U.S., while it is common to classify a position as exempt or non-exempt, actual coverage under the law usually is determined on the basis of an employee's actual performance or engagement within a workweek and not on whether an employee is assigned to or associated with a position that an employer has classified as "exempt" or "nonexempt".</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="EEOCJobCategoryCodes">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>A code classifying the primary method of payment for the associated position or employment. This classifies the method by which remuneration for a position is provided or calculated. Typical values are 'OfficialsAndManagers', 'Professionals', 'Technicians', 'Sales', 'OfficialAndClerical', 'CraftWorkersSkilled', 'OperativeSemi-Skilled', 'LaborersUnskilled', 'ServiceWorkers'.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:CodeType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="affirmativeActionPlanJobGroupIds">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Identifiers for specific qualifying affirmitive action plan groups.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:IdentifierType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="DEPositionClassificationType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="BKZClassification" type="hropen:EntityType">
        <xsd:annotation>
          <xsd:documentation>Berufskennziffer (BKZ) is a German occupational classification system.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="DEEducationAuthorizationIndicator" type="hropen:IndicatorType">
        <xsd:annotation>
          <xsd:documentation>A German education authorization indicator.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="disabilityLevelCode" type="hropen:DisabilityLevelCodeList">
        <xsd:annotation>
          <xsd:documentation>A value from an external code list classifying the level of disability. A simple example code list: 1 - need for another persons assistance with daily life tasks; 2 - inability to perform one or more sensory or physical functions; 3 - experiencing difficulties in multiple sensory or physical functions; 4 - experiencing difficulty in just one function; and 5 - no limitations in functioning.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="ExtendedPositionClassificationType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="countryCode" type="hropen:CountryCodeList">
        <xsd:annotation>
          <xsd:documentation>The country to which the specific position classification applies.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="name">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The name of the specific position classification.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="value">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The value of the specific position classification.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="WorkingPeriodType">
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="workDuration" type="hropen:MeasureType">
        <xsd:annotation>
          <xsd:documentation>The amount of time to work, e.g. 40 hours, 4 days.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="baseDuration" type="hropen:MeasureType">
        <xsd:annotation>
          <xsd:documentation>The related base time interval, e.g. 1 week, 1 month.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="descriptions" type="hropen:StringTypeArray">
        <xsd:annotation>
          <xsd:documentation>Descriptions of the working period.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:complexType name="PositionProfileType">
    <xsd:annotation>
      <xsd:documentation>A profile of a job or position opening that is available at an organization.</xsd:documentation>
    </xsd:annotation>
    <xsd:all>
      <xsd:element minOccurs="0" maxOccurs="1" name="profileId" type="hropen:IdentifierType">
        <xsd:annotation>
          <xsd:documentation>The primary identifier of the position profile, typically from the system of record.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="alternateIds">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>An array of other identifiers for the position profile, typically for related, secondary, or other systems.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:IdentifierType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionId" type="hropen:IdentifierType">
        <xsd:annotation>
          <xsd:documentation>The identifier for the position that maybe be used externally in an advertisement.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionTitle">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>A short phrase describing the position as it would be listed on a business card or in a company directory. OED: An appellation attaching to a position in virtue of rank, function or office.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionUri">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>URI to detailed resources about the position. This can be used as another type of identifier.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="postingInstructions">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Instructions related to the position being posted to a third party site.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="channelId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>Identifies a job board or media channel associated with a job posting.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="start" type="hropen:FormattedDateTimeType">
                    <xsd:annotation>
                      <xsd:documentation>The start date of the posting.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType">
                    <xsd:annotation>
                      <xsd:documentation>The end date of the posting.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="templateId">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Identifies a template to apply in processing a job posting order.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="brandingId">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Identifies branding to be applied in processing a job posting order.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="postingOptionCodes">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Used to communicate a choice among options available with respect to the posting. For example, some job boards and advertising venues may offer "bolding" or other options relating to the display or distribution of the posting.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:CodeType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="applicationMethods">
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
                          <xsd:complexType>
                            <xsd:annotation>
                              <xsd:documentation>Describes the way in which a candidate might apply for the position.</xsd:documentation>
                            </xsd:annotation>
                            <xsd:all>
                              <xsd:element minOccurs="0" maxOccurs="1" name="instructions">
                                <xsd:simpleType>
                                  <xsd:annotation>
                                    <xsd:documentation>Instructions to help guide a candidate when they are applying for the position opening.</xsd:documentation>
                                  </xsd:annotation>
                                  <xsd:restriction base="xsd:string" />
                                </xsd:simpleType>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="personContact" type="hropen:SpecifiedPersonType">
                                <xsd:annotation>
                                  <xsd:documentation>The person to contact regarding this position.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationUri" type="hropen:WebType">
                                <xsd:annotation>
                                  <xsd:documentation>Application link used to apply for the position. This would typically be a URI to a career site job, to an application web form, or an upload page.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationEmail" type="hropen:EmailType">
                                <xsd:annotation>
                                  <xsd:documentation>Email address to which the candidate can apply to the job or position opening.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationSms">
                                <xsd:complexType>
                                  <xsd:annotation>
                                    <xsd:documentation>Phone number to apply for the job or position opening by SMS message.</xsd:documentation>
                                  </xsd:annotation>
                                  <xsd:all>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="countryDialingCode" type="hropen:CodeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The country dialing code for a communication number.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="areaDialingCode" type="hropen:CodeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The area dialing code for a communication number.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="dialNumber">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>The communication number, not including country dialing or area dialing codes.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="phoneExtension">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>The extension of the associated communication number.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="access">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>The text that permits access to the electronic network of the associated communication number such as telephone network, for example 9, *70.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="1" maxOccurs="1" name="formattedNumber">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Specifies details of an actual formatted number.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="containedText">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Text that must be used by the candidate in the SMS message to indicate the intent to apply for a specific position.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                  </xsd:all>
                                </xsd:complexType>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationPhone" type="hropen:PhoneType">
                                <xsd:annotation>
                                  <xsd:documentation>Information to apply by a phone based service or direct phone number.</xsd:documentation>
                                </xsd:annotation>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="inPersonApplication">
                                <xsd:complexType>
                                  <xsd:all>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="address" type="hropen:AddressType">
                                      <xsd:annotation>
                                        <xsd:documentation>The address of where to go to apply for the job or position opening in person.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="travelDirections">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Instructions for traveling to the location for an in person application.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="mapLink">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>A URI to a map or detailed instructions to do an in person application.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="additionalInstructions">
                                      <xsd:simpleType>
                                        <xsd:annotation>
                                          <xsd:documentation>Additional instructions on how to apply for the job or position opening in person.</xsd:documentation>
                                        </xsd:annotation>
                                        <xsd:restriction base="xsd:string" />
                                      </xsd:simpleType>
                                    </xsd:element>
                                  </xsd:all>
                                </xsd:complexType>
                              </xsd:element>
                              <xsd:element minOccurs="0" maxOccurs="1" name="applicationCloseDate">
                                <xsd:complexType>
                                  <xsd:all>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The date after which applications will not be accepted.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                    <xsd:element minOccurs="0" maxOccurs="1" name="typeCode" type="hropen:CodeType">
                                      <xsd:annotation>
                                        <xsd:documentation>The type of application close date, such as an Internal Close Date or External Close Date.</xsd:documentation>
                                      </xsd:annotation>
                                    </xsd:element>
                                  </xsd:all>
                                </xsd:complexType>
                              </xsd:element>
                            </xsd:all>
                          </xsd:complexType>
                        </xsd:element>
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="positionUri">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>URI to detailed resources about the position or job advertisement for this posting instruction. The URI may contain publication specific information which may vary by channel.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionLocation">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The location or locations of a position.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="id" type="hropen:IdentifierType" />
                  <xsd:element minOccurs="0" maxOccurs="1" name="line">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Street line address</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="extendedLines">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Extended address components (e.g. apartment or suite number).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:AddressComponentType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="countryCode" type="hropen:CountryCodeList" />
                  <xsd:element minOccurs="0" maxOccurs="1" name="countrySubDivisions">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Qualifies the further divisions of the Country. These may be Districts, Regions, States, Provinces etc.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:AddressComponentType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="city">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="postalCode">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="postOfficeBox">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="geoLocation" type="hropen:GeoType" />
                  <xsd:element minOccurs="0" maxOccurs="1" name="formattedAddress">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="name">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The name of a location.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="referenceLocation">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>This is a summary description of the physical location of the position. This is intended to be matched against a candidate's preference for work location.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionOrganizations">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The organization which has the position. Can contain multiple organizations, e.g. with different responsibility codes.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="taxId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>A government assigned identifier to distinguish organization. This typically is a country-level tax code. For example, Federal Employer Identification Number (FEIN) in the USA.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="legalId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>An identifier of the organization for legal purposes. This could be a company, state, or other kind of identifier. For example, Data Universal Numbering System, abbreviated as DUNS.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="industryCodes">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Deprecated. Use IndustryIdentifiers instead.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:CodeType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="industryIdentifiers">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>The types of industry to which the organization belongs. The Industry identifiers could be referenced to a standard taxonomy (such as NAICS) or a custom taxonomy.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:IdentifierType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="headCount" type="hropen:NumberType">
                    <xsd:annotation>
                      <xsd:documentation>The number of employees in the organization. Depending on the organization, this could include full-time, part-time and contractors.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="revenue" type="hropen:AmountType">
                    <xsd:annotation>
                      <xsd:documentation>The amount of revenue of the organization, typically from the most recent fiscal year.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="description" type="hropen:TextType">
                    <xsd:annotation>
                      <xsd:documentation>A description or quick summary of the organization.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="geographicResponsibilityCode" type="hropen:GeographicResponsibilityCodeList">
                    <xsd:annotation>
                      <xsd:documentation>A code that classifies the geographic level at which the organization operates.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="ownershipType" type="hropen:OwnershipTypeCodeList">
                    <xsd:annotation>
                      <xsd:documentation>A code that classifies the ownership of the organization.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="stockSymbol" type="hropen:CodeType">
                    <xsd:annotation>
                      <xsd:documentation>The stock symbol for the organization. The stock exchange symbol should also be included. Example: NYSE:XOM representing Exxon Mobile on the New York Stock Exchange.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="workEnvironmentCode" type="hropen:CodeType">
                    <xsd:annotation>
                      <xsd:documentation>A code to represent the working environment of the organization. E.g., Office, Workshop, Factory, etc.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="contacts">
                    <xsd:complexType>
                      <xsd:annotation>
                        <xsd:documentation>Specific people at the organization who are contacts.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:SpecifiedPersonType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="tradeName">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Trade name of the organizationor doing-business-as (DBA).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="StatusHistory">
                    <xsd:complexType>
                      <xsd:sequence>
                        <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:StatusType" />
                      </xsd:sequence>
                    </xsd:complexType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="domainName">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The internet domain to help identify the organization and a reference to find additional information.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="responsibilityCode" type="hropen:ResponsibilityCodeList">
                    <xsd:annotation>
                      <xsd:documentation>The level or the responsibility at which the organization operates.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="communication" type="hropen:CommunicationType">
                    <xsd:annotation>
                      <xsd:documentation>The methods of communication by which the organization can be contacted.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="id" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>A unique identifier which cannot be expressed as enumeration.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="name">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>Free text description for that entity.</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="code" type="hropen:CodeType">
                    <xsd:annotation>
                      <xsd:documentation>A code which can be expressed as enumeration.</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionOpenQuantity">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The position quantity currently available to be filled. This is intended as a finer-grained expression of the total number of positions to be filled. For example, there may be 50 positions to fill, but only 10 immediately available to be filled.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:integer" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="jobCategories">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>A code classifying the type or category of job. This may be used for occupational classification of the job. JobCategory usually would be repeatable so that a single job could be classified across multiple dimensions. JobCategory could be used to classify the job in terms of industry, but note that an explicit IndustryCode is available in the organization which might be a more appropriate place for use.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:EntityType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="careerLevels">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>A code classifying the level of a candidate based on career experience. This may vary by jurisdiction or systems, e.g. Student, Entry Level, Recent Graduate, Mid-Career, Manager, Experienced Non-Manager, Senior Executive, etc.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:EntityType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionOfferingTypes">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>These are values that are descriptive in classifying a position within advertising or communications of a position opportunity or "offering". Note that these classifications are useful within advertising, but they are not precise classes useful internally to drive pay, benefits, and HR compliance. Enumerated values are: DirectHire, Temporary, TemporaryToHire, ContractToHire, Contract, Internship, Externship, Apprenticeship, Seasonal, Student and Volunteer. Consider that "Temporary" and "DirectHire" are not parallel concepts, but are still commonly used in classifying jobs within advertising.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:PositionTypeCodeList" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionQualifications">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The qualifications that are required for a position.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:PositionQualificationType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="structuredPositionRequirements">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The structured position requirements.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:AnnotatedDefinedTermType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionFormattedDescriptions">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The descriptions for the position profile. The descriptions may support HTML or other markup, and may be in logical sections.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="descriptionId" type="hropen:IdentifierType">
                    <xsd:annotation>
                      <xsd:documentation>An identifier for the description (section).</xsd:documentation>
                    </xsd:annotation>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="title">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The title for the description (section).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="content">
                    <xsd:simpleType>
                      <xsd:annotation>
                        <xsd:documentation>The content of the description (section).</xsd:documentation>
                      </xsd:annotation>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="travel" type="hropen:TravelType">
        <xsd:annotation>
          <xsd:documentation>Information regarding travel preferences.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="workingLanguages">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Information on the work languages used for the job or position opening.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item">
              <xsd:complexType>
                <xsd:all>
                  <xsd:element minOccurs="0" maxOccurs="1" name="name">
                    <xsd:simpleType>
                      <xsd:restriction base="xsd:string" />
                    </xsd:simpleType>
                  </xsd:element>
                  <xsd:element minOccurs="0" maxOccurs="1" name="code" type="hropen:LanguageCodeList" />
                </xsd:all>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="language" type="hropen:LanguageCodeList" />
      <xsd:element minOccurs="0" maxOccurs="1" name="profileName">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>The name given to the profile. Often used in systems where multiple versions of a PositionProfile may be managed.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionPeriod">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The start and end date for the position.</xsd:documentation>
          </xsd:annotation>
          <xsd:all>
            <xsd:element minOccurs="0" maxOccurs="1" name="start" type="hropen:FormattedDateTimeType" />
            <xsd:element minOccurs="0" maxOccurs="1" name="end" type="hropen:FormattedDateTimeType" />
            <xsd:element minOccurs="0" maxOccurs="1" name="description">
              <xsd:simpleType>
                <xsd:restriction base="xsd:string" />
              </xsd:simpleType>
            </xsd:element>
          </xsd:all>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="immediateStartIndicator" type="hropen:IndicatorType">
        <xsd:annotation>
          <xsd:documentation>An indicator as to whether a position is available for an immediate start.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionScheduleTypeCodes">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Describes a position's general schedule (e.g. full-time, part-time).</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:PositionScheduleTypeCodeList" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="workingPeriods">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Describes the working periods of the position.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:WorkingPeriodType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="shiftSchedules">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>The detailed specifications of shift schedules.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:ScheduleType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="shiftDescription">
        <xsd:simpleType>
          <xsd:annotation>
            <xsd:documentation>General description of any shift work or shift schedule.</xsd:documentation>
          </xsd:annotation>
          <xsd:restriction base="xsd:string" />
        </xsd:simpleType>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="remoteWork" type="hropen:RemoteWorkType">
        <xsd:annotation>
          <xsd:documentation>The preference or requirement for remote work.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="offeredRemunerationPackage" type="hropen:RemunerationPackageType">
        <xsd:annotation>
          <xsd:documentation>The salary or compensation, as well as benefits on offer for the position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="positionClassification" type="hropen:PositionClassificationType">
        <xsd:annotation>
          <xsd:documentation>The classification of the position (which may apply to specific countries).</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="relocation" type="hropen:RelocationType">
        <xsd:annotation>
          <xsd:documentation>Indicates if a hiring company would consider to support the relocation of a new employee for a position.</xsd:documentation>
        </xsd:annotation>
      </xsd:element>
      <xsd:element minOccurs="0" maxOccurs="1" name="attachments">
        <xsd:complexType>
          <xsd:annotation>
            <xsd:documentation>Attachments related to the position profile.</xsd:documentation>
          </xsd:annotation>
          <xsd:sequence>
            <xsd:element minOccurs="0" maxOccurs="unbounded" name="item" type="hropen:AttachmentType" />
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:all>
  </xsd:complexType>
  <xsd:element name="PositionProfile" type="hropen:PositionProfileType" />
</xsd:schema>
.bzw. in JSON - Notation angeben, wie folgt:
JSON:
{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "version": "4.2.0",
    "title": "PositionProfileType",
    "description": "A profile of a job or position opening that is available at an organization.",
    "type": "object",
    "allOf": [
        { "$ref": "#/definitions/BasePositionProfileType" },
        { "$ref": "../../common/json/base/LocalizationInclusion.json#" }
    ],
    "properties": {
        "profileName": {
            "description": "The name given to the profile. Often used in systems where multiple versions of a PositionProfile may be managed.",
            "type": "string"
        },
        "positionPeriod": {
            "description": "The start and end date for the position.",
            "type": "object",
            "properties": {
                "start": {
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "end": {
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "description": {
                    "type": "string"
                }
            }
        },
        "immediateStartIndicator": {
            "description": "An indicator as to whether a position is available for an immediate start.",
            "$ref": "../../common/json/base/IndicatorType.json#"
        },
        "positionScheduleTypeCodes": {
            "description": "Describes a position's general schedule (e.g. full-time, part-time).",
            "type": "array",
            "items": { "$ref": "../../common/json/codelist/PositionScheduleTypeCodeList.json#" }
        },
        "workingPeriods": {
            "description": "Describes the working periods of the position.",
            "type": "array",
            "items": { "$ref": "#/definitions/WorkingPeriodType" }
        },
        "shiftSchedules": {
            "description": "The detailed specifications of shift schedules.",
            "type": "array",
            "items": { "$ref": "../../common/json/work/ScheduleType.json#" }
        },
        "shiftDescription": {
            "description": "General description of any shift work or shift schedule.",
            "type": "string"
        },
        "remoteWork": {
            "description": "The preference or requirement for remote work.",
            "$ref": "./RemoteWorkType.json#"
        },
        "offeredRemunerationPackage": {
            "description": "The salary or compensation, as well as benefits on offer for the position.",
            "$ref": "../../common/json/pay/RemunerationPackageType.json#"
        },
        "positionClassification": {
            "description": "The classification of the position (which may apply to specific countries).",
            "$ref": "#/definitions/PositionClassificationType"
        },
        "relocation": {
            "description": "Indicates if a hiring company would consider to support the relocation of a new employee for a position.",
            "$ref": "RelocationType.json#"
        },
        "attachments": {
            "description": "Attachments related to the position profile.",
            "type": "array",
            "items": { "$ref": "../../common/json/base/AttachmentType.json#" }
        }
    },
    "definitions": {
        "BasePositionProfileType": {
            "title": "BasePositionProfileType",
            "description": "The core information about a job or position opening.",
            "type": "object",
            "properties": {
                "profileId": {
                    "description": "The primary identifier of the position profile, typically from the system of record.",
                    "$ref": "../../common/json/base/IdentifierType.json#"
                },
                "alternateIds": {
                    "description": "An array of other identifiers for the position profile, typically for related, secondary, or other systems.",
                    "type": "array",
                    "items": { "$ref": "../../common/json/base/IdentifierType.json#" }
                },
                "positionId": {
                    "description": "The identifier for the position that maybe be used externally in an advertisement.",
                    "$ref": "../../common/json/base/IdentifierType.json#"
                },
                "positionTitle": {
                    "description": "A short phrase describing the position as it would be listed on a business card or in a company directory. OED: An appellation attaching to a position in virtue of rank, function or office.",
                    "type": "string"
                },
                "positionUri": {
                    "description": "URI to detailed resources about the position. This can be used as another type of identifier.",
                    "type": "string",
                    "format": "uri"
                },
                "postingInstructions": {
                    "description": "Instructions related to the position being posted to a third party site.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "allOf": [
                            { "$ref": "#/definitions/PostingInstructionType" }
                        ]
                    }
                },
                "positionLocation": {
                    "description": "The location or locations of a position.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "allOf": [
                            { "$ref": "../../common/json/communication/LocationType.json#" }
                        ],
                        "properties": {
                            "name": {
                                "description": "The name of a location.",
                                "type": "string"
                            },
                            "referenceLocation": {
                                "description": "This is a summary description of the physical location of the position. This is intended to be matched against a candidate's preference for work location.",
                                "type": "string"
                            }
                        }
                    }
                },
                "positionOrganizations": {
                    "description": "The organization which has the position. Can contain multiple organizations, e.g. with different responsibility codes.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "allOf": [
                            { "$ref": "../../common/json/organization/OrganizationType.json#" }
                        ]
                    }
                },
                "positionOpenQuantity": {
                    "description": "The position quantity currently available to be filled. This is intended as a finer-grained expression of the total number of positions to be filled. For example, there may be 50 positions to fill, but only 10 immediately available to be filled.",
                    "type": "integer"
                },
                "jobCategories": {
                    "description": "A code classifying the type or category of job. This may be used for occupational classification of the job. JobCategory usually would be repeatable so that a single job could be classified across multiple dimensions. JobCategory could be used to classify the job in terms of industry, but note that an explicit IndustryCode is available in the organization which might be a more appropriate place for use.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/EntityType.json#"
                    }
                },
                "careerLevels": {
                    "description": "A code classifying the level of a candidate based on career experience. This may vary by jurisdiction or systems, e.g. Student, Entry Level, Recent Graduate, Mid-Career, Manager, Experienced Non-Manager, Senior Executive, etc.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/EntityType.json#"
                    }
                },
                "positionOfferingTypes": {
                    "description": "These are values that are descriptive in classifying a position within advertising or communications of a position opportunity or \"offering\". Note that these classifications are useful within advertising, but they are not precise classes useful internally to drive pay, benefits, and HR compliance. Enumerated values are: DirectHire, Temporary, TemporaryToHire, ContractToHire, Contract, Internship, Externship, Apprenticeship, Seasonal, Student and Volunteer. Consider that \"Temporary\" and \"DirectHire\" are not parallel concepts, but are still commonly used in classifying jobs within advertising.",
                    "type": "array",
                    "items": { "$ref": "../../common/json/codelist/PositionTypeCodeList.json#" }
                },
                "positionQualifications": {
                    "description": "The qualifications that are required for a position.",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/PositionQualificationType"
                    }
                },
                "structuredPositionRequirements": {
                    "description": "The structured position requirements.",
                    "type": "array",
                    "items": {
                        "$ref": "jdx/AnnotatedDefinedTermType.json#"
                    }
                },
                "positionFormattedDescriptions": {
                    "description": "The descriptions for the position profile. The descriptions may support HTML or other markup, and may be in logical sections.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "descriptionId": {
                                "description": "An identifier for the description (section).",
                                "$ref": "../../common/json/base/IdentifierType.json#"
                            },
                            "title": {
                                "description": "The title for the description (section).",
                                "type": "string"
                            },
                            "content": {
                                "description": "The content of the description (section).",
                                "type": "string"
                            }
                        }
                    }
                },
                "travel": {
                    "description": "Information regarding travel preferences.",
                    "$ref": "TravelType.json#"
                },
                "workingLanguages": {
                    "description": "Information on the work languages used for the job or position opening.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string"
                            },
                            "code": {
                                "$ref": "../../common/json/codelist/LanguageCodeList.json#"
                            }
                        }
                    }
                }
            }
        },
        "PostingInstructionType": {
            "title": "PostingInstructionType",
            "description": "A collection of information about where and how a posting should be communicated. A posting channel usually would be a job board or other advertising medium.",
            "type": "object",
            "properties": {
                "channelId": {
                    "description": "Identifies a job board or media channel associated with a job posting.",
                    "$ref": "../../common/json/base/IdentifierType.json#"
                },
                "start": {
                    "description": "The start date of the posting.",
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "end": {
                    "description": "The end date of the posting.",
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "templateId": {
                    "description": "Identifies a template to apply in processing a job posting order.",
                    "type": "string"
                },
                "brandingId": {
                    "description": "Identifies branding to be applied in processing a job posting order.",
                    "type": "string"
                },
                "postingOptionCodes": {
                    "description": "Used to communicate a choice among options available with respect to the posting. For example, some job boards and advertising venues may offer \"bolding\" or other options relating to the display or distribution of the posting.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/CodeType.json#"
                    }
                },
                "applicationMethods": {
                    "type": "array",
                    "items": {
                        "description": "Describes the way in which a candidate might apply for the position.",
                        "type": "object",
                        "allOf": [
                            { "$ref": "#/definitions/ApplicationMethodType" }
                        ]
                    }
                },
                "positionUri": {
                    "description": "URI to detailed resources about the position or job advertisement for this posting instruction. The URI may contain publication specific information which may vary by channel.",
                    "type": "string",
                    "format": "uri"
                }
            }
        },
        "ApplicationMethodType": {
            "title": "ApplicationMethodType",
            "description": "Instructions on how to apply for the position.",
            "type": "object",
            "properties": {
                "instructions": {
                    "description": "Instructions to help guide a candidate when they are applying for the position opening.",
                    "type": "string"
                },
                "personContact": {
                    "description": "The person to contact regarding this position.",
                    "$ref": "../../common/json/person/SpecifiedPersonType.json#"
                },
                "applicationUri": {
                    "description": "Application link used to apply for the position. This would typically be a URI to a career site job, to an application web form, or an upload page.",
                    "$ref": "../../common/json/communication/WebType.json#"
                },
                "applicationEmail": {
                    "description": "Email address to which the candidate can apply to the job or position opening.",
                    "$ref": "../../common/json/communication/EmailType.json#"
                },
                "applicationSms": {
                    "description": "Phone number to apply for the job or position opening by SMS message.",
                    "type": "object",
                    "allOf": [
                        { "$ref": "../../common/json/communication/PhoneType.json#" }
                    ],
                    "properties": {
                        "containedText": {
                            "description": "Text that must be used by the candidate in the SMS message to indicate the intent to apply for a specific position.",
                            "type": "string"
                        }
                    }
                },
                "applicationPhone": {
                    "description": "Information to apply by a phone based service or direct phone number.",
                    "$ref": "../../common/json/communication/PhoneType.json#"
                },
                "inPersonApplication": {
                    "type": "object",
                    "properties": {
                        "address": {
                            "description": "The address of where to go to apply for the job or position opening in person.",
                            "$ref": "../../common/json/communication/AddressType.json#"
                        },
                        "travelDirections": {
                            "description": "Instructions for traveling to the location for an in person application.",
                            "type": "string"
                        },
                        "mapLink": {
                            "description": "A URI to a map or detailed instructions to do an in person application.",
                            "type": "string",
                            "format": "uri"
                        },
                        "additionalInstructions": {
                            "description": "Additional instructions on how to apply for the job or position opening in person.",
                            "type": "string"
                        }
                    }
                },
                "applicationCloseDate": {
                    "type": "object",
                    "properties": {
                        "end": {
                            "description": "The date after which applications will not be accepted.",
                            "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                        },
                        "typeCode":  {
                            "description": "The type of application close date, such as an Internal Close Date or External Close Date.",
                            "$ref": "../../common/json/base/CodeType.json#"
                        }
                    }
                }
            }
        },
        "PositionQualificationType": {
            "type": "object",
            "properties": {
                "qualificationSummary": {
                    "description": "A summary of the qualifications needed for the position.",
                    "type": "string"
                },
                "positionCompetencies": {
                    "description": "A list of the competencies required or desired for the position. Used for competency-based recruiting systems for matching.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/competency/PositionCompetencyType.json#"
                    }
                },
                "educationRequirement": {
                    "description": "The educational requirements for the position.",
                    "$ref": "#/definitions/EducationRequirementType"
                },
                "experienceSummary": {
                    "description": "The detailed summary of the experience required for the position in terms of category, measure, and level.",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/ExperienceCategoryType"
                    }
                },
                "licences": {
                    "description": "The required licenses for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                }
            }
        },
        "EducationRequirementType": {
            "type": "object",
            "properties": {
                "educationLevelCode": {
                    "description": "The level of education required for the position. This is used to transmit a system-specific or local variable. Use iscedEducationLevelCode where possible.",
                    "type": "string"
                },
                "iscedEducationLevelCode": {
                    "description": "ISCED: International Standard Classification of Education - is the standard classification of the education level of this requirement.",
                    "$ref": "../../common/json/codelist/IscedCodeList.json#"
                },
                "degreeTypeCode": {
                    "description": "The type of degree required for the position.",
                    "type": "string"
                },
                "programs": {
                    "description": "The education programs required for a position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                },
                "programConcentrations": {
                    "description": "The areas for the focus of study specific areas required for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                },
                "institutions": {
                    "description": "The requirement or specific institutions to be considered for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                },
                "descriptions": {
                    "description": "Descriptions of the educational requirements for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                }
            }
        },
        "ExperienceCategoryType": {
            "type": "object",
            "properties": {
                "categoryCode": {
                    "description": "A code to represent the category of required experience.",
                    "$ref": "../../common/json/base/CodeType.json#"
                },
                "measure": {
                    "description": "A measure of the experience required for the position.",
                    "$ref": "../../common/json/base/MeasureType.json#"
                },
                "levelCode": {
                    "description": "The level required for the category of required experience.",
                    "type": "string"
                },
                "descriptions": {
                    "description": "Description of required experience.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                }
            }
        },
        "PositionClassificationType": {
            "type": "object",
            "properties": {
                "USPositionClassification": {
                    "description": "These are USA-specific position classification items.",
                    "$ref": "#/definitions/USPositionClassificationType"
                },
                "DEPositionClassification": {
                    "description": "These are Germany-specific position classification items.",
                    "$ref": "#/definitions/DEPositionClassificationType"
                },
                "extendedPositionClassifications": {
                    "description": "These are other country specific position classification items.",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/ExtendedPositionClassificationType"
                    }
                }
            }
        },
        "USPositionClassificationType": {
            "type": "object",
            "properties": {
                "exemptIndicator": {
                    "description": "An indicator of position's coverage under applicable wage-hour law. For example, the U.S. Fair Labor Standards Act (FLSA) and implementing regulations. Enumerated values are: exempt and non-exempt. NOTE: In the U.S., while it is common to classify a position as exempt or non-exempt, actual coverage under the law usually is determined on the basis of an employee's actual performance or engagement within a workweek and not on whether an employee is assigned to or associated with a position that an employer has classified as \"exempt\" or \"nonexempt\".",
                    "$ref": "../../common/json/base/IndicatorType.json#"
                },
                "EEOCJobCategoryCodes": {
                    "description": "A code classifying the primary method of payment for the associated position or employment. This classifies the method by which remuneration for a position is provided or calculated. Typical values are 'OfficialsAndManagers', 'Professionals', 'Technicians', 'Sales', 'OfficialAndClerical', 'CraftWorkersSkilled', 'OperativeSemi-Skilled', 'LaborersUnskilled', 'ServiceWorkers'.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/CodeType.json#"
                    }
                },
                "affirmativeActionPlanJobGroupIds": {
                    "description": "Identifiers for specific qualifying affirmitive action plan groups.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/IdentifierType.json#"
                    }
                }
            }
        },
        "DEPositionClassificationType": {
            "type": "object",
            "properties": {
                "BKZClassification": {
                    "description": "Berufskennziffer (BKZ) is a German occupational classification system.",
                    "$ref": "../../common/json/base/EntityType.json#"
                },
                "DEEducationAuthorizationIndicator": {
                    "description": "A German education authorization indicator.",
                    "$ref": "../../common/json/base/IndicatorType.json#"
                },
                "disabilityLevelCode": {
                    "description": "A value from an external code list classifying the level of disability. A simple example code list: 1 - need for another persons assistance with daily life tasks; 2 - inability to perform one or more sensory or physical functions; 3 - experiencing difficulties in multiple sensory or physical functions; 4 - experiencing difficulty in just one function; and 5 - no limitations in functioning.",
                    "$ref": "../../common/json/work/DisabilityType.json#/definitions/DisabilityLevelCodeList"
                }
            }
        },
        "ExtendedPositionClassificationType": {
            "type": "object",
            "properties": {
                "countryCode": {
                    "description": "The country to which the specific position classification applies.",
                    "$ref": "../../common/json/codelist/CountryCodeList.json#"
                },
                "name": {
                    "description": "The name of the specific position classification.",
                    "type": "string"
                },
                "value": {
                    "description": "The value of the specific position classification.",
                    "type": "string"
                }
            }
        },
        "WorkingPeriodType": {
            "type": "object",
            "properties": {
                "workDuration": {
                    "description": "The amount of time to work, e.g. 40 hours, 4 days.",
                    "$ref": "../../common/json/base/MeasureType.json#"
                },
                "baseDuration": {
                    "description": "The related base time interval, e.g. 1 week, 1 month.",
                    "$ref": "../../common/json/base/MeasureType.json#"
                },
                "descriptions": {
                    "description": "Descriptions of the working period.",
{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "version": "4.2.0",
    "title": "PositionProfileType",
    "description": "A profile of a job or position opening that is available at an organization.",
    "type": "object",
    "allOf": [
        { "$ref": "#/definitions/BasePositionProfileType" },
        { "$ref": "../../common/json/base/LocalizationInclusion.json#" }
    ],
    "properties": {
        "profileName": {
            "description": "The name given to the profile. Often used in systems where multiple versions of a PositionProfile may be managed.",
            "type": "string"
        },
        "positionPeriod": {
            "description": "The start and end date for the position.",
            "type": "object",
            "properties": {
                "start": {
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "end": {
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "description": {
                    "type": "string"
                }
            }
        },
        "immediateStartIndicator": {
            "description": "An indicator as to whether a position is available for an immediate start.",
            "$ref": "../../common/json/base/IndicatorType.json#"
        },
        "positionScheduleTypeCodes": {
            "description": "Describes a position's general schedule (e.g. full-time, part-time).",
            "type": "array",
            "items": { "$ref": "../../common/json/codelist/PositionScheduleTypeCodeList.json#" }
        },
        "workingPeriods": {
            "description": "Describes the working periods of the position.",
            "type": "array",
            "items": { "$ref": "#/definitions/WorkingPeriodType" }
        },
        "shiftSchedules": {
            "description": "The detailed specifications of shift schedules.",
            "type": "array",
            "items": { "$ref": "../../common/json/work/ScheduleType.json#" }
        },
        "shiftDescription": {
            "description": "General description of any shift work or shift schedule.",
            "type": "string"
        },
        "remoteWork": {
            "description": "The preference or requirement for remote work.",
            "$ref": "./RemoteWorkType.json#"
        },
        "offeredRemunerationPackage": {
            "description": "The salary or compensation, as well as benefits on offer for the position.",
            "$ref": "../../common/json/pay/RemunerationPackageType.json#"
        },
        "positionClassification": {
            "description": "The classification of the position (which may apply to specific countries).",
            "$ref": "#/definitions/PositionClassificationType"
        },
        "relocation": {
            "description": "Indicates if a hiring company would consider to support the relocation of a new employee for a position.",
            "$ref": "RelocationType.json#"
        },
        "attachments": {
            "description": "Attachments related to the position profile.",
            "type": "array",
            "items": { "$ref": "../../common/json/base/AttachmentType.json#" }
        }
    },
    "definitions": {
        "BasePositionProfileType": {
            "title": "BasePositionProfileType",
            "description": "The core information about a job or position opening.",
            "type": "object",
            "properties": {
                "profileId": {
                    "description": "The primary identifier of the position profile, typically from the system of record.",
                    "$ref": "../../common/json/base/IdentifierType.json#"
                },
                "alternateIds": {
                    "description": "An array of other identifiers for the position profile, typically for related, secondary, or other systems.",
                    "type": "array",
                    "items": { "$ref": "../../common/json/base/IdentifierType.json#" }
                },
                "positionId": {
                    "description": "The identifier for the position that maybe be used externally in an advertisement.",
                    "$ref": "../../common/json/base/IdentifierType.json#"
                },
                "positionTitle": {
                    "description": "A short phrase describing the position as it would be listed on a business card or in a company directory. OED: An appellation attaching to a position in virtue of rank, function or office.",
                    "type": "string"
                },
                "positionUri": {
                    "description": "URI to detailed resources about the position. This can be used as another type of identifier.",
                    "type": "string",
                    "format": "uri"
                },
                "postingInstructions": {
                    "description": "Instructions related to the position being posted to a third party site.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "allOf": [
                            { "$ref": "#/definitions/PostingInstructionType" }
                        ]
                    }
                },
                "positionLocation": {
                    "description": "The location or locations of a position.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "allOf": [
                            { "$ref": "../../common/json/communication/LocationType.json#" }
                        ],
                        "properties": {
                            "name": {
                                "description": "The name of a location.",
                                "type": "string"
                            },
                            "referenceLocation": {
                                "description": "This is a summary description of the physical location of the position. This is intended to be matched against a candidate's preference for work location.",
                                "type": "string"
                            }
                        }
                    }
                },
                "positionOrganizations": {
                    "description": "The organization which has the position. Can contain multiple organizations, e.g. with different responsibility codes.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "allOf": [
                            { "$ref": "../../common/json/organization/OrganizationType.json#" }
                        ]
                    }
                },
                "positionOpenQuantity": {
                    "description": "The position quantity currently available to be filled. This is intended as a finer-grained expression of the total number of positions to be filled. For example, there may be 50 positions to fill, but only 10 immediately available to be filled.",
                    "type": "integer"
                },
                "jobCategories": {
                    "description": "A code classifying the type or category of job. This may be used for occupational classification of the job. JobCategory usually would be repeatable so that a single job could be classified across multiple dimensions. JobCategory could be used to classify the job in terms of industry, but note that an explicit IndustryCode is available in the organization which might be a more appropriate place for use.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/EntityType.json#"
                    }
                },
                "careerLevels": {
                    "description": "A code classifying the level of a candidate based on career experience. This may vary by jurisdiction or systems, e.g. Student, Entry Level, Recent Graduate, Mid-Career, Manager, Experienced Non-Manager, Senior Executive, etc.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/EntityType.json#"
                    }
                },
                "positionOfferingTypes": {
                    "description": "These are values that are descriptive in classifying a position within advertising or communications of a position opportunity or \"offering\". Note that these classifications are useful within advertising, but they are not precise classes useful internally to drive pay, benefits, and HR compliance. Enumerated values are: DirectHire, Temporary, TemporaryToHire, ContractToHire, Contract, Internship, Externship, Apprenticeship, Seasonal, Student and Volunteer. Consider that \"Temporary\" and \"DirectHire\" are not parallel concepts, but are still commonly used in classifying jobs within advertising.",
                    "type": "array",
                    "items": { "$ref": "../../common/json/codelist/PositionTypeCodeList.json#" }
                },
                "positionQualifications": {
                    "description": "The qualifications that are required for a position.",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/PositionQualificationType"
                    }
                },
                "structuredPositionRequirements": {
                    "description": "The structured position requirements.",
                    "type": "array",
                    "items": {
                        "$ref": "jdx/AnnotatedDefinedTermType.json#"
                    }
                },
                "positionFormattedDescriptions": {
                    "description": "The descriptions for the position profile. The descriptions may support HTML or other markup, and may be in logical sections.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "descriptionId": {
                                "description": "An identifier for the description (section).",
                                "$ref": "../../common/json/base/IdentifierType.json#"
                            },
                            "title": {
                                "description": "The title for the description (section).",
                                "type": "string"
                            },
                            "content": {
                                "description": "The content of the description (section).",
                                "type": "string"
                            }
                        }
                    }
                },
                "travel": {
                    "description": "Information regarding travel preferences.",
                    "$ref": "TravelType.json#"
                },
                "workingLanguages": {
                    "description": "Information on the work languages used for the job or position opening.",
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": "string"
                            },
                            "code": {
                                "$ref": "../../common/json/codelist/LanguageCodeList.json#"
                            }
                        }
                    }
                }
            }
        },
        "PostingInstructionType": {
            "title": "PostingInstructionType",
            "description": "A collection of information about where and how a posting should be communicated. A posting channel usually would be a job board or other advertising medium.",
            "type": "object",
            "properties": {
                "channelId": {
                    "description": "Identifies a job board or media channel associated with a job posting.",
                    "$ref": "../../common/json/base/IdentifierType.json#"
                },
                "start": {
                    "description": "The start date of the posting.",
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "end": {
                    "description": "The end date of the posting.",
                    "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                },
                "templateId": {
                    "description": "Identifies a template to apply in processing a job posting order.",
                    "type": "string"
                },
                "brandingId": {
                    "description": "Identifies branding to be applied in processing a job posting order.",
                    "type": "string"
                },
                "postingOptionCodes": {
                    "description": "Used to communicate a choice among options available with respect to the posting. For example, some job boards and advertising venues may offer \"bolding\" or other options relating to the display or distribution of the posting.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/CodeType.json#"
                    }
                },
                "applicationMethods": {
                    "type": "array",
                    "items": {
                        "description": "Describes the way in which a candidate might apply for the position.",
                        "type": "object",
                        "allOf": [
                            { "$ref": "#/definitions/ApplicationMethodType" }
                        ]
                    }
                },
                "positionUri": {
                    "description": "URI to detailed resources about the position or job advertisement for this posting instruction. The URI may contain publication specific information which may vary by channel.",
                    "type": "string",
                    "format": "uri"
                }
            }
        },
        "ApplicationMethodType": {
            "title": "ApplicationMethodType",
            "description": "Instructions on how to apply for the position.",
            "type": "object",
            "properties": {
                "instructions": {
                    "description": "Instructions to help guide a candidate when they are applying for the position opening.",
                    "type": "string"
                },
                "personContact": {
                    "description": "The person to contact regarding this position.",
                    "$ref": "../../common/json/person/SpecifiedPersonType.json#"
                },
                "applicationUri": {
                    "description": "Application link used to apply for the position. This would typically be a URI to a career site job, to an application web form, or an upload page.",
                    "$ref": "../../common/json/communication/WebType.json#"
                },
                "applicationEmail": {
                    "description": "Email address to which the candidate can apply to the job or position opening.",
                    "$ref": "../../common/json/communication/EmailType.json#"
                },
                "applicationSms": {
                    "description": "Phone number to apply for the job or position opening by SMS message.",
                    "type": "object",
                    "allOf": [
                        { "$ref": "../../common/json/communication/PhoneType.json#" }
                    ],
                    "properties": {
                        "containedText": {
                            "description": "Text that must be used by the candidate in the SMS message to indicate the intent to apply for a specific position.",
                            "type": "string"
                        }
                    }
                },
                "applicationPhone": {
                    "description": "Information to apply by a phone based service or direct phone number.",
                    "$ref": "../../common/json/communication/PhoneType.json#"
                },
                "inPersonApplication": {
                    "type": "object",
                    "properties": {
                        "address": {
                            "description": "The address of where to go to apply for the job or position opening in person.",
                            "$ref": "../../common/json/communication/AddressType.json#"
                        },
                        "travelDirections": {
                            "description": "Instructions for traveling to the location for an in person application.",
                            "type": "string"
                        },
                        "mapLink": {
                            "description": "A URI to a map or detailed instructions to do an in person application.",
                            "type": "string",
                            "format": "uri"
                        },
                        "additionalInstructions": {
                            "description": "Additional instructions on how to apply for the job or position opening in person.",
                            "type": "string"
                        }
                    }
                },
                "applicationCloseDate": {
                    "type": "object",
                    "properties": {
                        "end": {
                            "description": "The date after which applications will not be accepted.",
                            "$ref": "../../common/json/base/FormattedDateTimeType.json#"
                        },
                        "typeCode":  {
                            "description": "The type of application close date, such as an Internal Close Date or External Close Date.",
                            "$ref": "../../common/json/base/CodeType.json#"
                        }
                    }
                }
            }
        },
        "PositionQualificationType": {
            "type": "object",
            "properties": {
                "qualificationSummary": {
                    "description": "A summary of the qualifications needed for the position.",
                    "type": "string"
                },
                "positionCompetencies": {
                    "description": "A list of the competencies required or desired for the position. Used for competency-based recruiting systems for matching.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/competency/PositionCompetencyType.json#"
                    }
                },
                "educationRequirement": {
                    "description": "The educational requirements for the position.",
                    "$ref": "#/definitions/EducationRequirementType"
                },
                "experienceSummary": {
                    "description": "The detailed summary of the experience required for the position in terms of category, measure, and level.",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/ExperienceCategoryType"
                    }
                },
                "licences": {
                    "description": "The required licenses for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                }
            }
        },
        "EducationRequirementType": {
            "type": "object",
            "properties": {
                "educationLevelCode": {
                    "description": "The level of education required for the position. This is used to transmit a system-specific or local variable. Use iscedEducationLevelCode where possible.",
                    "type": "string"
                },
                "iscedEducationLevelCode": {
                    "description": "ISCED: International Standard Classification of Education - is the standard classification of the education level of this requirement.",
                    "$ref": "../../common/json/codelist/IscedCodeList.json#"
                },
                "degreeTypeCode": {
                    "description": "The type of degree required for the position.",
                    "type": "string"
                },
                "programs": {
                    "description": "The education programs required for a position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                },
                "programConcentrations": {
                    "description": "The areas for the focus of study specific areas required for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                },
                "institutions": {
                    "description": "The requirement or specific institutions to be considered for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                },
                "descriptions": {
                    "description": "Descriptions of the educational requirements for the position.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                }
            }
        },
        "ExperienceCategoryType": {
            "type": "object",
            "properties": {
                "categoryCode": {
                    "description": "A code to represent the category of required experience.",
                    "$ref": "../../common/json/base/CodeType.json#"
                },
                "measure": {
                    "description": "A measure of the experience required for the position.",
                    "$ref": "../../common/json/base/MeasureType.json#"
                },
                "levelCode": {
                    "description": "The level required for the category of required experience.",
                    "type": "string"
                },
                "descriptions": {
                    "description": "Description of required experience.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                }
            }
        },
        "PositionClassificationType": {
            "type": "object",
            "properties": {
                "USPositionClassification": {
                    "description": "These are USA-specific position classification items.",
                    "$ref": "#/definitions/USPositionClassificationType"
                },
                "DEPositionClassification": {
                    "description": "These are Germany-specific position classification items.",
                    "$ref": "#/definitions/DEPositionClassificationType"
                },
                "extendedPositionClassifications": {
                    "description": "These are other country specific position classification items.",
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/ExtendedPositionClassificationType"
                    }
                }
            }
        },
        "USPositionClassificationType": {
            "type": "object",
            "properties": {
                "exemptIndicator": {
                    "description": "An indicator of position's coverage under applicable wage-hour law. For example, the U.S. Fair Labor Standards Act (FLSA) and implementing regulations. Enumerated values are: exempt and non-exempt. NOTE: In the U.S., while it is common to classify a position as exempt or non-exempt, actual coverage under the law usually is determined on the basis of an employee's actual performance or engagement within a workweek and not on whether an employee is assigned to or associated with a position that an employer has classified as \"exempt\" or \"nonexempt\".",
                    "$ref": "../../common/json/base/IndicatorType.json#"
                },
                "EEOCJobCategoryCodes": {
                    "description": "A code classifying the primary method of payment for the associated position or employment. This classifies the method by which remuneration for a position is provided or calculated. Typical values are 'OfficialsAndManagers', 'Professionals', 'Technicians', 'Sales', 'OfficialAndClerical', 'CraftWorkersSkilled', 'OperativeSemi-Skilled', 'LaborersUnskilled', 'ServiceWorkers'.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/CodeType.json#"
                    }
                },
                "affirmativeActionPlanJobGroupIds": {
                    "description": "Identifiers for specific qualifying affirmitive action plan groups.",
                    "type": "array",
                    "items": {
                        "$ref": "../../common/json/base/IdentifierType.json#"
                    }
                }
            }
        },
        "DEPositionClassificationType": {
            "type": "object",
            "properties": {
                "BKZClassification": {
                    "description": "Berufskennziffer (BKZ) is a German occupational classification system.",
                    "$ref": "../../common/json/base/EntityType.json#"
                },
                "DEEducationAuthorizationIndicator": {
                    "description": "A German education authorization indicator.",
                    "$ref": "../../common/json/base/IndicatorType.json#"
                },
                "disabilityLevelCode": {
                    "description": "A value from an external code list classifying the level of disability. A simple example code list: 1 - need for another persons assistance with daily life tasks; 2 - inability to perform one or more sensory or physical functions; 3 - experiencing difficulties in multiple sensory or physical functions; 4 - experiencing difficulty in just one function; and 5 - no limitations in functioning.",
                    "$ref": "../../common/json/work/DisabilityType.json#/definitions/DisabilityLevelCodeList"
                }
            }
        },
        "ExtendedPositionClassificationType": {
            "type": "object",
            "properties": {
                "countryCode": {
                    "description": "The country to which the specific position classification applies.",
                    "$ref": "../../common/json/codelist/CountryCodeList.json#"
                },
                "name": {
                    "description": "The name of the specific position classification.",
                    "type": "string"
                },
                "value": {
                    "description": "The value of the specific position classification.",
                    "type": "string"
                }
            }
        },
        "WorkingPeriodType": {
            "type": "object",
            "properties": {
                "workDuration": {
                    "description": "The amount of time to work, e.g. 40 hours, 4 days.",
                    "$ref": "../../common/json/base/MeasureType.json#"
                },
                "baseDuration": {
                    "description": "The related base time interval, e.g. 1 week, 1 month.",
                    "$ref": "../../common/json/base/MeasureType.json#"
                },
                "descriptions": {
                    "description": "Descriptions of the working period.",
                    "$ref": "../../common/json/base/StringTypeArray.json#"
                }
            }
        }
    }
}
                }
            }
        }
    }
}
 
Zuletzt bearbeitet:
K

kneitzel

Gast
Aber das ist jetzt xsd - und da muss ich im Augenblick gerade gestehen, dass ich nicht ganz verstehe, was Du da machst.
Wo baust Du wie welche Typen? Und wo genau befindet sich das Problem, auf dass du gestoßen bist.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Class to link Java Allgemeine Java-Themen 4
T Java Robot Class - Bot Allgemeine Java-Themen 3
M Java model class ? Allgemeine Java-Themen 9
H Class 'java.io.BuferedReader' is not present in JRE Emulation Libary | GWT Fehler?! Allgemeine Java-Themen 0
KeexZDeveoper Von .class zu .java Allgemeine Java-Themen 7
R Java .class-File-Konstrunkt mit Programm visualisieren Allgemeine Java-Themen 18
T Java Class Intrumentation mit Annotations in Laufzeit Allgemeine Java-Themen 1
P JDK installieren Error: Could not find or load main class HelloWorld.java Allgemeine Java-Themen 3
F java.lang.ClassNotFoundException: .class Allgemeine Java-Themen 5
B json zu java class Allgemeine Java-Themen 2
B Variable class in java.lang.Object Allgemeine Java-Themen 11
H .class in .java umwandeln Allgemeine Java-Themen 3
zilti Java will Class nicht f i n d en Allgemeine Java-Themen 9
reibi java.lang.Class - Resource - Solaris Allgemeine Java-Themen 17
B Java CLASS Dateien dekompilieren? Allgemeine Java-Themen 2
G In Eclipse läufts, aber bei java Start.class gehts nicht Allgemeine Java-Themen 8
timomeinen Java Generics - Wie komme ich an die <T>.class? Allgemeine Java-Themen 13
H aus .class datei eine .java erzeugen Allgemeine Java-Themen 4
T Frage zu Java-Class/Librarypath Allgemeine Java-Themen 2
G class files zu java files Allgemeine Java-Themen 3
H von .class zu .java? Allgemeine Java-Themen 4
B Java-Version aus .class erfahren Allgemeine Java-Themen 6
G Java 1.5 --> Bad Class? Allgemeine Java-Themen 3
P .java -> .class -> .java Allgemeine Java-Themen 2
OnDemand Java Deployment Vaadin Allgemeine Java-Themen 3
D Hat Java eine Library um JavaScript auszuwerten? Allgemeine Java-Themen 2
Zrebna Wieso sind eigentlich JUnit-Tests in src/test/java platziert - nur Konvention? Allgemeine Java-Themen 7
N LlaMA, KI, java-llama.cpp Allgemeine Java-Themen 39
V Java-Codierungsherausforderung: Navigieren durch die Macken der Datumsmanipulation Allgemeine Java-Themen 2
E Output Fehler (Java-Programm Kuchen) Allgemeine Java-Themen 11
M java: unexpected type Allgemeine Java-Themen 2
harrytut Java Input/Output Tests Junit Allgemeine Java-Themen 3
B Java Discord bot auf ein Root Server? Allgemeine Java-Themen 1
BetziTheRealOne Java PKIX path building failed as non Admin Allgemeine Java-Themen 15
D Linux, Java-Version wird nicht erkannt bzw. welche Einstellung fehlt noch? Allgemeine Java-Themen 19
KonradN Java 21 Release Allgemeine Java-Themen 5
V Umgang mit fehlenden Daten in einer Java-Datenanalyseanwendung Allgemeine Java-Themen 5
P Fehler: Hauptklasse Main konnte nicht gefunden oder geladen werden Ursache: java.lang.ClassNotFoundException: Main Allgemeine Java-Themen 24
K Java Anwendung machen Anleitung Allgemeine Java-Themen 5
G java.io.listFiles() Allgemeine Java-Themen 3
8u3631984 Frage zu Java Streams min / max Allgemeine Java-Themen 17
S Java Programm lässt sich vom USB-Stick starten, aber nicht von HDD Allgemeine Java-Themen 16
K Java-Projekt Allgemeine Java-Themen 11
K Java-Projekt Allgemeine Java-Themen 0
ruutaiokwu Welcher Browser unterstützt heutzutage noch Java Applets? Allgemeine Java-Themen 5
Jose05 Java-Klasse im extra cmd-Fenster ausführen Allgemeine Java-Themen 3
rode45e Java Threads Allgemeine Java-Themen 4
G java.io.listFiles() Allgemeine Java-Themen 2
N Java Dynamic Proxy Allgemeine Java-Themen 3
N Leichte Java Gegner Ki Allgemeine Java-Themen 10
A Java modul Problem Allgemeine Java-Themen 4
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
V Funktionale Schnittstelle in Java Allgemeine Java-Themen 3
OnDemand Java String in Hashmap als Key NULL Allgemeine Java-Themen 27
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
berserkerdq2 Wenn ich bei Intelij javafx mit maven importieren will, muss ich das in die pom.xml reintun, aber warum noch in module-info.java? Allgemeine Java-Themen 3
KonradN Java 20 am 21. März Allgemeine Java-Themen 1
O Java Website Stock Bot Allgemeine Java-Themen 3
J Front-/Backend in Java Allgemeine Java-Themen 14
doopexxx JAVA Google Webcrawler Allgemeine Java-Themen 1
J JavaScript innerhalb eines Java Projekts ausführen Allgemeine Java-Themen 2
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
G java.lang.NoClassDefFoundError: org/aspectj/lang/Signature Allgemeine Java-Themen 2
lalex1491 Java Aktienkurse nachfragen Allgemeine Java-Themen 4
V Wie funktioniert das Schlüsselwort "final" von Java? Allgemeine Java-Themen 19
mrStudent Inferenz JAVA Allgemeine Java-Themen 6
U URI Rechner (Java Script) Allgemeine Java-Themen 7
TheSkyRider Java Geburtsdatum Textfeld Allgemeine Java-Themen 7
mihe7 Java 19 JavaDocs: Browserintegration Allgemeine Java-Themen 0
Encera Gleichzeitiges Ausführen und verbinden von 2 Java-Klassen über die Eingabeaufforderung und Eclipse Allgemeine Java-Themen 21
H Java Rechner Programmierung der Mathematik Allgemeine Java-Themen 33
Lennox Schinkel Java Kara Auf einen Java Host laufen lassen Allgemeine Java-Themen 17
C Fußnoten von DocX mit Java Allgemeine Java-Themen 2
C Fußnoten in DocX mit Java Allgemeine Java-Themen 1
M Aussagenlogik in Java Programmieren Allgemeine Java-Themen 22
B Per Java Word Dokument schreiben? Allgemeine Java-Themen 8
krgewb Java-Bibliothek für ONVIF Allgemeine Java-Themen 1
KonradN Oracle übergibt (Java Teile der) GraalVM Community Edition an OpenJDK Community Allgemeine Java-Themen 2
Momo16 Brauche Hilfe - Java Projekt kann nicht erstellt werden Allgemeine Java-Themen 12
B Java mit command line und jars benutzen? Allgemeine Java-Themen 18
M Java Überprüfen ob .exe-Datei bereits ausgeführt wird Allgemeine Java-Themen 2
B HTTP Allgemeine Fragen über Suchmaschine nutzen mit Java Allgemeine Java-Themen 20
Mick P. F. Wie kriege ich die Fehlermeldung "java: symbol lookup error: ..." weg? Allgemeine Java-Themen 11
K Nachhilfe Java Allgemeine Java-Themen 11
KonradN Java 19 Allgemeine Java-Themen 11
F IDEA IntelliJ Java Songliste erstellen Allgemeine Java-Themen 6
TheSepp Java bestimmtes Array auf den Wert 0 setzen Allgemeine Java-Themen 32
B Java Reflection Probleme beim wehcselseitigen Referenzieren zweier Klassen/Objekte Allgemeine Java-Themen 14
Sachinbhatt Sind alle Methoden in Java implizit virtuell Allgemeine Java-Themen 2
E Java und integrierte Grafikkarten Allgemeine Java-Themen 18
Sachinbhatt Wie wird die Typumwandlung bei Mehrfachvererbung in Java implementiert? Allgemeine Java-Themen 3
Peterw73 Hilfe bei Java gesucht Allgemeine Java-Themen 3
A Java unter Win 10 Allgemeine Java-Themen 1
B Woher kommen die Bildschirmkoordinaten beim java Robot? Allgemeine Java-Themen 14
P9cman java.Lang Klassen fehlen in JRE System Library Allgemeine Java-Themen 1
E Wie Java Heap Space vergrößern? Allgemeine Java-Themen 3
B Java Programm auf virutellem Desktop laufen lassen? Allgemeine Java-Themen 1
D VBA Code mit Java ausführen möglich? Allgemeine Java-Themen 10
berserkerdq2 Threads, wie genau läuft das in Java ab? (Ich kann Threads erstellen und nutzen, nur das Verständnis) Allgemeine Java-Themen 6
izoards Java Home Pfad unabhängig von der Version Allgemeine Java-Themen 7

Ähnliche Java Themen

Neue Themen


Oben