Giter VIP home page Giter VIP logo

netex's Introduction

NeTEx (Network Timetable EXchange) XML schema

(C) 2009-2024 NeTEx, CEN, Crown Copyright

Schemas for:

  • Core
  • Part 1 (Network)
  • Part 2 (Timetables)
  • Part 3 (Fares)
  • Part 5 (New Modes)

Overview

  • NeTEx (Network Timetable EXchange) XML schema is a standardized format for exchanging network timetable data.

Folder structure ๐Ÿ“

The individual XML files are organized hierarchically in folders, following the same structure as the UML model and documentation. The architecture is:

  • Main Folder for Each Part: There is a main folder for each part of the schema (e.g., Core, Part 1, Part 2, etc.).
  • Subfolders for Functional Areas: Within each main folder, there are subfolders for each NeTEx functional area, keeping the schema well-structured.

You can find more information about the directory's structure on the wiki

UML models

  • You can refer to the NeTEx UML Physical and Conceptual models (note that NeTEx Conceptual model is Transmodel) for a detailed UML view of the schema packages.
  • These models are available in electronic format.

Getting started ๐Ÿš€

Main root schemas

  1. netex_publication

    • Embeds NeTEx XML model elements in a bulk output file format for use in asynchronous publication.
    • The intended content scope can be indicated by a filter object.
    • netex_publication_noConstraint: same as netex_publication but without all the XSD constraint that is convenient to speed up the work in development phases (but at the price of a much weaker validation).
  2. netex_siri.xsd

    • Embeds NeTEx XML model elements in the SIRI protocol for dynamic exchange of elements between servers.
    • Supports both request/response and publish/subscribe.

Additional information

  • nx.xsd
    • Embeds NeTeX XML model elements within a simple thematic organisation to facilitate browsing and inspection of NeTEx.
    • The NX schema is not intended for actual use.

XML examples

  • Explore XML examples of the use of both protocols in the /examples subdirectory.

Further information on the examples is available on the wiki

Support for XML editors

  • Altova XMLSpy Project: Find an organized view of the schema and examples in the root directory.

    • Project file: NeTEx.spp
  • Oxygen Project File:

    • Project file: NeTEx.xpr

Note on the schema

The schema is systematically divided into small modular files. Generally, for each functional package in the design model (See UML Model), there are two XML schema files:

  • netex_xxxx_suppport.xsd: Contains data type and ref structure definitions.
  • netex_xxxx_version.xsd: Contains the element definitions.

Branches ๐ŸŒฟ

Branch Name Description Link
master Current head of the project GitHub
next Work for the next release GitHub

Change Log

Releases

Release Number Release Date Description Link Release Notes
1.2 March 2022 Latest productive version before new modes merge Code Release Notes
1.2.2 August 2023 First version of new modes Code Release Notes
1.3.1 May 2024 European Passenger Information Accessibility Profile (EPIAP) Code Release Notes
2.0 2024 Upcoming release โณ N/A N/A

Full Version History ๐Ÿ“š

The comprehensive versions history is available in change_log.md

netex's People

Contributors

atibaut avatar aurige avatar bertware avatar csolem avatar eliotterrier avatar eu-agency-for-railways avatar frodrigo avatar github-actions[bot] avatar juliustens-db avatar lsfischer avatar mariankassovic avatar muued avatar nick-knowles avatar pietercolpaert avatar seime avatar skinkie avatar syversenkr avatar ue71603 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

netex's Issues

SupplementProduct

Hi,

In the SupplementProduct_VersionStructure type the SupplementToFareProductRef member is FareProductIdType, but I think it should be a FareProductRef.

Direction

In the Direction the "OppositeDIrectionRef" member name format is wrong.

How to use GroupOfStopPlaces ?

When we made the Chouette NeTEx "Full", we didn't find a valid solution to use GroupofStopPlaces described in the European Profile (Final Draft 1, page 52).

screenshot-drive google com-2019 03 10-08-38-23

Chouette manages the "Group Of Stop Places" type in its Stop Place referential, and we're looking for the right solution to represent them into NeTEx files.

The valid solution

By adding a GeneralFrame, we can manage GeneralGroupOfEntities :

<GeneralFrame version="any" id="chouette:OtherStopPlaces:1">
  <Name>SiteFrame extension</Name>
  <Description>Extensions to SiteFrame content</Description>
  <members>
    <GeneralGroupOfEntities version="any" created="2018-04-21T10:04:37.0Z" changed="2018-04-21T10:04:37.0Z" id="chouette:StopArea:1ebb52c6-b96e-411a-9df7-bd6c90bc6fa9:LOC">
      <Name>Willowbrook Station</Name>
      <PurposeOfGroupingRef ref="chouette:PurposeOfGrouping:groupOfStopPlace"/>
      <PrivateCode>BXF</PrivateCode>

      <members>
        <StopPlaceRef ref="chouette:StopArea:3ffe3320-071e-4d5c-b58e-ef8dbd163a27:LOC"/>
      </members>
    </GeneralGroupOfEntities>
  </members>
</GeneralFrame>

The first-fail solution

The European Profile (seems to) describe a GroupOfStopPlaces which specializes GeneralGroupOfEntities, so we tried :

<GeneralFrame version="any" id="chouette:OtherStopPlaces:1">
  <Name>SiteFrame extension</Name>
  <Description>Extensions to SiteFrame content</Description>
  <members>
    <GroupOfStopPlaces version="any" created="2018-04-21T10:04:37.0Z" changed="2018-04-21T10:04:37.0Z" id="chouette:StopArea:1ebb52c6-b96e-411a-9df7-bd6c90bc6fa9:LOC">
      <Name>Willowbrook Station</Name>
      <PrivateCode>BXF</PrivateCode>

      <members>
        <StopPlaceRef ref="chouette:StopArea:3ffe3320-071e-4d5c-b58e-ef8dbd163a27:LOC"/>
      </members>
    </GroupOfStopPlaces>
  </members>
