This page contains documentation of how Noptis (DOI) data is converted to Netex (the Nordic Profile).
_shared_data.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <PublicationDelivery xmlns="http://www.netex.org.uk/netex" xmlns:ns2="http://www.opengis.net/gml/3.2" xmlns:ns3="http://www.siri.org.uk/siri"> <PublicationTimestamp>2019-11-27T12:50:21</PublicationTimestamp> <!-- Timestamp of export --> <ParticipantRef>SAM</ParticipantRef> <dataObjects> <CompositeFrame created="2019-11-27T12:50:21" version="20191127125021" id="SE:253:CompositeFrame:1"> <!-- Version is timestamp of export, id is always 1 --> <ValidBetween> <FromDate>2005-01-01T00:00:00</FromDate> <!-- Always set to 2005-01-01 --> </ValidBetween> <codespaces> <Codespace id="253"> <!-- id is same as Xmlns --> <Xmlns>253</Xmlns> <!-- From Samtrafiken's registry of producer numbers, based on data source --> <XmlnsUrl>http://www.samtrafiken.se/ns/Östgötatrafiken</XmlnsUrl> <!-- "Östgötatrafiken" is based on data source --> </Codespaced> </codespaces> <FrameDefaults> <DefaultLocale> <TimeZone>Europe/Stockholm</TimeZone> <DefaultLanguage>se</DefaultLanguage> </DefaultLocale> <DefaultLocationSystem>4326</DefaultLocationSystem> <!-- All coordinates are WGS84 --> </FrameDefaults> <frames> <ResourceFrame version="20191127125021" id="SE:253:ResourceFrame:1"> <!-- Version is timestamp of export (YYYYMMDDHHmmSS), id is always 1 --> <organisations> <!-- Authority is based on Noptis.TransportAuthority --> <Authority version="20131206" id="SE:253:Authority:9010005000000000"> <!-- version=Noptis.TransportAuthority.ExistsFromDate, id=Noptis.TransportAuthority.Gid --> <ValidBetween> <FromDate>2019-02-13T00:00:00</FromDate> <!-- Noptis.TransportAuthority.ExistsFromDate --> <!-- ToDate = Noptis.TransportAuthority.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <Name>Östgötatrafiken</Name> <!-- Noptis.TransportAuthority.Name --> <LegalName>Östgötatrafiken</LegalName> <!-- Noptis.Organisation.FormalName --> <OrganisationType>authority</OrganisationType> <!-- Always "authority" --> </Authority> <!-- More Authority elements --> <!-- Operator is based on Noptis.Contractor --> <Operator version="20131211" id="SE:253:Operator:9013005918200000"> <!-- version=Noptis.Contractor.ExistsFromDate, id=Noptis.Contractor.Gid --> <ValidBetween> <FromDate>2019-02-13T00:00:00</FromDate> <!-- Noptis.Contractor.ExistsFromDate --> <!-- ToDate = Noptis.Contractor.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <Name>eBuss Motala</Name> <!-- Noptis.Contractor.Name --> <LegalName>eBuss i Sverige AB</LegalName> <!-- Noptis.Organisation.FormalName --> <OrganisationType>operator</OrganisationType> <!-- Always "operator" --> </Operator> <!-- More Operator elements --> </organisations> </ResourceFrame> <ServiceFrame version="20191127125021" id="SE:253:ServiceFrame:1"> <!-- Version is timestamp of export (YYYYMMDDHHmmSS), id is always 1 --> <!-- Each unique Noptis.Line.IsDefinedByTransportAuthority will create a Network with the AuthorityRef. In this case there is only one, additional Networks would be placed in an "additionalNetworks" element. --> <Network version="20131206" id="SE:253:Network:9010005000000000"> <!-- version=Noptis.TransportAuthority.ExistsFromDate, id=Noptis.TransportAuthority.Gid --> <Name>Östgötatrafiken</Name> <!-- Noptis.TransportAuthority.Name --> <AuthorityRef ref="SE:253:Authority:9010005000000000" version="20131206"/> <!-- WIP, Netex.GroupOfLines is based on Noptis.GroupOfLines --> <groupsOfLines> <GroupOfLines version="1" id="SE:253:GroupOfLines:1"> <ValidBetween> <FromDate>2019-02-13T00:00:00</FromDate> <!-- Noptis.GroupOfLines.ExistsFromDate --> <!-- ToDate = Noptis.GroupOfLines.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <Name>Spårvagn</Name> <!-- Noptis.GroupOfLines.Name --> <PrivateCode>SPV</PrivateCode> <!-- Noptis.GroupOfLine.Code --> <members> <LineRef ref="SE:253:Line:9011005005300000"/> <!-- Based on Noptis.LineInGroupOfLines --> </members> </GroupOfLines> </groupsOfLines> </Network> <routePoints> <!-- RoutePoint, ScheduledStopPoint, PassengerStopAssignment are all based on Noptis.StopPoint --> <RoutePoint version="20190426" id="SE:253:RoutePoint:9022005000001001"> <!-- version=Noptis.StopPoint.ExistsFromDate, id=Noptis.StopPoint.Gid --> <projections> <PointProjection version="20190426" id="SE:253:PointProjection:9022005000001001"> <!-- version=Noptis.StopPoint.ExistsFromDate, id=Noptis.StopPoint.Gid --> <ProjectedPointRef ref="SE:253:ScheduledStopPoint:9022005000001001" version="20190426"/> </PointProjection> </projections> </RoutePoint> <!-- More RoutePoint elements --> </routePoints> <destinationDisplays> <!-- DestinationDisplay is based on Noptis.DestinationDisplay --> <!-- DestinationDisplays that are used as "via" are created from each Noptis.DestinationDisplay.SecondaryDestinationName. Theses elements are recognized by having "via_" prepended to their id. In the example below, both DestinationDisplay elements are created from the same Noptis.DestinationDisplay. --> <DestinationDisplay version="any" id="SE:253:DestinationDisplay:via_55700000037211691"> <!-- id=Noptis.DestinationDisplay.Id --> <FrontText>Västerlösa</FrontText> <!-- Noptis.DestinationDisplay.SecondaryDestinationName --> <PublicCode>573</PublicCode> <!-- Noptis.DestinationDisplay.LineDesignation --> </DestinationDisplay> <DestinationDisplay version="any" id="SE:253:DestinationDisplay:55700000037211691"> <!-- id=Noptis.DestinationDisplay.Id --> <FrontText>Malmslätt</FrontText> <!-- Noptis.DestinationDisplay.PrimaryDestinationName --> <PublicCode>573</PublicCode> <!-- Noptis.DestinationDisplay.LineDesignation --> <vias> <Via> <DestinationDisplayRef ref="SE:253:DestinationDisplay:via_55700000037211691" version="any"/> </Via> </vias> </DestinationDisplay> <!-- More DestinationDisplay elements --> </destinationDisplays> <scheduledStopPoints> <!-- RoutePoint, ScheduledStopPoint, PassengerStopAssignment are all based on Noptis.StopPoint --> <ScheduledStopPoint version="20190426" id="SE:253:ScheduledStopPoint:9022005000001001"> <!-- version=Noptis.StopPoint.ExistsFromDate, id=Noptis.StopPoint.Gid --> <Name>Norr Tull</Name> <!-- Noptis.StopPoint.Name --> </ScheduledStopPoint> <!-- More ScheduledStopPoint elements --> </scheduledStopPoints> <serviceLinks> <!-- ServiceLink is based on Noptis.RouteLink --> <ServiceLink version="20190213" id="SE:253:ServiceLink:BUS_9025005000136402_9025005000005702"> <!-- version=Noptis.RouteLink.ExistsFromDate, id=Noptis.RouteLinkTraversableByTransportModeCode.TransportModeCode + Noptis.RouteLink.StartsAtJourneyPatternPointGid + Noptis.RouteLink.EndsAtJourneyPatternPointGid --> <ValidBetween> <FromDate>2019-02-13T00:00:00</FromDate> <!-- Noptis.RouteLink.ExistsFromDate --> <!-- ToDate = Noptis.RouteLink.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <Distance>338</Distance> <!-- Noptis.RouteLink.DistanceMeters --> <projections> <LinkSequenceProjection version="20190213" id="SE:253:LinkSequenceProjection:BUS_9025005000136402_9025005000005702"> <!-- Same ID as parent ServiceLink --> <ns2:LineString srsName="4326" ns2:id="LS_BUS_9025005000136402_9025005000005702"> <!-- Same ID as parent ServiceLink but with "LS_" prepended --> <ns2:posList count="30" srsDimension="2">58.666991 16.180848 58.666982 16.180848 58.66691 16.180899 58.666703 16.181034 58.666325 16.181358 58.666109 16.181545 58.665821 16.1818 58.665749 16.181834 58.665651 16.181833 58.665624 16.181833 58.665328 16.181743 58.664978 16.18155 58.664593 16.181253 58.664494 16.181166 58.664154 16.180869</ns2:posList> <!-- Each coordinate pair is created from one Noptis.PointOnRouteLink --> </ns2:LineString> </LinkSequenceProjection> </projections> <FromPointRef ref="SE:253:ScheduledStopPoint:9022005001364002" version="20190426"/> <!-- Noptis.RouteLink.StartsAtJourneyPatternPointGid --> <ToPointRef ref="SE:253:ScheduledStopPoint:9022005000057002" version="20190426"/> <!-- Noptis.RouteLink.EndsAtJourneyPatternPointGid --> <VehicleMode>bus</VehicleMode> <!-- See the section "General Noptis to Netex mappings" below --> </ServiceLink> <!-- More ServiceLink elements --> </serviceLinks> <stopAssignments> <!-- RoutePoint, ScheduledStopPoint, PassengerStopAssignment are all based on Noptis.StopPoint --> <PassengerStopAssignment order="0" version="20190426" id="SE:253:PassengerStopAssignment:9022005000001001"> <!-- version=Noptis.StopPoint.ExistsFromDate, id=Noptis.StopPoint.Gid, "order" is always 0 --> <ScheduledStopPointRef ref="SE:253:ScheduledStopPoint:9022005000001001" version="20190426"/> <QuayRef ref="SE:253:Quay:9022005000001001"/> </PassengerStopAssignment> <!-- More PassengerStopAssignment elements --> </stopAssignments> <notices> <!-- Notice is based on Noptis.AdvanceOrderCondition --> <Notice version="any" id="SE:253:Notice:55700000050931583"> <!-- id=Noptis.AdvanceOrderCondition.Id --> <Text>Turen måste förbeställas på 0771 - 71 10 20 senast 2 timmar före avresa från turens starthållplats.</Text> <!-- Noptis.AdvanceOrderCondition.PublicNote --> </Notice> <!-- More Notice elements --> </notices> </ServiceFrame> <ServiceCalendarFrame version="20191127125021" id="SE:253:ServiceCalendarFrame:1"> <!-- Version is timestamp of export (YYYYMMDDHHmmSS), id is always 1 --> <!-- The content of ServiceCalendarFrame is created based on Noptis.DatedVehicleJourney.OperatingDayDate. Each unique combination of operating days of a Noptis.VehicleJourney will create one DayType. The DayType contains each Noptis.DatedVehicleJourney.OperatingDayDate as a DayTypeAssignment. OperatingPeriods or exceptions (DayTypeAssignment.isAvailable) are NOT used. --> <dayType <DayType version="any" id="SE:253:DayType:1"/> <DayType version="any" id="SE:253:DayType:2"/> <DayType version="any" id="SE:253:DayType:3"/> <DayType version="any" id="SE:253:DayType:4"/> <DayType version="any" id="SE:253:DayType:5"/> <DayType version="any" id="SE:253:DayType:6"/> <DayType version="any" id="SE:253:DayType:7"/> <DayType version="any" id="SE:253:DayType:8"/> <DayType version="any" id="SE:253:DayType:9"/> <DayType version="any" id="SE:253:DayType:10"/> <DayType version="any" id="SE:253:DayType:11"/> <DayType version="any" id="SE:253:DayType:12"/> <DayType version="any" id="SE:253:DayType:13"/> </dayTypes> <dayTypeAssignments> <DayTypeAssignment order="1" version="any" id="SE:253:DayTypeAssignment:1-20191125"> <Date>2019-11-25</Date> <DayTypeRef ref="SE:253:DayType:1" version="any"/> </DayTypeAssignment> <DayTypeAssignment order="2" version="any" id="SE:253:DayTypeAssignment:1-20191126"> <Date>2019-11-26</Date> <DayTypeRef ref="SE:253:DayType:1" version="any"/> </DayTypeAssignment> <DayTypeAssignment order="3" version="any" id="SE:253:DayTypeAssignment:1-20191127"> <Date>2019-11-27</Date> <DayTypeRef ref="SE:253:DayType:1" version="any"/> </DayTypeAssignment> <!-- More DayTypeAssignment elements --> </dayTypeAssignments> </ServiceCalendarFrame> </frames> </CompositeFrame> </dataObjects> </PublicationDelivery>
_stops.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <PublicationDelivery xmlns="http://www.netex.org.uk/netex" xmlns:ns2="http://www.opengis.net/gml/3.2" xmlns:ns3="http://www.siri.org.uk/siri"> <PublicationTimestamp>2019-11-27T12:50:21</PublicationTimestamp> <!-- Timestamp of export --> <ParticipantRef>SAM</ParticipantRef> <dataObjects> <SiteFrame version="20191127125021" id="SE:253:SiteFrame:1"> <!-- Version is timestamp of export (YYYYMMDDHHmmSS), id is always 1 --> <ValidBetween> <FromDate>2005-01-01T00:00:00</FromDate> <!-- Always set to 2005-01-01 --> </ValidBetween> <codespaces> <Codespace id="253"> <!-- id is same as Xmlns --> <Xmlns>253</Xmlns> <!-- From Samtrafiken's registry of producer numbers, based on data source --> <XmlnsUrl>http://www.samtrafiken.se/ns/Östgötatrafiken</XmlnsUrl> <!-- "Östgötatrafiken" is based on data source --> </Codespace> </codespaces> <FrameDefaults> <DefaultLocale> <TimeZone>Europe/Stockholm</TimeZone> <DefaultLanguage>se</DefaultLanguage> </DefaultLocale> <DefaultLocationSystem>4326</DefaultLocationSystem> <!-- All coordinates are WGS84 --> </FrameDefaults> <!-- WIP, TopographicPlace is based on Noptis.Zone . TopographicPlaces are referenced from Quays through ZoneProjections --> <topographicPlaces> <TopographicPlace version="any" id="SE:253:TopographicPlace:1"> <ValidBetween> <FromDate>2016-12-13T00:00:00</FromDate> <!-- Noptis.Zone.ExistsFromDate --> <!-- ToDate = Noptis.Zone.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <Name>Boxholm</Name> <!-- Noptis.Zone.Name --> <PrivateCode>0560</PrivateCode> <!-- Noptis.Zone.Number --> <TopographicPlaceType>municipality</TopographicPlaceType> <!-- Based on Noptis.Zone.ZoneTypeCode --> </TopographicPlace> </topographicPlaces> <groupsOfStopPlaces> <!-- GroupOfStopPlace is based on Noptis.Site --> <GroupOfStopPlaces version="20120623" id="SE:001:GroupOfStopPlaces:9091001000000103"> <!-- version=Noptis.Site.ExistsFromDate, id=Noptis.Site.Gid --> <ValidBetween> <FromDate>2012-06-23T00:00:00</FromDate> <!-- Noptis.Site.ExistsFromDate --> </ValidBetween> <Name>Nämdöböte</Name> <!-- Noptis.Site.Name --> <Description>Nämdö</Description> <!-- Noptis.Site.PublicNote --> <PrivateCode>103</PrivateCode> <!-- Noptis.Site.Number --> <members> <!-- StopPlaceRefs are based on Noptis.SiteNeighbouringStopArea --> <StopPlaceRef ref="SE:001:StopPlace:9021001000103000" version="20210224"/> <!-- ref=Noptis.StopArea.Gid, version=Noptis.StopArea.ExistsFromDate --> </members> <Centroid> <Location srsName="WGS84"> <!-- Noptis.Site.CoordinateSystemName --> <Longitude>18.739921</Longitude> <!-- Noptis.Site.CentroidEastingCoordinate --> <Latitude>59.208826</Latitude> <!-- Noptis.Site.CentroidNorthingCoordinate --> </Location> </Centroid> </GroupOfStopPlaces> </groupsOfStopPlaces> <stopPlaces> <!-- StopPlace is based on Noptis.StopArea --> <StopPlace version="20161213" id="SE:253:StopPlace:9021005000001000"> <!-- version=Noptis.StopArea.ExistsFromDate, id=Noptis.StopArea.Gid --> <ValidBetween> <FromDate>2016-12-13T00:00:00</FromDate> <!-- Noptis.StopArea.ExistsFromDate --> <!-- ToDate = Noptis.StopArea.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <Name>Norr Tull</Name> <!-- Noptis.StopArea.Name --> <ShortName>Norr Tull</ShortName> <!-- Noptis.StopArea.ShortName --> <PrivateCode>1</PrivateCode> <!-- Noptis.StopArea.Number --> <Centroid> <Location> <Longitude>16.176723</Longitude> <!-- Noptis.StopArea.CentroidEastingCoordinate --> <Latitude>58.594850</Latitude> <!-- Noptis.StopArea.CentroidNorthingCoordinate --> </Location> </Centroid> <OrganisationRef ref="SE:253:Authority:9010005000000000"/> <!-- Noptis.StopArea.IsDefinedByTransportAuthortiy --> <entrances> <!-- Entrances are based on Noptis.StationEntrancePoint --> <StopPlaceEntrance version="20120623" id="SE:275:StopPlaceEntrance:9023001006651001"> <!-- version=Noptis.StationEntrancePoint.ExistsFromDate, id=Noptis.StationEntrancePoint.Gid --> <ValidBetween> <FromDate>2014-03-11T00:00:00</FromDate> <!-- Noptis.StationEntrancePoint.ExistsFromDate but not earlier than parent StopPlace.FromDate --> <!-- ToDate = Noptis.StationEntrancePoint.ExistsToDate, in this case "ExistsToDate" is null, not later than parent StopPlace.ToDate --> </ValidBetween> <Name>Djursholms Ösby</Name> <!-- Noptis.StationEntrancePoint.Name --> <Centroid> <Location> <Longitude>18.058320</Longitude> <!-- Noptis.StationEntrancePoint.LocationEastingCoordinate --> <Latitude>59.397925</Latitude> <!-- Noptis.StationEntrancePoint.LocationNorthingCoordinate --> </Location> </Centroid> </StopPlaceEntrance> <!-- More StopPlaceEntrance elements --> </entrances> <TransportMode>bus</TransportMode> <!-- See the section "General Noptis to Netex mappings" below --> <StopPlaceType>busStation</StopPlaceType> <!-- See the section "General Noptis to Netex mappings" below --> <Weighting>interchangeAllowed</Weighting> <!-- See the section "General Noptis to Netex mappings" below --> <quays> <!-- Quay is based on Noptis.StopPoint and Noptis.JourneyPatternPoint --> <Quay version="20180419" id="SE:253:Quay:9022005000001001"> <!-- version=Noptis.StopPoint.ExistsFromDate, id=Noptis.StopPoint.Gid --> <ValidBetween> <FromDate>2019-04-26T00:00:00</FromDate> <!-- Noptis.StopPoint.ExistsFromDate but not earlier than parent StopPlace.FromDate --> <!-- ToDate = Noptis.StopPoint.ExistsToDate, in this case "ExistsToDate" is null, not later than parent StopPlace.ToDate --> </ValidBetween> <Name>Norr Tull</Name> <!-- Noptis.StopPoint.Name --> <ShortName>Norr Tull</ShortName> <!-- Noptis.StopPoint.ShortName --> <PrivateCode>1</PrivateCode> <!-- Noptis.StopPoint.LocalNumber --> <Centroid> <Location> <Longitude>16.177052</Longitude> <!-- Noptis.JourneyPatternPoint.LocationEastingCoordinate --> <Latitude>58.595038</Latitude> <!-- Noptis.JourneyPatternPoint.LocationNorthingCoordinate --> </Location> </Centroid> <!-- WIP, Netex.ZoneProjections are based on Noptis.JourneyPatternPointInZone --> <projections> <ZoneProjection version="any" id="TEST:ZoneProjection:1"> <ProjectedZoneRef ref="TEST:TopographicPlace:1"/> </ZoneProjection> </projections> <PublicCode>A</PublicCode> <!-- Noptis.StopPoint.Designation --> <equipmentPlaces> <!-- Based on Noptis ConnectionLink, ObstacleOnLink, BridgingDevice --> <EquipmentPlace version="any" id="SE:001:EquipmentPlace:14010000311143397"> <!-- id = Noptis.BridgingDevice.Id --> <placeEquipments> <EntranceEquipment version="any" id="SE:001:EntranceEquipment:14010000311143397"> <!-- id = Noptis.BridgingDevice.Id --> <Door>true</Door> <!-- Noptis.BridgingDevice (TypeCode = DOOR) --> </EntranceEquipment> </placeEquipments> </EquipmentPlace> </equipmentPlaces> </Quay> <!-- More Quay elements --> </quays> </StopPlace> <!-- More StopPlace elements --> </stopPlaces> <navigationPaths> <!-- NavigationPath is based on Noptis.ConnectionLink when 'From' and 'To' are both Quay references --> <!-- NavigationPath is based on Noptis.StationEntryLink when 'From' is a StopPlaceEntrance reference and 'To' is a Quay reference --> <!-- NavigationPath is based on Noptis.StationExitLink when 'From' is a Quay reference and 'To' is a StopPlaceEntrance reference --> <!-- NavigationPath may contain validityConditions and timebands if they have limited dates and opening hours --> <NavigationPath version="20180504" id="SE:253:NavigationPath:55700000046273098"> <!-- version=Noptis.ConnectionLink.ExistsFromDate, id=Noptis.ConnectionLink.Id --> <Distance>0</Distance> <!-- version=Noptis.ConnectionLink.DistanceMeters. If null, Distance will be 0 --> <From> <PlaceRef ref="SE:253:Quay:9022005000100216" version="20140218"/> <!-- version=Noptis.StopPoint.ExistsFromDate id=Noptis.StopPoint.Gid from Noptis.ConnectionLink.StartsAtJourneyPatternPoint --> </From> <To> <PlaceRef ref="SE:253:Quay:9022005000102017" version="20181204"/> <!-- version=Noptis.StopPoint.ExistsFromDate id=Noptis.StopPoint.Gid from Noptis.ConnectionLink.EndsAtJourneyPatternPoint --> </To> <TransferDuration> <DefaultDuration>PT6M</DefaultDuration> <!-- version=Noptis.ConnectionLink.DefaultDurationSeconds --> </TransferDuration> <AccessibilityAssessment version="20180504" id="SE:275:AccessibilityAssessment:4010000565163766"> <!-- SE:<producerNumber>:AccessibilityAssessment:<obstacleOnLinkId> , version=ObstacleOnLink.ExistsFromDate --> <MobilityImpairedAccess>unknown</MobilityImpairedAccess> <!-- Always unknown, required field but data is not available --> <limitations> <AccessibilityLimitation> <WheelchairAccess>unknown</WheelchairAccess> <!-- Always unknown, required field but data is not available --> <StepFreeAccess>false</StepFreeAccess> <!-- BridgingDevice.TypeCode, “false” if there is a BridgingDevice for which TypeCode == 'STAIRWAY'. --> <EscalatorFreeAccess>unknown</EscalatorFreeAccess> <!-- BridgingDevice.TypeCode, “false” if there is a BridgingDevice for which TypeCode == 'ESCALAT'. --> <LiftFreeAccess>unknown</LiftFreeAccess> <!-- BridgingDevice.TypeCode, “false” if there is a BridgingDevice for which TypeCode == 'ELEVATOR'. --> </AccessibilityLimitation> </limitations> </AccessibilityAssessment> </NavigationPath> <NavigationPath version="20120623" id="SE:251:NavigationPath:14010000311143757"> <!-- version=Noptis.StationEntryLink.ExistsFromDate, id=Noptis.StationEntryLink.Id --> <Distance>2.0</Distance> <!-- version=Noptis.StationEntryLink.DistanceMeters. If null, Distance will be 0 --> <From> <PlaceRef ref="SE:251:StopPlaceEntrance:9023001006651002" version="20120623"/> <!-- version=Noptis.StationEntrancePoint.ExistsFromDate id=Noptis.StationEntrancePoint.Gid --> </From> <To> <PlaceRef ref="SE:251:Quay:9022003719007001" version="20150827"/> <!-- version=Noptis.StopPoint.ExistsFromDate id=Noptis.StopPoint.Gid from Noptis.StationEntryLink.EndsAtJourneyPatternPoint --> </To> <TransferDuration> <DefaultDuration>PT3M1S</DefaultDuration> <!-- version=Noptis.StationEntryLink.DefaultDurationSeconds --> </TransferDuration> </NavigationPath> <NavigationPath version="20120623" id="SE:251:NavigationPath:14010000311147186"> <!-- version=Noptis.StationExitLink.ExistsFromDate, id=Noptis.StationExitLink.Id --> <Distance>3.0</Distance> <!-- version=Noptis.StationExitLink.DistanceMeters. If null, Distance will be 0 --> <From> <PlaceRef ref="SE:251:Quay:9022003719007002" version="20150827"/> <!-- version=Noptis.StopPoint.ExistsFromDate id=Noptis.StopPoint.Gid from Noptis.StationExitLink.StartsAtJourneyPatternPoint --> </From> <To> <PlaceRef ref="SE:251:StopPlaceEntrance:9023001006661001" version="20120623"/> <!-- version=Noptis.StationEntrancePoint.ExistsFromDate id=Noptis.StationEntrancePoint.Gid --> </To> <TransferDuration> <DefaultDuration>PT3M2S</DefaultDuration> <!-- version=Noptis.StationExitLink.DefaultDurationSeconds --> </TransferDuration> </NavigationPath> <pathLinksInSequence> <PathLinkInSequence order="1" version="any" id="SE:001:PathLinkInSequence:14010000311183662-1"> <LinkSequenceRef ref="SE:001:PathLink:14010000311183662-1" version="20120623"/> <!-- ref=Noptis.ConnectionLink.Id-1, version=Noptis.ConnectionLink.ExistsFrom --> </PathLinkInSequence> <PathLinkInSequence order="2" version="any" id="SE:001:PathLinkInSequence:14010000311183662-2"> <LinkSequenceRef ref="SE:001:PathLink:14010000311183662-2" version="20120623"/> <!-- ref=Noptis.ConnectionLink.Id-2, version=Noptis.ConnectionLink.ExistsFrom --> </PathLinkInSequence> </pathLinksInSequence> <!-- More NavigationPath elements --> </navigationPaths> <pathLinks> <PathLink version="20120623" id="SE:001:PathLink:14010000311183662-1"> <!-- id=Noptis.ConnectionLink.Id-1, version=Noptis.ConnectionLink.ExistsFrom --> <ValidBetween> <FromDate>2019-02-13T00:00:00</FromDate> <!-- Noptis.ConnectionLink.ExistsFromDate --> <!-- ToDate = Noptis.ConnectionLink.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <From> <PlaceRef ref="SE:001:Quay:9022001070462002" version="20140603"/> <!-- id=Noptis.StopPoint.Gid, version=Noptis.StopPoint.Gid --> </From> <To> <PlaceRef ref="SE:001:EquipmentPlace:14010000311143397" version="any"/> <!-- id=Noptis.BridgingDevice.id --> </To> </PathLink> <PathLink version="20120623" id="SE:001:PathLink:14010000311183662-2"> <!-- id=Noptis.ConnectionLink.Id-2, version=Noptis.ConnectionLink.ExistsFrom --> <From> <PlaceRef ref="SE:001:EquipmentPlace:14010000311143397" version="any"/> <!-- id=Noptis.BridgingDevice.id --> </From> <To> <PlaceRef ref="SE:001:Quay:9022001070462001" version="20140603"/> <!-- id=Noptis.StopPoint.Gid, version=Noptis.StopPoint.Gid --> </To> </PathLink> </pathLinks> </SiteFrame> </dataObjects> </PublicationDelivery>
line_{Noptis.Line.Number}_{Noptis.Line.Gid}.xml (line_53_9011005005300000.xml)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <PublicationDelivery xmlns="http://www.netex.org.uk/netex" xmlns:ns2="http://www.opengis.net/gml/3.2" xmlns:ns3="http://www.siri.org.uk/siri"> <PublicationTimestamp>2019-11-27T12:50:21</PublicationTimestamp> <!-- Timestamp of export --> <ParticipantRef>SAM</ParticipantRef> <dataObjects> <CompositeFrame created="2019-11-27T12:50:21" version="20191127125021" id="SE:253:CompositeFrame:9011005005300000"> <!-- Version is timestamp of export (YYYYMMDDHHmmSS), id will always be 1 --> <ValidBetween> <FromDate>2005-01-01T00:00:00</FromDate> <!-- Always set to 2005-01-01 --> </ValidBetween> <codespaces> <Codespace id="253"> <!-- id is same as Xmlns --> <Xmlns>253</Xmlns> <!-- From Samtrafiken's registry of producer numbers, based on data source --> <XmlnsUrl>http://www.samtrafiken.se/ns/Östgötatrafiken</XmlnsUrl> <!-- "Östgötatrafiken" is based on data source --> </Codespace> </codespaces> <FrameDefaults> <DefaultLocale> <TimeZone>Europe/Stockholm</TimeZone> <DefaultLanguage>se</DefaultLanguage> </DefaultLocale> <DefaultLocationSystem>4326</DefaultLocationSystem> <!-- All coordinates are WGS84 --> </FrameDefaults> <frames> <ServiceFrame version="20191127125021" id="SE:253:ServiceFrame:9011005005300000"> <!-- Version is timestamp of export (YYYYMMDDHHmmSS), id=Noptis.Line.Gid --> <routes> <!-- Route is based on Noptis.JourneyPattern and Noptis.DirectionOfLine. Each Noptis.JourneyPattern will create a Route. --> <Route version="any" id="SE:253:Route:55700000035050824"> <Name>Motala</Name> <!-- Noptis.DirectionOfLine.Name --> <LineRef ref="SE:253:Line:9011005005300000" version="20131215"/> <DirectionType>outbound</DirectionType> <!-- Noptis.DirectionOfLine.DirectionCode. ODD = outbound, EVEN = inbound. --> <pointsInSequence> <!-- PointOnRoute is based on Noptis.PointInJourneyPattern --> <PointOnRoute order="1" version="any" id="SE:253:PointOnRoute:55700000035050829"> <!-- order=Noptis.PointInJourneyPattern.SequenceNumber, id=Noptis.PointInJourneyPattern.Id --> <RoutePointRef ref="SE:253:RoutePoint:9022005000050016"/> </PointOnRoute> <!-- More PointOnRoute elements --> </pointsInSequence> </Route> <!-- More Route elements --> </routes> <lines> <!-- Line is based on Noptis.Line --> <Line version="20131215" id="SE:253:Line:9011005005300000"> <!-- version=Noptis.Line.ExistsFromDate, id=Noptis.Line.Gid --> <ValidBetween> <FromDate>2019-02-13T00:00:00</FromDate> <!-- Noptis.Line.ExistsFromDate --> <!-- ToDate = Noptis.Line.ExistsToDate, in this case "ExistsToDate" is null --> </ValidBetween> <Name>53</Name> <!-- Noptis.Line.Name, eller Noptis.Line.Designation om Noptis.Line.Name är tom --> <TransportMode>bus</TransportMode> <!-- See the section "General Noptis to Netex mappings" below --> <TransportSubmode> <BusSubmode>unknown</BusSubmode> <!-- Netex.TransportSubmode is always mapped to UNKNOWN since that information is not available in NOPTIS. --> </TransportSubmode> <PublicCode>53</PublicCode> <!-- Noptis.Line.Designation --> <PrivateCode>53</PrivateCode> <!-- Noptis.Line.Number --> <RepresentedByGroupRef ref="SE:253:Network:9010005000000000"/> </Line> </lines> <journeyPatterns> <!-- JourneyPattern is based on Noptis.NamedJourneyPattern --> <JourneyPattern version="any" id="SE:253:JourneyPattern:55700000035050824"> <!-- id=Noptis.NamedJourneyPattern.Id --> <RouteRef ref="SE:253:Route:55700000035050824" version="any"/> <pointsInSequence> <!-- StopPointInJourneyPattern is based on Noptis.PointInJourneyPattern --> <StopPointInJourneyPattern order="1" version="any" id="SE:253:StopPointInJourneyPattern:55700000035050829"> <!-- order=Noptis.PointInJourneyPattern.SequenceNumber, id=Noptis.PointInJourneyPattern.Id --> <ScheduledStopPointRef ref="SE:253:ScheduledStopPoint:9022005000050016"/> <ForAlighting>false</ForAlighting> <!-- See the section "General Noptis to Netex mappings" below --> <ForBoarding>true</ForBoarding> <!-- See the section "General Noptis to Netex mappings" below --> <DestinationDisplayRef ref="SE:253:DestinationDisplay:55700000037211691"/> <RequestStop>true</RequestStop> <!-- See the section "General Noptis to Netex mappings" below --> </StopPointInJourneyPattern> <!-- More StopPointInJourneyPattern elements --> </pointsInSequence> <linksInSequence> <ServiceLinkInJourneyPattern order="1" version="any" id="SE:253:ServiceLinkInJourneyPattern:BUS_391"> <!-- order=Noptis.PointInJourneyPattern.SequenceNumber, id is Noptis.Line.DefaultTransportModeCode + a counter. --> <ServiceLinkRef ref="SE:253:ServiceLink:BUS_9025005000005016_9025005000122302"/> </ServiceLinkInJourneyPattern> <!-- More ServiceLinkInJourneyPattern elements --> </linksInSequence> </JourneyPattern> </journeyPatterns> </ServiceFrame> <TimetableFrame version="20191127125021" id="SE:253:TimetableFrame:9011005005300000"> <!-- Version is timestamp of export (YYYYMMDDHHmmSS), id=Noptis.Line.Gid --> <vehicleJourneys> <!-- ServiceJourney is based on Noptis.VehicleJourney --> <ServiceJourney version="any" id="SE:253:ServiceJourney:55700000049527547"> <!-- id=Noptis.VehicleJourney.Id --> <PrivateCode>123</PrivateCode> <!-- Not in Noptis but in Stip as VehicleJourney.InternalJourneyNumber. Currently only imported from TRP.30-Post.TURNR and Netex.ServiceJourney. --> <TransportMode>bus</TransportMode> <!-- See the section "General Noptis to Netex mappings" below --> <TransportSubmode> <BusSubmode>unknown</BusSubmode> <!-- Netex.TransportSubmode is always mapped to UNKNOWN since that information is not available in NOPTIS. --> </TransportSubmode> <dayTypes> <DayTypeRef ref="SE:253:DayType:1"/> <!-- See the explanation for ServiceCalendarFrame in the "_shared_data.xml" section --> </dayTypes> <JourneyPatternRef ref="SE:253:JourneyPattern:55700000035050824" version="any"/> <OperatorRef ref="SE:253:Operator:9013005918200000"/> <trainNumbers> <TrainNumberRef>571</TrainNumberRef> <!-- This field is optional. Based on Noptis.DatedVehicleJourney.announcedTrainNumber --> </trainNumbers> <passingTimes> <!-- TimetabledPassingTime is based on CallOnTimedJourneyPattern --> <TimetabledPassingTime version="any" id="SE:253:TimetabledPassingTime:55700000049527529"> <!-- id=Noptis.CallOnTimedJourneyPattern.Id --> <StopPointInJourneyPatternRef ref="SE:253:StopPointInJourneyPattern:55700000035050829" version="any"/> <DepartureTime>06:40:00</DepartureTime> <!-- Noptis.VehicleJourney.PlannedStartOffsetDayTime and Noptis.CallOnTimedJourneyPattern.EarliestDepartureTimeOffsetSeconds --> </TimetabledPassingTime> <TimetabledPassingTime version="any" id="SE:253:TimetabledPassingTime:55700000049527530"> <StopPointInJourneyPatternRef ref="SE:253:StopPointInJourneyPattern:55700000035050830" version="any"/> <ArrivalTime>06:41:28</ArrivalTime> <!-- Noptis.VehicleJourney.PlannedStartOffsetDayTime and Noptis.CallOnTimedJourneyPattern.LatestArrivalTimeOffsetSeconds --> <DepartureTime>06:41:28</DepartureTime> </TimetabledPassingTime> <!-- More TimtabledPassingTime elements --> <TimetabledPassingTime version="any" id="SE:253:TimetabledPassingTime:55700000049527544"> <StopPointInJourneyPatternRef ref="SE:253:StopPointInJourneyPattern:55700000035050844" version="any"/> <ArrivalTime>07:50:00</ArrivalTime> </TimetabledPassingTime> </passingTimes> </ServiceJourney> </vehicleJourneys> <journeyInterchanges> <!-- ServiceJourneyInterchange is based on Noptis.ConnectionCandidate --> <ServiceJourneyInterchange version="any" id="SE:253:ServiceJourneyInterchange:55700000051347301_1"> <!-- id=Noptis.VehicleJourney.Id + counter --> <Guaranteed>false</Guaranteed> <!-- Always false --> <Advertised>true</Advertised> <!-- Always true --> <FromPointRef ref="SE:253:ScheduledStopPoint:9022005004136002"/> <!-- Noptis.ConnectionCandidate.IsFromFeederVehicleJourneyId --> <ToPointRef ref="SE:253:ScheduledStopPoint:9022005004136006" version="20190516"/> <!-- Noptis.ConnectionCandidate.IsFromFeederVehicleJourneyId --> <FromJourneyRef ref="SE:253:ServiceJourney:55700000050225029"/> <!-- Noptis.ConnectionCandidate.IsFromFeederVehicleJourneyId --> <ToJourneyRef ref="SE:253:ServiceJourney:55700000051347301" version="any"/> <!-- Noptis.ConnectionCandidate.IsToFetcherVehicleJourneyId --> </ServiceJourneyInterchange> </journeyInterchanges> </TimetableFrame> </frames> </CompositeFrame> </dataObjects> </PublicationDelivery>
General Noptis to Netex mappings
Netex.ServiceJourney.TransportSubmode
Netex.ServiceJourney.TransportSubmode and Netex.Line.TransportSubmode is always mapped to UNKNOWN since that information is not available in NOPTIS.
Netex.ServiceLink.VehicleMode, Netex.ServiceJourney.TransportMode, Netex.Line.TransportMode
(Netex.AllModesEnumeration or Netex.AllVehicleModesOfTransportEnumeration)
Noptis.TransportModeCode.BUS = Netex.BUS
Noptis.TransportModeCode.TRAIN = Netex.RAIL
Noptis.TransportModeCode.TRAM = Netex.TRAM
Noptis.TransportModeCode.METRO = Netex.METRO
Noptis.TransportModeCode.TAXI = Netex.TAXI
Noptis.TransportModeCode.SHIP = Netex.WATER
Noptis.TransportModeCode.FERRY = Netex.WATER
Noptis.TransportModeCode.UNSPECIFIED = Netex.UNKNOWN
Netex.StopPlace.TransportMode
Netex.StopPlace.TransportMode has no corresponding field in Noptis. It is instead generated from the Noptis.StopArea.TypeCode:
Noptis.StopAreaTypeCode.AIRPORT = Netex.VehicleModeEnumeration.AIR
Noptis.StopAreaTypeCode.BUSTERM = Netex.VehicleModeEnumeration.BUS
Noptis.StopAreaTypeCode.FERRYBER = Netex.VehicleModeEnumeration.FERRY
Noptis.StopAreaTypeCode.SHIPBER = Netex.VehicleModeEnumeration.FERRY
Noptis.StopAreaTypeCode.METROSTN = Netex.VehicleModeEnumeration.METRO
Noptis.StopAreaTypeCode.RAILWSTN = Netex.VehicleModeEnumeration.RAIL
Noptis.StopAreaTypeCode.TRAMSTN = Netex.VehicleModeEnumeration.TRAM
Noptis.StopAreaTypeCode.TAXITERM = Netex.VehicleModeEnumeration.OTHER;
Noptis.StopAreaTypeCode.UNKNOWN = Netex.VehicleModeEnumeration.OTHER
Netex.StopPlace.StopPlaceType
Noptis.StopAreaTypeCode.AIRPORT = Netex.StopTypeEnumeration.AIRPORT
Noptis.StopAreaTypeCode.BUSTERM = Netex.StopTypeEnumeration.BUS_STATION
Noptis.StopAreaTypeCode.FERRYBER = Netex.StopTypeEnumeration.FERRY_STOP
Noptis.StopAreaTypeCode.SHIPBER = Netex.StopTypeEnumeration.FERRY_STOP
Noptis.StopAreaTypeCode.METROSTN = Netex.StopTypeEnumeration.METRO_STATION
Noptis.StopAreaTypeCode.RAILWSTN = Netex.StopTypeEnumeration.RAIL_STATION
Noptis.StopAreaTypeCode.TRAMSTN = Netex.StopTypeEnumeration.TRAM_STATION
Noptis.StopAreaTypeCode.TAXITERM = Netex.StopTypeEnumeration.OTHER
Noptis.StopAreaTypeCode.UNKNOWN = Netex.StopTypeEnumeration.OTHER
Netex.StopPlace.Weighting
Noptis.StopPlace.InterchangePriority is used to create the Netex.StopPlace.Weighting. Noptis.StopPlace.InterchangePriority is a value between 1 - 16. A lower number means higher priority in Noptis.
case 1, 2, 3, 4:
return PREFERRED_INTERCHANGE;
case 5, 6, 7, 8, 9, 10, 11, 12:
return RECOMMENDED_INTERCHANGE;
case 13, 14, 15, 16:
return INTERCHANGE_ALLOWED;
default: // interchangePriority < 1 or interchangePriority > 16, this is applicable for other formats than Noptis.
return NO_INTERCHANGE;
Netex.StopPointInJourneyPattern.ForAlighting
Noptis.ArrivalType.NO_STOP(0),
Noptis.ArrivalType.NO_ALIGHTING(1) = False
Noptis.ArrivalType.STOP_IF_ALIGHTING(2),
Noptis.ArrivalType.ALWAYS_STOP(3),
Noptis.ArrivalType.FLEXIBLE_ALIGHTING_UPTO_HERE(5) = True
Netex.StopPointInJourneyPattern.ForBoarding
Noptis.DepartureType.NO_STOP(0),
Noptis.DepartureType.NO_BOARDING(1) = False
Noptis.DepartureType.STOP_IF_BOARDING(2),
Noptis.DepartureType.ALWAYS_STOP(3),
Noptis.DepartureType.FLEXIBLE_BOARDING_FROM_HERE(5) = True
Netex.StopPointInJourneyPattern.RequestStop
True if Noptis.ArrivalType.STOP_IF_ALIGHTING(2) or Noptis.DepartureType.STOP_IF_BOARDING(2), otherwise false.