Skip to content

Commit

Permalink
Addition of contracts (#530)
Browse files Browse the repository at this point in the history
* Addition of Contract

Creation of of contract obect foolowing Entur's expectations

* Lint and update documentation tables

* contract in Frame and Rolle Assignment

Addition of Contracts to Frame  and Role Assignment

* Correction from first feedbacks

Use of Ulf Bjersing's definitions (contractor/contractee)
Integration of Stefan de Konink's comments

* Lint and update documentation tables

* Update xsd/netex_framework/netex_responsibility/netex_responsibilitySet_version.xsd

typo

Co-authored-by: Stefan de Konink <[email protected]>

* Update xsd/netex_framework/netex_responsibility/netex_responsibilitySet_version.xsd

typo

Co-authored-by: Stefan de Konink <[email protected]>

* Update xsd/netex_framework/netex_responsibility/netex_responsibilitySet_version.xsd

typo

Co-authored-by: Stefan de Konink <[email protected]>

* Apply suggestions from code review

---------

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Stefan de Konink <[email protected]>
  • Loading branch information
3 people authored Nov 6, 2023
1 parent f441a62 commit 210753d
Show file tree
Hide file tree
Showing 3 changed files with 181 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,11 @@ Rail transport, Roads and Road transport
<xsd:documentation>RESPONSIBILITY SETs used in frame.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="contracts" type="contractsInFrame_RelStructure" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Contracts used in frame.</xsd:documentation>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:group>
<xsd:group name="GeneralElementstInFrameGroup">
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns="http://www.netex.org.uk/netex" xmlns:netex="http://www.netex.org.uk/netex" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.netex.org.uk/netex" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.1" id="netex_responsibilitySet">
<xsd:include schemaLocation="netex_typeOfValue_version.xsd"/>
<xsd:include schemaLocation="../netex_genericFramework/netex_organisation_version.xsd"/>
<xsd:annotation>
<xsd:appinfo>
<Metadata xmlns="http://www.govtalk.gov.uk/CM/gms-xs">
Expand Down Expand Up @@ -297,6 +298,7 @@ Rail transport, Roads and Road transport
<xsd:documentation>Administrative area to which this RESPONSIBILITY SET is assigned.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="AssociatedContract" type="ContractRef_RelStructure" minOccurs="0"/>
</xsd:sequence>
</xsd:group>
<xsd:complexType name="responsibilityRoleAssignments_RelStructure">
Expand Down Expand Up @@ -347,5 +349,132 @@ Rail transport, Roads and Road transport
<xsd:extension base="TypeOfEntity_VersionStructure"/>
</xsd:complexContent>
</xsd:complexType>
<!-- Contracts, possibly related to roles =================================== -->
<xsd:element name="Contract" abstract="true" substitutionGroup="DataManagedObject">
<xsd:annotation>
<xsd:documentation>Simplified description of a contract between 2 ORGANISATIONs.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:restriction base="Contract_VersionStructure">
<xsd:sequence>
<xsd:sequence>
<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
</xsd:sequence>
<xsd:sequence>
<xsd:group ref="DataManagedObjectGroup"/>
</xsd:sequence>
<xsd:sequence>
<xsd:group ref="ContractGroup">
<xsd:annotation>
<xsd:documentation>Details for a Contract.</xsd:documentation>
</xsd:annotation>
</xsd:group>
</xsd:sequence>
</xsd:sequence>
<xsd:attribute name="id" type="ContractIdType" use="required"/>
</xsd:restriction>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
<xsd:complexType name="Contract_VersionStructure" abstract="true">
<xsd:annotation>
<xsd:documentation>Type for an Contract.</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="DataManagedObjectStructure">
<xsd:sequence>
<xsd:group ref="ContractGroup">
<xsd:annotation>
<xsd:documentation>Details for Contract</xsd:documentation>
</xsd:annotation>
</xsd:group>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:group name="ContractGroup">
<xsd:annotation>
<xsd:documentation>Elements for a Contract.</xsd:documentation>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="Name" type="MultilingualString" minOccurs="0">
<xsd:annotation>
<xsd:documentation>The name of the ORGANISATION.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="Description" type="MultilingualString" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Description of ORGANISATION.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="TypeOfContract" type="TypeOfContractEnumeration" minOccurs="0">
<xsd:annotation>
<xsd:documentation>formal informal written oral plainUnderstood</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="LegalStatus" type="LegalStatusEnumeration" minOccurs="0">
<xsd:annotation>
<xsd:documentation>binding nonBinding</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:element name="ContractGoverningLaw" type="MultilingualString" minOccurs="0"/>
<xsd:element name="contractors">
<xsd:annotation>
<xsd:documentation>The contractor is that party the provides agreed services or goods to the Contractee according to the conditions in a Contract.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence maxOccurs="1">
<xsd:element ref="Organisation_" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="contractees">
<xsd:annotation>
<xsd:documentation>The contractee is the party that is the recipient of agreed services or goods provided by the Contractor according to the conditions in a Contract.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:sequence maxOccurs="1">
<xsd:element ref="Organisation_" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="contractDocuments" minOccurs="0">
<xsd:annotation>
<xsd:documentation>External documents (hyperlinks) can be referenced from external archives, such as PDF's.</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="infoLinks_RelStructure"/>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:group>
<xsd:complexType name="ContractRef_RelStructure">
<xsd:annotation>
<xsd:documentation>Type for a reference to a Contract.</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="containmentAggregationStructure">
<xsd:choice>
<xsd:element ref="ContractRef"/>
<xsd:element ref="Contract"/>
</xsd:choice>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="contractsInFrame_RelStructure">
<xsd:annotation>
<xsd:documentation>Type for containment in frame of Contracts.</xsd:documentation>
</xsd:annotation>
<xsd:complexContent>
<xsd:extension base="containmentAggregationStructure">
<xsd:sequence>
<xsd:element ref="Contract" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<!-- ======================================================================= -->
</xsd:schema>
Original file line number Diff line number Diff line change
Expand Up @@ -300,5 +300,52 @@ Rail transport, Roads and Road transport
</xsd:annotation>
<xsd:restriction base="ObjectIdType"/>
</xsd:simpleType>
<!-- Contract ================================================================ -->
<xsd:simpleType name="ContractIdType">
<xsd:annotation>
<xsd:documentation>Type for identifier of a Contract.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="TypeOfValueIdType"/>
</xsd:simpleType>
<xsd:element name="ContractRef" type="ContractRefStructure">
<xsd:annotation>
<xsd:documentation>Reference to a Contract.</xsd:documentation>
</xsd:annotation>
</xsd:element>
<xsd:complexType name="ContractRefStructure">
<xsd:annotation>
<xsd:documentation>Type for a reference to a Contract.</xsd:documentation>
</xsd:annotation>
<xsd:simpleContent>
<xsd:restriction base="VersionOfObjectRefStructure">
<xsd:attribute name="ref" type="ContractIdType" use="required">
<xsd:annotation>
<xsd:documentation>Identifier of a Contract.</xsd:documentation>
</xsd:annotation>
</xsd:attribute>
</xsd:restriction>
</xsd:simpleContent>
</xsd:complexType>
<xsd:simpleType name="TypeOfContractEnumeration">
<xsd:annotation>
<xsd:documentation>Allowed values for TypeOfContract</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:NMTOKEN">
<xsd:enumeration value="formal"/>
<xsd:enumeration value="informal"/>
<xsd:enumeration value="written"/>
<xsd:enumeration value="oral"/>
<xsd:enumeration value="plainUnderstood"/>
</xsd:restriction>
</xsd:simpleType>
<xsd:simpleType name="LegalStatusEnumeration">
<xsd:annotation>
<xsd:documentation>Allowed values for LegalStatus of a Contract</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:NMTOKEN">
<xsd:enumeration value="binding"/>
<xsd:enumeration value="nonBinding"/>
</xsd:restriction>
</xsd:simpleType>
<!-- ======================================================================= -->
</xsd:schema>

0 comments on commit 210753d

Please sign in to comment.