</GeneralFrame>

By the XSD doesn't share this point of view :

$ netex-cli-validator.rb example-groupofentities.xml  
24:175: ERROR: Element '{http://www.netex.org.uk/netex}GroupOfStopPlaces': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}DataManagedObject, {http://www.netex.org.uk/netex}Version, {http://www.netex.org.uk/netex}ValidityCondition, {http://www.netex.org.uk/netex}ValidityTrigger, {http://www.netex.org.uk/netex}ValidityRuleParameter, {http://www.netex.org.uk/netex}ValueSet, {http://www.netex.org.uk/netex}TypeOfEntity, {http://www.netex.org.uk/netex}DataSource, {http://www.netex.org.uk/netex}Branding, {http://www.netex.org.uk/netex}ResponsibilitySet ).

The intuitive solution

As we managed to prevent any GeneralFrame for the moment, we would be charmed if the GroupOfStopPlaces could be used in the SiteFrame :

<SiteFrame version="any" id="chouette:SiteFrame:1">
  <stopPlaces>
    <!-- little child -->
    <StopPlace version="any" created="2017-05-17T17:08:37.0Z" changed="2017-10-11T09:22:36.0Z" id="chouette:StopArea:3ffe3320-071e-4d5c-b58e-ef8dbd163a27:LOC">
      <Name>Westborough North Station</Name>
      <placeTypes>
        <TypeOfPlaceRef ref="generalStopPlace"/>
      </placeTypes>
    </StopPlace>

    <GroupOfStopPlaces version="any" created="2017-05-17T17:08:37.0Z" changed="2017-10-11T09:22:36.0Z" id="chouette:StopArea:1ebb52c6-b96e-411a-9df7-bd6c90bc6fa9:LOC">
      <Name>Westborough Station</Name>
      <members>
        <StopPlaceRef ref="chouette:StopArea:3ffe3320-071e-4d5c-b58e-ef8dbd163a27:LOC"/>
      </members>
    </GroupOfStopPlaces>
  </stopPlaces>
</SiteFrame>

The XSD politely responds :

$ netex-cli-validator.rb example-groupofstopplaces.xml
18:175: ERROR: Element '{http://www.netex.org.uk/netex}GroupOfStopPlaces': This element is not expected. Expected is ( {http://www.netex.org.uk/netex}StopPlace ).

PS : on behalf of the enRoute team, thanks for this great work in this XSD ๐Ÿ‘

Siri_types-v2.0.xsd missing import

I'm trying to parse these files with a parser, but an error occurs because of a missing import file.
Thats because in siri_types-v2.0.xsd there is this line:
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="../xml/xml.xsd"/>
As you can see it tries to search for a folder called xml in the parent folder, but there are none, therefore crashing the parser.
I added this https://www.w3.org/2001/03/xml.xsd to xml/xml and the parser was able to parse the file :)

add "levelFloorAccess" to (Vehicle)AccessFacilityEnumeration

For the Dutch NeTEx Profile we would like to add the value "levelFloorAccess" to the simpleType VehicleAccessFacilityEnumeration (and perhaps analogously to AccessFacilityEnumeration).
With this value the user can explicitly see that the vehicle can be entered without any difference in height. Otherwise the best he/she can tentatively conclude is that this is hopefully the case, when there is no mention of "steps", "wheelchairLift", etc.

SAX parsing

When processing large xml files with a SAX parser, there is a problem with resolving some references to entities that have not been processed. In most cases, this would be possible if the members in the given version frame were in the correct order. For example, a ServiceFrame contains Route and Line entities, but the definition of Lines follows Routes while Route entities refer to Line. Similarly, in the same frame type, the Network entity can point to GroupOfLines entities. I think LineInFrameGroup should be ahead of NetworkInFrameGroup.
Of course, this does not solve circular references (see OppositeDirectionRef in Direction), but their number could be minimized by simple sequencing. If necessary, I can collect them.

Generate XML based on XSD

Hello,
Whenever i'm trying to generate a xml based on xsd i'm getting following:

Error: Error generating classes for schema ' '.

I'm using the Developer Command Promt for VS 2019

My goal is to generate the NeTEx class.

How can i fix above issue?

JourneyPart

In the JourneyPart_VersionStructure type defined in the netex_coupledJourney_version.xsd file, the MainPartRef is JourneyPartCoupleRefStructure instead of JourneyPartRefStructure. In all examples of the standard, these references are filled with the JourneyPart reference, while the member description in the documentation contains the JourneyPartCouple reference (probably the documentation was generated from the annotation in xsd). The MainPartRef element is mandatory.

ResourceFrameRefStructure

The ResourceFrameRefStructure defined in the netex_resourceFrame_support.xsd file, is derived from VersionOfObjectRefStructure type instead of VersionFrameRefStructure (all other xxxFrameRef derived from VersionFrameRefStructure type).

LinkProjection

The LinkProjection element in the netex_framework/netex_genericFramework/netex_projection_version.xsd file, is missing the EntityInVersionGroup. All of other Projection based class contains it, and the base DataManagedObject class is contains too. I think it was left out of the derivation.

Errors in netex_equipmentVehiclePassenger_support.xsd

As discussed with @nick-knowles and @Aurige on Zoom:

Element "WheelchairVehicleRef" has incorrect name (ref. is to WheelchairVehicleEquipment object) and this element plus element VehicleEquipmentRef both have incorrect type (is InstalledEquipmentRefStructure, should be WheelchairVehicleEquipmentRefStructure and VehicleEquipmentRefStructure respectively).

See lines 62, 114 and 119 in:
https://github.com/NeTEx-CEN/NeTEx/blob/master/xsd/netex_framework/netex_reusableComponents/netex_equipmentVehiclePassenger_support.xsd

See also documentation (xsd:annotation) discrepancies throughout this file, e.g. line 64, 69, 75, 101 and 127.

FareClassEnumeration

The "secondClass " value in the FareClassEnumeration defined in the netex_travelRights_support.xsd file, contains a space character at the end.

Recursive inclusion is detected

Using the woodstox parser the following error is thrown;

Exception in thread "main" javax.xml.stream.XMLStreamException: Failed to load W3C Schema from 'file:/home/skinkie/Sources/NeTEx/xsd/NeTEx_publication.xsd': {0};

recursive inclusion is detected ( file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_responsibility/netex_responsibility_version.xsd > file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_responsibility/netex_responsibility_version.xsd );

recursive inclusion is detected ( file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_responsibility/netex_responsibility_version.xsd > file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_responsibility/netex_responsibility_version.xsd );

recursive inclusion is detected ( file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_responsibility/netex_responsibility_version.xsd > file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_responsibility/netex_responsibility_version.xsd );

recursive inclusion is detected ( file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_genericFramework/netex_pointAndLinkSequence_version.xsd > file:/home/skinkie/Sources/NeTEx/xsd/netex_framework/netex_genericFramework/netex_pointAndLinkSequence_version.xsd );

recursive inclusion is detected ( file:/home/skinkie/Sources/NeTEx/xsd/netex_part_1/part1_tacticalPlanning/netex_servicePattern_version.xsd > file:/home/skinkie/Sources/NeTEx/xsd/netex_part_1/part1_tacticalPlanning/netex_servicePattern_version.xsd );

recursive inclusion is detected ( file:/home/skinkie/Sources/NeTEx/xsd/netex_part_2/part2_journeyTimes/netex_flexibleService_version.xsd > file:/home/skinkie/Sources/NeTEx/xsd/netex_part_2/part2_journeyTimes/netex_flexibleService_version.xsd )
at com.ctc.wstx.msv.W3CSchemaFactory.loadSchema(W3CSchemaFactory.java:77)
at com.ctc.wstx.msv.BaseSchemaFactory.createSchema(BaseSchemaFactory.java:110)
at com.ctc.wstx.msv.BaseSchemaFactory.createSchema(BaseSchemaFactory.java:122)

I have a query (not an issue) about FrameDefaults

Hi @nick-knowles & Team,
could you please provide some explanation regarding "FrameDefaults"

What are they are? and what do they mean?

I see some a comment saying
"The default means that actually we could leave off all ids that belong to the mb: namespace."

but could you please provide a bit more explanation as to what it means?

Derivation of ServiceJourney

In the Transmodel standard, ServiceJourney comes from VehicleJourney. It comes from Journey in NETEX, while it receives almost all members in VehicleJourney except VehicleJourneyPartsGroup is not one-to-one, but only partially. Except for TrainComponentLabelAssignment, all other elements are found in ServiceJourney, although they are grouped in other groups (eg. parts, timeDemandTypes). Why is this so depicted?

OrganisationalUnit

The substitutionGroup of the OrganizationUnit element defined in the netex_framework\netex_genericFramework\netex_organisation_version.xsd file is DataManagedObject, while it should be OrganizationPart_.
See fragments from a file:
<xsd:element name="OrganisationalUnit" abstract="false" substitutionGroup="DataManagedObject">

The OrganizationalUnit comes from the OrganizationPart, but we cannot specify an object of this type in a parts in an Organization due to an incorrect substitution. All other objects from the OrganizationPart can be specified (eg.: ControlCentre, Department, etc.)
<xsd:element name="Department" abstract="false" substitutionGroup="OrganisationPart_">
<xsd:element name="ControlCentre" substitutionGroup="OrganisationPart_">

Time representation for daylight savings time changes

In the GTFS format time is measured from "noon minus 12h" of the service day (effectively midnight except for days on which daylight savings time changes occur), and values like 26:30:00 are valid, and no changes are to be made to the daylight savings time changes.

In the NeTEx format time (i.e. DepartureTime or ArrivalTime) are of type xs:time but can also include DayOffset. So a GTFS arrival time value 26:30:00 can be represented with

<ArrivalTime>02:30:00</ArrivalTime>
<ArrivalDayOffset>1</ArrivalDayOffset>

But how can I handle daylight savings time changes?
For example for 29th of March, 2020 when clocks move forward from 02:00 am to 03:00 am, do I need to copy all the timetables and shift the times by one hour? Is there any simpler way to do it?

SeriesConstraint

Hi,

In the SeriesConstraint_VersionStructure type the journeyPatterns, prices and replaces is 0..*, but I think they should be 0..1.

Examples does not validate with xmllint

When validating the examples (and schema) with the xmllint command found in this repo's travis file, xmllint's exit code is not zero.

xmllint --version
xmllint: using libxml version 20904
   compiled with: Threads Tree Output Push Reader Patterns Writer SAXv1 FTP HTTP DTDValid HTML Legacy C14N Catalog XPath XPointer XInclude Iconv ICU ISO8859X Unicode Regexps Automata Expr Schemas Schematron Modules Debug Zlib Lzma 

Running xmllint from NeTEx-CEN/NeTEx master branch:

xmllint --noout --schema xsd/NeTEx_publication.xsd examples/functions/calendar/*xml examples/functions/fares/*xml examples/functions/grouping/*xml examples/functions/patterns/*xml examples/functions/pointOfInterest/*xml examples/functions/simpleNetwork/*xml examples/functions/site/*xml examples/functions/stopPlace/*xml examples/functions/timetable/*xml examples/functions/validityCondition/*xml examples/functions/variant/*xml examples/functions/vehicleSchedule/*xml examples/functions/versioning/*xml

Command output:

examples/functions/calendar/Netex_calendarCodeing_02.xml validates
examples/functions/calendar/Netex_calendarExample_01_BHN01.xml validates
examples/functions/calendar/NeTEx_Calendar_se_PA1.xml validates
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:107: element FrameTopicFilter: Schemas validity error : Element '{http://www.netex.org.uk/netex}FrameTopicFilter': This element is not expected. Expected is ( {http://www.netex.org.uk/netex}NetworkFrameTopic ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:1452: element fareUsageParameters: Schemas validity error : Element '{http://www.netex.org.uk/netex}fareUsageParameters': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}fareSections, {http://www.netex.org.uk/netex}seriesConstraints, {http://www.netex.org.uk/netex}geographicalUnits, {http://www.netex.org.uk/netex}geographicalIntervals, {http://www.netex.org.uk/netex}geographicalStructureFactors, {http://www.netex.org.uk/netex}timeUnits, {http://www.netex.org.uk/netex}timeIntervals, {http://www.netex.org.uk/netex}timeStructureFactors, {http://www.netex.org.uk/netex}qualityStructureFactors, {http://www.netex.org.uk/netex}distanceMatrixElements ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:8715: element fareUsageParameters: Schemas validity error : Element '{http://www.netex.org.uk/netex}fareUsageParameters': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}seriesConstraints, {http://www.netex.org.uk/netex}geographicalUnits, {http://www.netex.org.uk/netex}geographicalIntervals, {http://www.netex.org.uk/netex}geographicalStructureFactors, {http://www.netex.org.uk/netex}timeUnits, {http://www.netex.org.uk/netex}timeIntervals, {http://www.netex.org.uk/netex}timeStructureFactors, {http://www.netex.org.uk/netex}qualityStructureFactors, {http://www.netex.org.uk/netex}distanceMatrixElements, {http://www.netex.org.uk/netex}groupsOfDistanceMatrixElements ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:10473: element groupsOfAccessRightParameterAssignments: Schemas validity error : Element '{http://www.netex.org.uk/netex}groupsOfAccessRightParameterAssignments': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}Description, {http://www.netex.org.uk/netex}alternativeNames, {http://www.netex.org.uk/netex}noticeAssignments, {http://www.netex.org.uk/netex}PricingServiceRef, {http://www.netex.org.uk/netex}PricingRuleRef, {http://www.netex.org.uk/netex}DiscountingRuleRef, {http://www.netex.org.uk/netex}LimitingRuleRef, {http://www.netex.org.uk/netex}priceGroups, {http://www.netex.org.uk/netex}fareTables, {http://www.netex.org.uk/netex}PrivateCode ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:10486: element tariffs: Schemas validity error : Element '{http://www.netex.org.uk/netex}tariffs': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}priceGroups, {http://www.netex.org.uk/netex}fareTables, {http://www.netex.org.uk/netex}distributionChannels, {http://www.netex.org.uk/netex}groupsOfDistributionChannels, {http://www.netex.org.uk/netex}fulfilmentMethods, {http://www.netex.org.uk/netex}typesOfTravelDocuments, {http://www.netex.org.uk/netex}travelDocuments, {http://www.netex.org.uk/netex}salesPackages, {http://www.netex.org.uk/netex}salesPackageElements, {http://www.netex.org.uk/netex}salesPackageSubstitutions ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:10719: element fareUsageParameters: Schemas validity error : Element '{http://www.netex.org.uk/netex}fareUsageParameters': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}Mode, {http://www.netex.org.uk/netex}TransportOrganisationRef, {http://www.netex.org.uk/netex}OperatorRef, {http://www.netex.org.uk/netex}AuthorityRef, {http://www.netex.org.uk/netex}PricingParameterSet, {http://www.netex.org.uk/netex}notices, {http://www.netex.org.uk/netex}noticeAssignments, {http://www.netex.org.uk/netex}borderPoints, {http://www.netex.org.uk/netex}fareScheduledStopPoints, {http://www.netex.org.uk/netex}fareZones ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:11543: element fareUsageParameters: Schemas validity error : Element '{http://www.netex.org.uk/netex}fareUsageParameters': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}Description, {http://www.netex.org.uk/netex}TypeOfFrameRef, {http://www.netex.org.uk/netex}BaselineVersionFrameRef, {http://www.netex.org.uk/netex}codespaces, {http://www.netex.org.uk/netex}FrameDefaults, {http://www.netex.org.uk/netex}versions, {http://www.netex.org.uk/netex}traces, {http://www.netex.org.uk/netex}contentValidityConditions, {http://www.netex.org.uk/netex}Mode, {http://www.netex.org.uk/netex}TransportOrganisationRef ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:11808: element TimeUnit: Schemas validity error : Element '{http://www.netex.org.uk/netex}TimeUnit': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}TypeOfValue, {http://www.netex.org.uk/netex}TypeOfEntity, {http://www.netex.org.uk/netex}DataSource, {http://www.netex.org.uk/netex}Branding, {http://www.netex.org.uk/netex}TypeOfResponsibilityRole, {http://www.netex.org.uk/netex}PurposeOfGrouping, {http://www.netex.org.uk/netex}TypeOfFrame, {http://www.netex.org.uk/netex}TypeOfValidity, {http://www.netex.org.uk/netex}TypeOfProjection, {http://www.netex.org.uk/netex}TypeOfPoint ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml:11840: element GeographicalUnit: Schemas validity error : Element '{http://www.netex.org.uk/netex}GeographicalUnit': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}TypeOfValue, {http://www.netex.org.uk/netex}TypeOfEntity, {http://www.netex.org.uk/netex}DataSource, {http://www.netex.org.uk/netex}Branding, {http://www.netex.org.uk/netex}TypeOfResponsibilityRole, {http://www.netex.org.uk/netex}PurposeOfGrouping, {http://www.netex.org.uk/netex}TypeOfFrame, {http://www.netex.org.uk/netex}TypeOfValidity, {http://www.netex.org.uk/netex}TypeOfProjection, {http://www.netex.org.uk/netex}TypeOfPoint ).
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProductb.xml fails to validate
examples/functions/fares/Netex_101.21_TfL_GeographicFares_UnitZone_MultipleProduct.xml validates
examples/functions/fares/Netex_104.MunichL_GeographicFarest1.xml:41: element FrameTopicFilter: Schemas validity error : Element '{http://www.netex.org.uk/netex}FrameTopicFilter': This element is not expected. Expected is ( {http://www.netex.org.uk/netex}NetworkFrameTopic ).
examples/functions/fares/Netex_104.MunichL_GeographicFarest1.xml:493: element fareUsageParameters: Schemas validity error : Element '{http://www.netex.org.uk/netex}fareUsageParameters': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}fareSections, {http://www.netex.org.uk/netex}seriesConstraints, {http://www.netex.org.uk/netex}geographicalUnits, {http://www.netex.org.uk/netex}geographicalIntervals, {http://www.netex.org.uk/netex}geographicalStructureFactors, {http://www.netex.org.uk/netex}timeUnits, {http://www.netex.org.uk/netex}timeIntervals, {http://www.netex.org.uk/netex}timeStructureFactors, {http://www.netex.org.uk/netex}qualityStructureFactors, {http://www.netex.org.uk/netex}distanceMatrixElements ).
examples/functions/fares/Netex_104.MunichL_GeographicFarest1.xml:5485: element TimeUnit: Schemas validity error : Element '{http://www.netex.org.uk/netex}TimeUnit': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}TypeOfValue, {http://www.netex.org.uk/netex}TypeOfEntity, {http://www.netex.org.uk/netex}DataSource, {http://www.netex.org.uk/netex}Branding, {http://www.netex.org.uk/netex}TypeOfResponsibilityRole, {http://www.netex.org.uk/netex}PurposeOfGrouping, {http://www.netex.org.uk/netex}TypeOfFrame, {http://www.netex.org.uk/netex}TypeOfValidity, {http://www.netex.org.uk/netex}TypeOfProjection, {http://www.netex.org.uk/netex}TypeOfPoint ).
examples/functions/fares/Netex_104.MunichL_GeographicFarest1.xml:5517: element GeographicalUnit: Schemas validity error : Element '{http://www.netex.org.uk/netex}GeographicalUnit': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}TypeOfValue, {http://www.netex.org.uk/netex}TypeOfEntity, {http://www.netex.org.uk/netex}DataSource, {http://www.netex.org.uk/netex}Branding, {http://www.netex.org.uk/netex}TypeOfResponsibilityRole, {http://www.netex.org.uk/netex}PurposeOfGrouping, {http://www.netex.org.uk/netex}TypeOfFrame, {http://www.netex.org.uk/netex}TypeOfValidity, {http://www.netex.org.uk/netex}TypeOfProjection, {http://www.netex.org.uk/netex}TypeOfPoint ).
examples/functions/fares/Netex_104.MunichL_GeographicFarest1.xml fails to validate
examples/functions/fares/Netex_51.1_Bus_SimpleFares_PointToPoint_SingleProduct.xml validates
examples/functions/fares/Netex_51.2_Bus_SimpleFares_PointToPoint_MultipleProducts.xml validates
examples/functions/fares/Netex_51.3_Bus_SimpleFares_ZoneToZone_AdultChildProducts.xml validates
examples/functions/fares/Netex_51.4_Bus_SimpleFares_ZoneToZone_OffPeakProduct.xml validates
examples/functions/fares/Netex_61.1_Bus_GeographicFares_UnitDistance_SingleProduct.xml validates
examples/functions/fares/Netex_61.1_Bus_GeographicFares_UnitFareStage_SingleProduct.xml validates
examples/functions/fares/Netex_61.2_Bus_GeographicFares_UnitZone_MultipleProduct.xml validates
examples/functions/fares/Netex_61.3_Bus_GeographicFares_HierarchicalZone_MultipleProduct.xml validates
examples/functions/fares/Netex_71.1_Bus_TimeIntervalFares_Zonal_MultipleProduct.xml validates
examples/functions/fares/Netex_71.2_Bus_ZonalFares_MultipleSalesPackages.xml validates
examples/functions/fares/Netex_71.3_Bus_ZonalFares_TimeUnitsPackages.xml validates
examples/functions/fares/Netex_81.1_Metro_FlatFare_GroupProduct.xml validates
examples/functions/fares/Netex_81.2_Metro_TravelCard_MultipleProduct.xml validates
examples/functions/fares/Netex_81.3_Metro_WeeklyPass_MultipleProduct.xml validates
examples/functions/fares/Netex_91.1_Rail_RailCard_MultipleProduct.xml validates
examples/functions/fares/Netex_CDL1_Bus_Zonal_MobileProducts.xml:114: element ValidityParameterAssignment: Schemas validity error : Element '{http://www.netex.org.uk/netex}ValidityParameterAssignment': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}GenericParameterAssignment, {http://www.netex.org.uk/netex}GenericParameterAssignmentInContext ).
examples/functions/fares/Netex_CDL1_Bus_Zonal_MobileProducts.xml:128: element ValidityParameterAssignment: Schemas validity error : Element '{http://www.netex.org.uk/netex}ValidityParameterAssignment': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}GenericParameterAssignment, {http://www.netex.org.uk/netex}GenericParameterAssignmentInContext ).
examples/functions/fares/Netex_CDL1_Bus_Zonal_MobileProducts.xml:142: element ValidityParameterAssignment: Schemas validity error : Element '{http://www.netex.org.uk/netex}ValidityParameterAssignment': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}GenericParameterAssignment, {http://www.netex.org.uk/netex}GenericParameterAssignmentInContext ).
examples/functions/fares/Netex_CDL1_Bus_Zonal_MobileProducts.xml:156: element ValidityParameterAssignment: Schemas validity error : Element '{http://www.netex.org.uk/netex}ValidityParameterAssignment': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}GenericParameterAssignment, {http://www.netex.org.uk/netex}GenericParameterAssignmentInContext ).
examples/functions/fares/Netex_CDL1_Bus_Zonal_MobileProducts.xml:170: element ValidityParameterAssignment: Schemas validity error : Element '{http://www.netex.org.uk/netex}ValidityParameterAssignment': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}GenericParameterAssignment, {http://www.netex.org.uk/netex}GenericParameterAssignmentInContext ).
examples/functions/fares/Netex_CDL1_Bus_Zonal_MobileProducts.xml:183: element fareUsageParameters: Schemas validity error : Element '{http://www.netex.org.uk/netex}fareUsageParameters': This element is not expected. Expected is one of ( {http://www.netex.org.uk/netex}priceGroups, {http://www.netex.org.uk/netex}fareTables, {http://www.netex.org.uk/netex}distributionChannels, {http://www.netex.org.uk/netex}groupsOfDistributionChannels, {http://www.netex.org.uk/netex}fulfilmentMethods, {http://www.netex.org.uk/netex}typesOfTravelDocuments, {http://www.netex.org.uk/netex}travelDocuments, {http://www.netex.org.uk/netex}salesPackages, {http://www.netex.org.uk/netex}salesPackageElements, {http://www.netex.org.uk/netex}salesPackageSubstitutions ).
examples/functions/fares/Netex_CDL1_Bus_Zonal_MobileProducts.xml fails to validate
examples/functions/fares/TfN_Arriva_163_basic.xml validates
examples/functions/fares/TfN_Metrobus_1_basic.xml validates
examples/functions/fares/TfN_Metrobus_1_extended.xml validates
examples/functions/fares/TfN_Metrobus_1_travelhack.xml validates
examples/functions/fares/TfN_Metrobus_metrorider.xml validates
examples/functions/grouping/Netex_GroupingExample_General_01.xml validates
examples/functions/patterns/Netex_KBIC_ParisNetwork_1.xml validates
examples/functions/pointOfInterest/Netex_Sites_PoiClassification_1.xml validates
examples/functions/simpleNetwork/Netex_SimpleNetwork_1.xml validates
examples/functions/simpleNetwork/Netex_uk_underground_1.xml validates
examples/functions/site/Netex_01_Sites_SimpleStadium_1.xml validates
examples/functions/site/Netex_10_Sites_OlympicPark_2_basic.xml validates
examples/functions/site/Netex_11_Sites_OlympicPark_1.xml validates
examples/functions/site/Netex_12_Sites_OlympicPark_3_nav.xml validates
examples/functions/site/Netex_13_Sites_OlympicPark_4_delayOnly.xml validates
examples/functions/site/Netex_14_Olympic Venues 1.1.xml validates
examples/functions/site/Netex_21_Sites_Parking_1.xml validates
examples/functions/site/Netex_21_Sites_Parking_2.xml validates
examples/functions/stopPlace/Netex_01_StopPoints_NoFrills_1.xml validates
examples/functions/stopPlace/Netex_01_Stops_SingleStopOnStreet_1.xml validates
examples/functions/stopPlace/Netex_02_Stops_StopPairOnStreet_1.xml validates
examples/functions/stopPlace/Netex_04_Stops_SimpleStation_1.xml validates
examples/functions/stopPlace/Netex_10_StopPlace_uk_ComplexStation_Wimbledon_1.xml validates
examples/functions/stopPlace/Netex_10_StopPlace_withParking_1.xml validates
examples/functions/timetable/Netex_01.1_Bus_SimpleTimetable_JourneysOnly.xml validates
examples/functions/timetable/Netex_01.2_Bus_SimpleTimetable_WithTimings.xml validates
examples/functions/timetable/Netex_01.3_Bus_SimpleTimetable_WithMultiplePatterns.xml validates
examples/functions/timetable/Netex_01.4_Bus_SimpleTimetable_WithConnection.xml validates
examples/functions/timetable/Netex_01.5_Bus_SimpleTimetable_StopAssignment.xml validates
examples/functions/timetable/Netex_01.6_Bus_SimpleTimetable_RouteProjection.xml validates
examples/functions/timetable/Netex_02.1_Bus_CircularRoute_Timetable.xml validates
examples/functions/timetable/Netex_03.1_Bus_BranchedRouteTimetable_SimplePatterns.xml validates
examples/functions/timetable/Netex_03.2_Bus_BranchedRouteTimetable_SharedPatterns.xml validates
examples/functions/timetable/Netex_05.1_Bus_TemplateTimetable_HeadwayFrequency.xml validates
examples/functions/timetable/Netex_05.2_Bus_TemplateTimetable_RhythmicalFrequency.xml validates
examples/functions/timetable/Netex_06.1_Bus_FrequencyJourneyTimetable_HeadwayInterval.xml validates
examples/functions/timetable/Netex_06.2_Bus_FrequencyJourneyTimetable_RhythmicalInterval.xml validates
examples/functions/timetable/Netex_07.1_Bus_FlexibleTimetable_ZonesOnly.xml validates
examples/functions/timetable/Netex_07.2_Bus_FlexibleTimetable_WithPattern.xml validates
examples/functions/timetable/Netex_08.1_BusTram_Timetable_AmbiguousLinks.xml validates
examples/functions/timetable/Netex_08.2_Bus_SimpleTimetable_Cancellation.xml validates
examples/functions/timetable/Netex_09.1_Bus_InterchangeRule.xml validates
examples/functions/timetable/Netex_09.2_Bus_SimpleTimetable_Slovenia.xml validates
examples/functions/timetable/Netex_10_Rail_SplittingJoiningTimetable.xml validates
examples/functions/timetable/Netex_11_Rail_CompoundTrain.xml validates
examples/functions/timetable/Netex_21_Rail_NetworkTimetable_eurostar.xml validates
examples/functions/timetable/Netex_32_Multimodal_PassengerInformationEquipment.xml validates
examples/functions/validityCondition/NeTEx_trigger-01.xml validates
examples/functions/variant/Netex_VariantExample_Step_05.xml validates
examples/functions/vehicleSchedule/Netex_simpleVehicleSchedule_01.xml validates
examples/functions/versioning/Netex_VersioningExample_Step_01.xml validates
examples/functions/versioning/Netex_VersioningExample_Step_02.xml validates
examples/functions/versioning/Netex_VersioningExample_Step_03.xml validates
examples/functions/versioning/Netex_VersioningExample_Step_04.xml validates
examples/functions/versioning/Netex_VersioningExample_Step_05_ByRef.xml validates
examples/functions/versioning/Netex_VersioningExample_Step_05_GeneralFrame.xml validates
examples/functions/versioning/Netex_VersioningExample_Step_05.xml validates
examples/functions/versioning/Netex_VersioningExample_VersionHistories_01.xml validates
examples/functions/versioning/Netex_VersioningExample_VersionHistories_02.xml validates

Check the exit status of xmllint:

echo $?
3

ArrivalTimes in JourneyFrequencyGroup

Currently a JourneyFrequencyGroup (like RhythmicalJourneyGroup or HeadwayJourneyGroup) contains a FirstDepartureTime and LastDepartureTime to indicate the period in which the (Template)VehicleJourney operates. Both refer to "the time of departure from the first stop" of the journey.

We are trying to describe flexible (bus)journeys, either running from a fixed point (e.g. train station) or to a fixed point. In both cases passing times are only certain at that fixed point (probably related to the arrival/departure of trains at the station).
In the case of journeys from the fixed point FirstDepartureTime and LastDepartureTime make sense. But in the reverse case of journeys to the fixed point one would expect FirstArrivalTime and LastArrivalTime, because for these journeys that is the only 'time' available - and most relevant to the passenger wishing to catch a specific train!

Therefore we would like to add FirstArrivalTime and LastArrivalTime to JourneyFrequencyGroup, indicating "the time of arrival at the last stop".
Perhaps it makes sense to use a 'choice' (i.e. Departure OR Arrival).

wrong type in VehicleAccessFacilityListOfEnumerations

The simpleType VehicleAccessFacilityListOfEnumerations is now defined (in netex_facility_version.xsd) as a list of AccessFacilityEnumeration. This should be a list of VehicleAccessFacilityEnumeration.
Although the two enumerations are quite similar, VehicleAccessFacilityEnumeration is defined as "Allowed values for Vehicle Access Facility. NB. These are the properties of access to a VEHICLE.", while AccessFacilityEnumeration is defined as "Allowed values for Site Access Facility. NB. These are the properties of access to a fixed SITE, not to a VEHICLE.".

ServicePattern, ServiceJourneyPattern

In the current model, ServicePattern can reference ServiceJourneyPatterns via the journeyPatterns element. Thus, this relationship is a one-to-many implementation. Wouldn't it be better to refer to ServicePattern with a reference in ServiceJourneyPattern, similar to TimingPattern? Thus, this relationship would be of the many-to-one type.

Note, this representation is problematic even if you want to process the NETEX file using SAX parsing, but I will write another issue about this.

RequestMethod

A StopPointInJourneyPattern may have a RequestMethod. I would expect that there might be a variation between boarding and alighting. For example boarding via hand signal, and alighting via a stop button. In GTFS the boarding and alighting methods are separate. In addition I would expect that multiple request methods should be able to be used, similar to booking methods.

Alignment of Bus_SimpleTimetable_Slovenia with the EU Profile

Dear all,

I am in the process of aligning of my Slovenian timetable example
https://github.com/NeTEx-CEN/NeTEx/blob/master/examples/functions/timetable/Netex_09.2_Bus_SimpleTimetable_Slovenia.xml
to make it compatible with the NeTEx EU Profile (Passenger Information European Profile, prCEN TS 16614:PI Profile).
How am I supposed (and allowed) to do it...pull request through the issue, through my fork, directly through pull request, through my local branch?

Kind regards,
Andrej

TransportMode in VehicleType

There is no possibility to link a VehicleType to a TransportMode, although the NeTEx Part 1 documentation already states: "A VEHICLE TYPE shall belong to one TRANSPORT MODE" (par. 7.7.3.1 TRANSPORT MODE - Conceptual model). We also need this link for the Dutch NeTEx Profile.
Probably the TransportSubmode is not needed here, since most values of the xxxSubmode enumerations more concern the kind of service and not the kind of material.
It also does not make sense to allow more than one TransportMode.

Import NeTEx_wsProducer-Document.wsdl

Hi,
I try to import "NeTEx_wsProducer-Document.wsdl" from VS2017 in order to generate C# Classes.

I have some errors while importing service:

Severity Code Description Project File Line Suppression State
Warning Custom tool warning: Cannot import wsdl:binding
Detail: There was an error importing a wsdl:portType that the wsdl:binding is dependent on.
XPath to wsdl:portType: //wsdl:definitions[@targetNamespace='http://www.siri.org.uk/siriWS']/wsdl:portType[@name='NetexProducerDocPort']

XPath to Error Source: //wsdl:definitions[@targetNamespace='http://www.siri.org.uk/siriWS']/wsdl:binding[@name='NetexProducerDocBinding'] ExportNetex C:\aaa\projects\SAEIV_sol\NETEX\ExportNetex\ExportNetex\Connected Services\ServiceReference1\Reference.svcmap 1

Thanks.

Generate POJOs from XSD

Hi, guys,

has anyone managed to generate code from the xsd? I tried with xmlbeans and xjc (jaxb), but only get error messages (like that something is already in use or collisions). I've already looked for solutions, but unfortunately found none. It kept saying, "use the xsd to generate classes".

ResponsibilityRole

ResponsibilitySet elements can be specified in the ResourceFrame. In the ResponsibilitySet element, you can specify the ResponsibilityRoleAssignment elements that can reference the ResponsibilityRole element. However, I can't find anywhere where I can define ResponsibilityRoles.

Missing Schema constraints for UicOperatingPeriod

The implementation of UicOperatingPeriod (OPerating period, whcih allows a perido to be specified as DayBits . ) is incomplete
rail ways stule
(a) There are no cnstraints for UicOpreatingPeriodRef
(b) There is no UicOperatingPeriodRef element
(c) OperatingPeriod shoudl have SustitutionGroup OperatingPeriod_

Journey

The TransportMode defined in Journey is currently of the AllVehicleModeOfTransportEnumeration type. This is not consistent with the TransportSubmode member because the list may contain a value that does not have TransportSubmode. There may be some type of anomaly here, or SelfDriveSubmode and TaxiSubmode may not be used as a TransportSubmode member.

In ValidityParameterAssignment, you can specify the vehicleMode and transportSubmode elements in the validityParameters member. These are in harmony with each other. It is noticeable that there are several modes of transport lists defined in NETEX (e.g.: AllVehicleModesOfTransportEnumeration, VehicleModeEnumeration, AllModesEnumeration etc.) , but as if they were used mixed in each entity and I do not understand why, so I think they may be due to a misspelling.

GaragePoint not accepted as TimingPoint in ServiceFrame

A GaragePoint (or ParkingPoint or ReliefPoint) is derived from a TimingPoint and belongs to that substitutionGroup (TimingPoint_).

<xsd:element name="GaragePoint" abstract="false" substitutionGroup="ParkingPoint_" .../>
<xsd:element name="ParkingPoint_" type="ReliefPoint_VersionStructure" abstract="true" substitutionGroup="ReliefPoint_" .../>
<xsd:element name="ReliefPoint_" type="TimingPoint_VersionStructure" abstract="true" substitutionGroup="TimingPoint_" .../>

<xsd:element name="TimingPoint" abstract="false" substitutionGroup="TimingPoint_" .../>

Therefore I would expect that in a ServiceFrame 'GaragePoint' could be used instead of 'TimingPoint' in the 'timingPoints' structure:

<xsd:complexType name="timingPointsInFrame_RelStructure">
<xsd:complexContent>
<xsd:extension base="containmentAggregationStructure">
<xsd:sequence>
<xsd:element ref="TimingPoint" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>

This is not accepted however, and I cannot figure out why not.

				<timingPoints>
					<TimingPoint id="xxx:TimingPoint:tp1" version="any">
						<Name>tp1</Name>
						<PointNumber>1001</PointNumber>
					</TimingPoint>
					<GaragePoint id="xxx:GaragePoint:gp4" version="any">
						<Name>gp4</Name>
						<PointNumber>1004</PointNumber>
					</GaragePoint>
				</timingPoints>

Element 'GaragePoint' is not allowed under element 'timingPoints'.
Reason: The following elements are expected at this location: 'TimingPoint'
Error location: PublicationDelivery/dataObjects/CompositeFrame/frames/ServiceFrame/timingPoints/GaragePoint
Details: cvc-complex-type.1.4: Element 'GaragePoint' unexpected by type 'timingPointsInFrame_RelStructure' of element 'timingPoints'.

Wrong type for BoardingHeight and GapToPlatform in AccessVehicleEquipment

In the AccessVehicleEquipmentBoardingGroup (in netex_equipmentVehiclePassenger_version.xsd) the type of BoardingHeight and GapToPlatform is wrong:

<xsd:element name="BoardingHeight" type="TypeOfEntity_VersionStructure" minOccurs="0">
  <xsd:annotation>
    <xsd:documentation>Maximum step height to board.</xsd:documentation>`
  </xsd:annotation>
</xsd:element>
<xsd:element name="GapToPlatform" type="TypeOfEntity_VersionStructure" minOccurs="0">
  <xsd:annotation>
    <xsd:documentation>Normal gap between VEHICLE and platform.</xsd:documentation>
  </xsd:annotation>
</xsd:element>

It should be LengthType, just as it is in the VehicleAccessibilityRequirementsGroup (in netex_vehicleType_version.xsd).

PublicCode type diversity

In the current version, the PublicCode member in the entities is defined by several types. In most cases, it is a normal string field or a PublicCodeType which is derived from string, but there are entities with a PrivateCodeStructure type. Shouldn't it be uniform?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.